devstack-6-Neutron(配置使用 vxlan)

●ML2 中启用 VXLAN
①在 /etc/neutron/plugins/ml2/ml2_conf.ini 设置 vxlan network 相关参数。
例:
[ml2]
tenant_network_types = vxlan //指定普通用户创建的网络类型为vxlan。
extension_drivers = port_security
type_drivers = local,flat,valn,gre,vxlan
mechanism_drivers = linuxbridge,l2population

②指定 vxlan vni 的范围是 1001 - 2000。
例:
[ml2_type_vxlan]
vni_ranges = 1001:2000

普通用户创建 network 时并不能指定 vni,Neutron 会按顺序自动从这个范围中取值。
对于 admin 则没有 vni 范围的限制,admin 可以创建 vni 范围为 1-16777216 的 vxlan network。

③需要在 [VXLAN] 中配置 VTEP。
控制节点devstack_controller的ml2_conf.ini 配置如下:
例:
[VXLAN]
enable_vxlan = True
l2_population = True
local_ip = 166.66.16.10

计算节点 devstack_compute01 的 ml2_conf.ini 配置如下:
例:
[VXLAN]
enable_vxlan = True
l2_population = True
local_ip = 166.66.16.11

local_ip 指定节点上用作 VTEP 的 IP 地址。
devstack_controller 的 VTEP IP 是 166.66.16.10,网卡为 eth1。
devstack_compute01 的 VTEP IP 是 166.66.16.11,网卡为 eth1。
注意:作为准备工作,这两个 VTEP IP需要提前配置到节点的 eht1 上,Neutron 并不会帮我们分配这个IP。

 

●配置启用 L2 Population
L2 Population 支持 VXLAN with Linux bridge 和 VXLAN/GRE with OVS。

①可以通过以下配置启用 L2 Population。
在 /etc/neutron/plugins/ml2/ml2_conf.ini 设置 l2population mechanism driver。
例:
[ml2]
tenant_network_types = vxlan //指定普通用户创建的网络类型为vxlan。
extension_drivers = port_security
type_drivers = local,flat,valn,gre,vxlan
mechanism_drivers = linuxbridge,l2population

②同时在[VXLAN]中配置enable L2 Population。
例:
[VXLAN]
enable_vxlan = True
l2_population = True
local_ip = 166.66.16.10
L2 Population 生效后,创建的 vxlan-100 会多一个 Proxy ARP 功能。

查看控制节点上的 forwarding database,可以看到 VTEP 保存了VM 的port信息。
命令:bridge fdb show dev vxlan-100

posted @ 2018-02-24 09:53  山的那一边  阅读(377)  评论(0编辑  收藏  举报