1、网络:
可选择的网络类型有:local,flat,vlan,gre,vxlan,geneve 等等。
有5种网络模式
Local模式:一般测试时使用,只需一台物理机即可。
GRE模式:隧道数量没有限制,性能有点问题。
Vlan模式:vlan数量有4096的限制
VXlan模式:vlan数量没有限制,性能比GRE好。
Flat模式:管理员创建,租户直接到外网,不需要NAT了
启动前我们可以检查一下相关配置,不一致的地方照着修改修改。网络部分对我来说是比较难的,我在这里纠结了好多天,差点都放弃学习了。
编辑/etc/neutron/plugin.ini
1 2 3 4 5 6 7 8 9 |
# vi /etc/neutron/plugin.ini #type_drivers = vlan,flat 这里要把所有支持的驱动都填入,不然在控制台页面创建网络的时候会报错。 tenant_network_types = local,flat type_drivers = local,flat,vlan,gre,vxlan,geneve mechanism_drivers = linuxbridge extension_drivers = port_security [ml2_type_flat] #flat_networks = provider flat_networks = public |
编辑后,/etc/neutron/plugins/ml2/ml2_conf.ini中的对应项也会自动跟着变,这是一个软连接。大家可以确认一下。没有软连接的改一下软连接。
再编辑/etc/neutron/plugins/ml2/linuxbridge_agent.ini中的
1 2 |
#physical_interface_mappings = provider:eth0 physical_interface_mappings = public:eth0 |
重启neutron 服务
1 2 3 |
[root@controller neutron]# systemctl restart neutron-server 或者 [root@controller neutron]# openstack-service restart neutron |
现在可以去去控制台dashboard上 创建flat网络了。
dashboard 中有两个地方可以创建 network:
- Project -> Network -> Networks这是普通用户在自己的 tenant 中创建 network 的地方,只能创建tenant_network_types 配置的默认网络类型,
- Admin -> Networks 这是 admin 创建 network 的地方,管理员可以挑选指定创建的网络类型。
我们先用第二种方式创建,点击 “Create Network” 按钮。
在 “管理员” 条目下选择 “网络”,再点击 “创建网络” ,在里面要注意选择 “Flat” ,物理网络为 “public” (注意这里与/etc/neutron/plugins/ml2/ml2_conf.ini内的[ml2_type_flat]的flat_networks对应),然后再把 “共享的” 和 “外部网络” 勾选起来,之后点击 “创建网络”。
2、虚拟化的小坑:
Unexpected build failure, not rescheduling build.: UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe6 in position 0: ordinal not in range(128)
这个报错一直去查编码的问题,最后发现是CPU支持虚拟化,但是没打开……
查看方法:dmesg|grep kvm
如果显示:kvm disabled by bios,那去把bios的虚拟化打开去吧