通过 router 可以实现位于不同 vlan 中的 instance 之间的通信。
接下来要探讨的问题是 instance 如何与外部网络通信。
这里的外部网络是指的租户网络以外的网络。 租户网络是由 Neutron 创建和维护的网络。 外部网络不由 Neutron 创建。如果是私有云,外部网络通常指的是公司 intranet;如果是公有云,外部网络通常指的是 internet。
具体到我们的实验网络环境: 计算节点和控制节点 eth1 提供的是租户网络,IP 段租户可以自由设置。 控制节点 eth2 连接的就是外部网络,IP 网段为 10.10.10.0/24。 如下图所示:
配置准备
为了连接外部网络,需要在配置文件中告诉 Neutron 外部网络的类型以及对应的物理网卡。 因为外部网络是已经存在的物理网络,一般都是 flat 或者 vlan 类型。
这里我们将外部网络的 label 命名为 “external”。 如果类型为 flat,控制节点 /etc/neutron/plugins/ml2/ml2_conf.ini 配置如下:
如果类型为 vlan,配置如下:
修改配置后,需要重启 neutron 的相关服务。
在我们的网络环境中,外部网络是 flat 类型。 下一节我们将演示如何创建外部网络 ext_net。