nova-network网络模式

来源:互联网 发布:windows批处理教程 编辑:程序博客网 时间:2024/05/21 19:40

作为openstack中的核心组件,nova肩负着管理虚拟机的使命。nova提供nova-api,nova-scheduler,nova-network等几个重要的服务。而其中nova-network是openstack网络管理模块neutron还没有独立出来时候的前身,当然其功能就是网络和地址管理,它会创建虚拟网络。

nova支持三种类型的网络,对应三种网络管理类型,分别为Flat管理模式、FlatDHCP管理模式、VLAN管理模式。默认使用VLAN模式。首先简单介绍一下这三种网络模式:

1. Flat模式:所有实例连接到同一个虚拟网络,网络架构采用扁平的结构,需要手动设置网桥

2. FlatDHCP模式:与Flat模式类似,所有实例连接到同一个虚拟网络。不同的是,实例ip地址的分配采用DHCP模式获取(nova-network节点提供虚拟DHCP服务),而且可以自动建立网桥

3. VLAN模式:以划分子网的形式将网络隔离开,为不同项目提供受保护的网段,该模式需要在交换机层面进行相应的配置

下面我们来详细的介绍一下该三种模式及其工作机制:

  • Flat模式:

1)指定一个子网,规定虚拟机可以使用的ip范围,也就是配置文件中的fixed_range,分配的ip不能超过这个范围

2)创建实例时,从ip池中取出一个有效ip,在实例启动时注入到实例的镜像文件中

3)手动设置好一个网桥(br100),所有实例都是同这个网桥连接,形成一个虚拟网络,nova-network所在的节点作为默认网关

4)nova-network服务所在节点(以下称网络控制器)对虚拟机实例进行NAT转换,实现实例对外网(Internet)的访问

注:Internet若想访问虚拟机实例需要给虚拟机分配浮动ip(float_ip)或实现宿主机到虚拟机的端口映射

  • FlatDHCP模式:

1)与Flat模式类似,自动建立网桥,从ip池中获取有效ip地址分配给每个虚拟机实例作为固定ip(fixed_ip)

2)网络控制器运行dnsmasq服务监听这个网桥

3)实例通过网络控制器实现实例对外网(Internet)的访问

注:Internet若想访问虚拟机实例需要给虚拟机分配浮动ip(float_ip)或实现宿主机到虚拟机的端口映射

  • VLAN模式:

1)网络控制器上的DHCP服务器从被分配到项目的子网中获取ip地址

2)为了使用户得到项目的实例(访问私网网段),需要创建一个特殊的VPN实例

3)计算节点为用户生成证书和Key,使得用户可以访问VPN,同时计算节点自动启动VPN

注:每一个项目都具有自己的VLAN和网桥,所有属于某个项目的实例都位于同一个VLAN下,这些实例获取到一些只能从VLAN内部访问到的私有ip地址。VLAN模式需要交换机支持VLAN模式。

  • FlatDHCP与VLAN

由于FlatDHCP采用扁平式结构,实例若能被外网访问都被分配了公网地址(float_ip),在虚拟机实例数量较多时,容易发生地址冲突。所以FlatDHCP模式适合在小型的实验环境部署。而VLAN模式则适合在业务量较大的企业环境应用。

  • FlatDHCP模式部署

根据业务需求,FlatDHCP可分为多种部署模式。这里为了实现复杂环境中的高可用(HA),主要介绍在服务器为双网卡且环境中存在多个计算节点的情况下的multi_host(多个网络控制器节点)模式。

该种模式下,为每个计算节点安装nova-network服务,每个计算节点上的flat_interface作为网桥提供dhcp,dns服务,为在其上的实例的网关。实例不必都从控制节点通过。

注:本文部分内容参考:http://blog.csdn.net/hilyoo/article/details/7721401

0 0
原创粉丝点击