参考架构

Architecture from OpenStack Install Guide

Reference Architecture Network Isolation

在本次部署中,我们采用了OpenStack中新的网络管理组件(neutron),具体参见安装指导。右图为该网络部署结构的示意,分为三类节点:

控制节点

负责整个OpenStack机群的管控,由于它不承担kvm虚拟机的实际运行,负载交轻,一般将管理性(仅仅负责调度,监控)的服务部署在其上如

  • neutron 网络管理服务
  • nova 计算管理服务
  • glance 虚拟机映像管理服务
  • keystone 身份验证服务
  • horizon OpenStack的web管理服务
  • rabbitmq 消息队列服务
  • mysql 数据库

网络节点

为虚拟网络提供DHCP,L2交换,路由,浮动IP安全策略等网络服务。主要运行

  • neutron openstack的虚拟网络服务
  • openvswitch 虚拟L2交换

计算节点

nova-compute 实际运行kvm虚拟机,运行受到控制节点的调度

网络

在官方给出的这个部署架构中的网络分为三类

管理网络(红色)
OpenStack中的服务通信都通过这个网络进行,一般它与数据网络是分离的,避免由于数据网络的大流量影响到正常的OpenStack服务通信
数据网络(绿色)
虚拟机实例之间的通信都通过数据网络进行,但虚拟网络中的数据并不是直接进入物理网络(那样会混淆虚拟网络与实际网络的通信),而是进行一层封装,可以使用VLAN也可以是GRE隧道等,在官方给出的安装指导中使用了GRE隧道。
外部网络(蓝色)
当虚拟机访问外部网络资源时,先经过内部数据网络到达网络节点,然后经过网络节点路由通过其接在外部网络上的网络接口进行发包

隔离

一般来讲,机群内部网络是对外不可见的,如阿里云,我们肯定不能直接访问到它的内部网络(如果机群直接在公网上,一方面浪费IP地址,另一方面也存在安全问题),而只能通过它提供的公网IP进行访问。

实际架构

节点服务

节点服务的布局与官方安装指导中的一致

网络

实际物理网络

管理网络与数据网络
由于我们的台式机只有一个物理网络接口,所以数据网络的隧道需要建立在与管理网络相同的物理网络上,即数据网络与管理网络共用一个物理接口和线路。数据网络采用GRE隧道,与官方安装指导保持一致。
外部网络
对于本次部署的OpenStack服务机群来说它的内部网络和外部网络是重合的,因为机群内的每台服务器在校园内网环境下都是可以访问到的,且访问服务的客户端也是在内网。但由于需要给虚拟机分配公网(这里就是校园内网)IP,还是需要在网络节点上有一个接口用来做SNAT转换,因为实验室的台式机只有一个网卡,这个接口我们使用虚拟路由出口直接桥接到内网接口上得到。具体参见网络节点的接口配置。

OpenStack IceHouse 部署 - 1 - 架构说明的更多相关文章

  1. OpenStack IceHouse 部署 - 5 - 网络节点部署

    Neutron网络服务(网络节点)     目录 [隐藏]  1 参考 2 前置工作 2.1 调整内核参数 3 安装 4 配置 4.1 keystone对接 4.2 rabbitmq对接 4.3 me ...

  2. OpenStack IceHouse 部署 - 4 - 计算节点部署

    Nova计算服务(计算节点)  参考 本页内容依照官方安装文档进行,具体参见Configure a compute node(nova service) 前置工作 数据库 由于我们在Nova(计算管理 ...

  3. OpenStack IceHouse 部署 - 3 - 控制节点部署

    Mysql部署配置  安装 安装mysql,mysql的python绑定 apt-get install mysql-server 安装过程中会要求设定mysql的root账户的密码,这里假定设为my ...

  4. OpenStack IceHouse 部署 - 2 - 网络与软件环境初始化

    OpenStack应用:节点软硬件环境配置    节点硬件与IP分配 实验室网关 10.14.39.1 各个节点 节点名称 硬件(Linux硬盘分区,RAM,CPU) ip地址(接口) 作用与运行的服 ...

  5. ZStack深度试用:部署、架构与网络及其与OpenStack的对比

    摘要:本文是开源IaaS软件ZStack的深度试用报告,分别从部署.架构和网络三个层面分享作者的试用体验,并与OpenStack进行简单的对比,文章最后也对ZStack的改进方向提出了自己的思考.(转 ...

  6. OpenStack Havana 部署在Ubuntu 12.04 Server 【OVS+GRE】——序

    OpenStack Havana 部署在Ubuntu 12.04 Server [OVS+GRE](一)——控制节点的安装 OpenStack Havana 部署在Ubuntu 12.04 Serve ...

  7. OpenStack最新版本Folsom架构解析

    OpenStack最新版本Folsom架构解析摘要:OpenStack的第6版,版本代号为Folsom的最新版于今年九月底正式发布,Folsom将支持下一代软件定义网络(SDN)作为其核心组成部分.F ...

  8. OpenStack大规模部署详解

    https://blog.csdn.net/karamos/article/details/80130443 0.前言今年的2月22日,OpenStack发布了15个版本Ocata. 走过了7年的发展 ...

  9. 开源的PaaS方案:在OpenStack上部署CloudFoundry (二)部署OpenStack

    硬件要求 安装OpenStack 1 安装CentOS 65系统并清空iptables防火墙规则 2 安装系统需要的工具包包括Openstack依赖的和CloudFoundry依赖的 3 安装EPEL ...

随机推荐

  1. springMVC和Struts异同

    Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块.使用 Spring ...

  2. jQuery的隔行换色

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  3. Memcached安装教程及使用

    Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载 Table of contents 安装 使用 在spring中使用 安装 下载下来m ...

  4. hibernate与Oracle

    今天在用hibernate连接Oracle数据库进行查询时,出现一点小状况 数据库中是有数据的,而且程序本身也没有问题,可就是查不出数据,在经过几个小时的查找下,中遇找到了问题所在,那就是我Oracl ...

  5. Python基础部分的疑惑解析——运算符和数据类型(3)

    补充上一篇: #! /user/bin/env python   代码内声明这一个就可以用1.py类似的文件直接执行,但是要在linux内加权限, 不需要在前面加python 1.py执行了.文件可以 ...

  6. appium获取toast方法

    配置toast请注意: 1.指定desired_caps["automationName"] = "UiAutomator2" 2.要求安装jdk1.8 64位 ...

  7. Collections.singletonList方法的使用

    方法注释 /** * Returns an immutable list containing only the specified object. * The returned list is se ...

  8. OI中一些常见实用的套路【更新中】

    数据结构 在维护树上路径时,如果只是点的独立的加减,可以考虑用括号序来维护(拆成两部分) 需要求树上很多路径中k近/距离和 一类,考虑点分治/在点分树上解决. 子树求和可以转化为DFS序上区间求和 树 ...

  9. Vue局部注册 或者全局注册 组件时,组件定义要用 分隔命名,用驼峰命名是不生效的

    Vue.component('all-canuse',{ props:['message'], template:'<div>{{message}}</div>' }) 像这样

  10. Go语言学习笔记二: 变量

    Go语言学习笔记二: 变量 今天又学了一招如何查看go的版本的命令:go version.另外上一个笔记中的代码还可以使用go run hello.go来运行,只是这种方式不会生成exe文件. 定义变 ...