云计算——OpenStack Neutron详解

发表于:2017-10-11 10:21

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:姚红    来源:51Testing软件测试网采编

分享:
  简介:
  neutron是openstack核心项目之一,提供云计算环境下的虚拟网络功能
  OpenStack网络(neutron)管理OpenStack环境中所有虚拟网络基础设施(VNI),物理网络基础设施(PNI)的接入层。
  网络结构:
  Neutron网络结构图,管理员创建和管理Neutron外部网络,是租户虚拟机与互联网信息交互的桥梁。更具体的,外部网络会分出一个子网,它是一组在互联网上可寻址的IP地址。一般情况下,外部网络只有一个(neutron是支持多个外部网络的),且由管理员创建。租户虚拟机创建和管理租户网络,每个网络可以根据需要划分成多个子网。诸多子网通过路由器与Neutron外部网络(图中具体是子网A)连接。路由器的gateway网关端连接外部网络的子网,interfaces接口端有多个,连接租户网络的子网。路由器及interface接口端连接的网络都是由租户根据需要自助创建,管理者只创建和管理Neutron外部网络部分。
  总结来看,创建一个Neutron网络的过程如下:
  1、首先管理员拿到一组可以在互联网上寻址的IP地址,并且创建一个外部网络和子网
  2、租户创建一个网络和子网
  3、租户创建一个路由器并且连接租户子网和外部网络
  4、租户创建虚拟机
  网络类型:
  整体网络分为:内部网络(管理网络,数据网络),外部网络(外部网络,API网络)
  1:管理网络---用于OpenStack各组件之间的内部通信。
  2:数据网络---用于云部署中虚拟数据之间的通信。
  3:外部网络---公共网络,外部或internet可以访问的网络。
  4:API网络---暴露所有的OpenStackAPIs,包括OpenStack网络API给租户们。
  网络模式:
  1:Flat模式---网桥模式,所有的都需要手工配置,属于平面网络,所以实例属于同一网络
  2:FlatDHCP模式---网桥模式,在网关处单独取了一个DHCP的进程,可以辅助用户进行网络配置
  3:VLAN模式---为每个不同的租户设置了不同的虚拟子网,在这个虚拟子网中,用户可以有自己的ip
  详解:
  1:Flat模式
  1)指定一个子网,规定虚拟机能使用的ip范围,也就是一个ip池(分配ip不会超过这个范围,也就是配置里面的fixed_range,比如10.0.0.1/27,那么可用ip就有32个);
  2)创建实例时,从有效ip地址池接取一个IP,为虚拟机实例分配,然后在虚拟机启动时候注入虚拟机镜像(文件系统);
  3)必须手动配置好网桥(br100),所有的系统实例都是和同一个网桥连接;网桥与连到网桥的实例组成一个虚拟网络,nova-network所在的节点作为默认网关。
  比如flat_interface=eth1;eth1的ip为10.0.0.1,其它网络ip在10.0.0.1/27内。flatinterface-->br100-->flatnetwork
  4)此后,网络控制器(nova-network节点)对虚拟机实例进行NAT转换,实现与外部的通信。
  注意:目前好像配置注入只能够对Linux类型的操作系统实例正常工作,网络配置保存在/etc/network/interfaces文件。
  2:FlatDHCP模式
  与Flat模式一样,从ip池取出ip分配给虚拟机实例,所有的实例都在计算节点中和一个网桥相关。不过,在这个模式里,控制节点做了更多一些的配置,尝试和以太网设备(默认为eth0)建立网桥,
  通过dhcp自动为实例分配flat网络的固定ip,可以回收释放ip。
  1)网络控制器(运行nova-network服务的节点)运行dusmasq作为DHCP服务器监听这个网桥;
  2)实例做一次dhcpdiscover操作,发送请求;
  3)网络控制器把从一个指定的子网中获得的IP地址响应给虚拟机实例;
  4)实例通过网络控制器与外部实现互相访问。
  3:VLAN网络模式
  OpenStack的默认网络管理模式,没有设置--network_manager=nova.network.manager.FlatDHCPManager或者FlatManager的时候默认为vlan。为了实现多台机器的安装,
  VLAN网络模式需要一个支持VLAN标签(IEEE802.1Q)的交换机(switch)。
  在这个模式里,为每个项目创建了VLAN和网桥。所有属于某个项目的实例都会连接到同一个VLAN,必要的时候会创建Linux网桥和VLAN。
  每个项目获得一些只能从VLAN内部访问的私有IP地址,即私网网段。每个项目拥有它自己的VLAN,Linux网桥还有子网。被网络管理员所指定的子网都会在需要的时候动态地分配给一个项目。
  1)网络控制器上的DHCP服务器为所有的VLAN所启动,从被分配到项目的子网中获取IP地址并传输到虚拟机实例。
  2)为了实现用户获得项目的实例,访问私网网段,需要创建一个特殊的VPN实例(代码名为cloudpipe,用了创建整数、key和vpn访问实例)。
  3)计算节点为用户生成了证明书和key,使得用户可以访问VPN,同时计算节点自动启动VPN。
  4)vpn访问。
  4:Flat与vLAN的比较
  在两种Flat模式里,网络控制器扮演默认网关的角色,实例都被分配了公共的IP地址(扁平式结构,都在一个桥接网络里)。
  vLAN模式功能丰富,很适合提供给企业内部部署使用。但是,需要支持vLAN的switches来连接,而且相对比较复杂,在小范围实验中常采用FlatDHCP模式。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号