ML2 配置 OVS VxLAN - 每天5分钟玩转 OpenStack(146)

今天我们开始学习 OVS 如何实现 Neutron VxLAN,关于 VxLAN 的概念以及 Linux Bridge 实现,大家可以参考前面相关章节。

Open vSwitch 支持 VXLAN 和 GRE 这两种 overlay network。因为 OpenStack 对于 VXLAN 与 GRE 配置和实现差别不大,这里只讨论如何实施 VXLAN。

在 ML2 配置中 enable vxlan network

在 /etc/neutron/plugins/ml2/ml2_conf.ini 设置 vxlan network 相关参数。

指定普通用户创建的网络类型为 vxlan,同时 enable l2population mechanism driver,然后指定 vxlan 的范围。

上面配置定义了 vxlan vni 的范围是 1001 - 2000,这个范围是针对普通用户在自己的租户里创建 vxlan network 的范围。 因为普通用户创建 network 时不能指定 vni,Neutron 会按顺序自动从这个范围中取值。

对于 admin 则没有 vni 范围的限制,admin 可以创建 vni 范围为 1-16777216 的 vxlan network。

在 [agent] 中配置启用 vxlan 和 l2population。

最后在 [ovs] 中配置 VTEP。

vxlan tunnel 对应的网桥为 br-tun。 
local_ip 指定 VTEP 的 IP 地址。 
devstack-controller 使用 166.66.16.10,此 IP 配置在网卡 eth1 上。 
devstack-compute01 则使用 166.66.16.11,此 IP 配置在网卡 eth1 上。

初始网络结构

Neutron 服务重启后,通过 ovs-vsctl show 查看网络配置:

br-int 与 br-tun 通过 patch port “patch-tun” 和 “br-tun” 连接。 目前网络结构如下所示:

准备就绪,下一节我们创建 vxlan 并部署 instance。

时间: 2024-10-23 21:50:33

ML2 配置 OVS VxLAN - 每天5分钟玩转 OpenStack(146)的相关文章

在 ML2 中配置 VXLAN - 每天5分钟玩转 OpenStack(110)

上一节我们介绍了 VXLAN 的基本概念,今天介绍如何在 ML2 中启用 VXLAN. 在 /etc/neutron/plugins/ml2/ml2_conf.ini 设置 vxlan network 相关参数. tenant_network_types = vxlan 指定普通用户创建的网络类型为 vxlan. 这里还使用了一个名为 "l2population" mechanism driver,我们放到后面单独介绍. 然后指定 vxlan 的范围. 上面的配置定义了 vxlan v

创建 VXLAN - 每天5分钟玩转 OpenStack(111)

前面我们讨论了 VXLAN 的理论知识,并且在 ML2 中完成了相关配置.今天将通过 Web UI 创建 vxlan100_net 并观察节点网络结构的变化. 打开菜单 Admin -> Networks,点击 "Create Network" 按钮 显示创建页面. Provider Network Type 选择 "VXLAN" Segmentation ID 即 VNI,设置为 100 点击 "Create Network",vxlan

为 instance 配置静态 IP - 每天5分钟玩转 OpenStack(157)

  这是 OpenStack 实施经验分享系列的第 7 篇. 传统运维中为服务器配置静态 IP 是再常见不过的了.但在 OpenStack 环境下只能指定 network,IP 都是 Neutron 从 subnet IP 池中自动分配的.   有同学就会想办法了:等 instance 起来后手工把 IP 改掉行不行? 非常遗憾,不行! instance 网卡的 IP 和 Mac 地址是记录在 port 中的,计算节点的 iptable 会根据 port 信息生成相应的 rule,只有与 por

配置 DHCP 服务 - 每天5分钟玩转 OpenStack(89)

前面章节我们看到 instance 在启动过程中能够从 Neutron 的 DHCP 服务获得 IP,本节将详细讨论其内部实现机制. Neutron 提供 DHCP 服务的组件是 DHCP agent. DHCP agent 在网络节点运行上,默认通过 dnsmasq 实现 DHCP 功能. 配置 DHCP agent DHCP agent 的配置文件位于 /etc/neutron/dhcp_agent.ini. dhcp_driver使用 dnsmasq 实现 DHCP. interface_

部署 instance 到 OVS vlan100 - 每天5分钟玩转 OpenStack(138)

上一节创建了 OVS vlan network vlan100,今天部署 instance 到该网络.launch 新的 instance "cirros-vm1",网络选择 vlan100. cirros-vm1 分配到的 IP 为 172.16.100.3. cirros-vm1 被 schedule 到控制节点,其虚拟网卡也连接到 br-int. 虚拟网卡与 br-int 的连接方式与 local 和 flat 网络没有任何区别,不再赘述. 当前 vlan100 的结构如下: 继

部署 instance 到 VXLAN - 每天5分钟玩转 OpenStack(112)

上一节我们创建了 vxlan 100_net,今天将部署 instance 并分析网络的连通性. launch 新的 instance "cirros-vm1",网络选择 vxlan100. cirros-vm1 分配到的 IP 为 172.16.100.3. cirros-vm1 被 schedule 到控制节点,对应的 tap 设备为 tap099caa87-cd,并且连接到 bridge brq1762d312-d4. 当前 vxlan100 的结构如下: 继续用同样的方式 la

如何安装和配置 Rex-Ray?- 每天5分钟玩转 Docker 容器技术(74)

Rex-Ray 是一个优秀的 Docker volume driver,本节将演示其安装和配置方法. Rex-Ray 以 standalone 进程的方式运行在 Docker 主机上,安装方法很简单,在需要使用 Rex-Ray driver 的主机 docker1 和 docker2 上运行如下命令: curl -sSL https://dl.bintray.com/emccode/rexray/install | sh - 然后创建并编辑 Rex-Ray 的配置文件 /etc/rexray/c

配置 VirtualBox backend - 每天5分钟玩转 Docker 容器技术(75)

Rexy-Ray 支持多种 backend,上一节我们已经安装配置了 Rex-Ray,今天演示如何配置 VirtualBox backend. 在 VirtualBox 宿主机,即我的笔记本上启动 vboxwebsrv 服务:vboxwebsrv -H 0.0.0.0 执行如下命令关闭 VirtualBox 的登录认证:VBoxManage setproperty websrvauthlibrary null 在关机状态下修改虚拟机 docker1 和 docker2 的 Storage 配置:

写在最前面 - 每天5分钟玩转 OpenStack(1)

<每天5分钟玩转 OpenStack>是一个 OpenStack 教程,这是第 1 篇. 这个教程有下面两个特点: 系统讲解 OpenStack 从架构到各个组件:从整体到细节逐一讨论 重实践并兼顾理论 主要从实际操作的角度带着大家学习 OpenStack.   为啥要写这个? 简单回答是:因为OpenStack 学习难度大,但如果掌握了价值会很大 先做一个自我介绍吧. 本人网名CloudMan,在 IT 这个行当已经摸爬滚打了十多年,05年之前是搞上层应用开发的,那时候 Java 比较火,所