self-service网络的配置与使用

  1. project之间内网隔离,不像flat网络那样是大通铺,相比之下安全性更高;
  2. 由于默认只能是虚拟机内部之前通过定义好的内网连接,所以外部无法连接到虚拟机,需要绑定float ip来进行访问;
  3. 不绑定float ip的情况下就能通过router的SNAT功能实现上网;
  4. 虚拟机内部看不到自己绑定的float ip,只能通过dashboard界面来获得float ip或者curl http://169.254.169.254/latest/meta-data/public-ipv4

由于配置文件/etc/neutron/plugins/ml2/ml2_conf.initenant_network_types = vxlan,所以默认租户只能建立vxlan类型的网络,也就是说不能创建外网连接,只能创建虚拟机内部通信的网络,所以第一步就是去admin区域创建外网连接。

添加外网:

设置外网属性:

子网网段,对应到我测试环境就是172.17.3.0/24这个网络可以到互联网:

子网详细信息:

外网连接列表:

内部子网是租户可以自由定制的,但是要注意不要与外部的网段冲突。

添加虚拟机内网网络连接:

设置属性:

定义内部使用的子网:

dhcp设置:

子网列表:

和现实情况极为相似,比如办公网络:当你从电信那里拉好了一条上网的网线(provider network),也配置好了自己电脑的私网ip,那么是不是就还需要一个路由器来拨号上网了呢? 的确是这样的,在OpenStack里也是这样的!

创建router R1:

简单配置R1:

172.17.3.133就是R1的外网IP,经过R1到互联网的流量都会被SNAT成这个ip:

添加一个内网接口,相当于把虚拟机的内部网络用网线插到路由器R1上了:

R1上的网络接口列表:

创建虚拟机的时候networks仅选择IN-NET,就像把办公室电脑ip配成这个网段的,如果选择EX-NET就相当于插外网网线直接上网:

虚拟机启动后查看网络信息得知,虚拟机获得了内部网段的ip,然后gateway是位于R1接口上的本网段第一个ip:

查看虚拟机的route信息:

现在虚拟机还不能远程(虚拟机外部)访问,所以要给虚拟机绑定float ip:

新申请float ip:



完成后就能看到float ip和虚拟机的绑定情况了:

远程也能访问虚拟机了:

但是有一个问题要注意,虚拟机内部是看不到自己身上绑定的float ip的,要在界面上看:

下面就是这个网络的拓扑:

  • virtualization/openstack/neutron/selfservice类型网络使用.txt
  • 最后更改: 2019/04/16 18:31
  • (外部编辑)