Linux Bridge 和 Open vSwitch 是目前 OpenStack 中使用最广泛的两种虚机交换机技术。
前面各章节我们已经学习了如何用 Linux Bridge 作为 ML2 mechanism driver 实现 Neutron 网络。
今天开始我们将详细讨论如何用 Open vSwitch 实现 Neutron。
实验环境两节点的网卡分配方式与 Linux Bridge 一致,如下所示:
控制节点三个网卡(eth0, eth1, eth2),计算节点两网卡(eth0, eth1)。
合并 Management 和 API 网络,使用 eth0,IP 段为 192.168.104.0/24。
VM 网络使用 eht1。
控制节点的 eth2 与 External 网络连接,IP 段为 10.10.10.0/24。
网络拓扑
实验环境的网络拓扑如下图所示
这个图在 Linux Bridge 实现中也看到过,唯一的区别是:
对于节点中的 “Virtual Network Switch” 我们将用 Open vSwitch 替换掉 Linux Bridge。
配置 openvswitch mechanism driver
要将 Liunx Bridge 切换成 Open vSwitch,首先需要安装 Open vSwitch 的 agent。
修改 devstack 的 local.conf:
重新运行 ./stack,devstack 会自动下载并安装 Open vSwitch。
接下来就可以修改 ML2 的配置文件 /etc/neutron/plugins/ml2/ml2_conf.ini,设置使用 openvswitch mechanism driver。
控制节点和计算节点都需要按照上面的方法安装并配置 Open vSwitch。
Neutron 服务重启后,可以通过 neutron agent-list 命令查看到 neutron-openvswitch-agent 已经在两个节点上运行。
下一节查看当前网络的状态并介绍 Open vSwitch 涉及的各种网络设备。