配置OpenvSwitch (OVS) for NeutronVxLAN

需积分: 0 0 下载量 119 浏览量 更新于2024-08-04 收藏 144KB DOCX 举报
"146-ML2 配置 OVS VxLAN1 主要讲述了在OpenStack环境中,如何利用OpenvSwitch (OVS) 和ML2插件配置VxLAN网络,以实现NeutronVxLAN。内容涉及到VxLAN的概念、LinuxBridge的使用,以及如何在ML2配置中启用VxLAN网络,并设置了相关的参数和范围。" 在OpenStack中,VXLAN(Virtual eXtensible Local Area Network)是一种overlay网络技术,用于在虚拟化环境中跨越多个层2域提供网络隔离。它通过在IP网络上传输二层流量,实现了跨物理网络的虚拟机迁移和网络扩展。VXLAN使用UDP封装,将二层MAC地址信息放入VXLAN头,然后在三层网络上传输。 OVS是OpenvSwitch的缩写,是一个开源的多层软件交换机,它支持VXLAN和GRE等隧道技术,允许在虚拟化环境中创建和管理复杂的网络拓扑。在Neutron中,ML2(Mechanism Driver Layer 2)插件提供了一种灵活的方式来添加和管理不同的网络类型,包括VXLAN。 为了配置VxLAN网络,首先需要在`/etc/neutron/plugins/ml2/ml2_conf.ini`配置文件中进行设置。这包括: 1. 指定网络类型为VXLAN:这可以通过在`[ml2]`部分设置`type_drivers = vxlan`来完成。 2. 启用L2population机制驱动器:这有助于加速VXLAN网络中的ARP和ND解析,可以设置`mechanism_drivers = openvswitch,l2population`。 3. 定义VXLAN VNI(Virtual Network Identifier)范围:例如,`vxlan_vni_ranges = 1001:2000`,表示普通用户可以在1001到2000之间创建VXLAN网络。管理员没有VNI范围限制,可以创建任何VNI的VXLAN网络。 接着,在`[agent]`部分启用VXLAN和L2population,例如: ``` [agent] enable_vxlan = true l2_population = true ``` 在`[ovs]`部分,配置VTEP(Virtual Tunnel End Point)相关设置,如: ``` [vxlan] local_ip = 166.66.16.10 # 这是控制器节点的VTEP IP地址 tunnel_type = vxlan ``` 确保`local_ip`设置为VTEP的IP地址,该地址应配置在相应的物理网络接口上。 配置完成后,重启Neutron服务,然后使用`ovs-vsctl show`命令检查OVS的网络配置。在示例中,`br-int`(integration bridge)和`br-tun`(tunnel bridge)通过patch port连接,形成VXLAN隧道的基础。 完成上述配置后,就可以创建VxLAN网络并部署实例了。这样的网络结构允许在不同层2域间建立虚拟网络,为OpenStack环境提供了更强大的网络功能和灵活性。