openstack使用openvswitch实现vxlan组网

如果你不相信努力和时光,那么成果就会是第一个选择辜负你的。不要去否定你自己的过去,也不要用你的过去牵扯你现在的努力和对未来的展望。不是因为拥有希望你才去努力,而是去努力了,你才有可能看到希望的光芒。openstack使用openvswitch实现vxlan组网,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

 openstack使用openvswitch实现vxlan

 

openstack环境:

1 版本:ocata 

2 系统:ubuntu16.04.2 

3 控制节点 1个 + 计算节点 1个 

4 控制节点网卡为ens33,ip = 172.171.5.200 ens34 manual模式 无IP

  

一 下载openswitch

controller :

apt-get install  neutron-openvswitch-agent

compute :

apt-get install neutron-openvswitch-agent

二 配置openvswitch

配置 /etc/neutron/plugins/ml2/ml2_conf.ini 文件

openstack使用openvswitch实现vxlan组网

etc/neutron/plugins/ml2/openvswitch_agent.ini 在[ovs]增加

openstack使用openvswitch实现vxlan组网

openstack使用openvswitch实现vxlan组网

配置 /etc/neutron/l3_agent.ini

openstack使用openvswitch实现vxlan组网

配置修改/etc/neutron/plugins/ml2/ml2_conf.ini 设置如下

openstack使用openvswitch实现vxlan组网

配置修改/etc/neutron/plugins/ml2/openvswitch_agent.ini 设置如下

openstack使用openvswitch实现vxlan组网

openstack使用openvswitch实现vxlan组网

增加用于外部网络的网桥

ovs-vsctl add-br br-ex 

向外部网桥添加物理网卡

ovs-vsctl add-port br-ex  ens33

 

 三  dashboard配置租户网络

1 使用admin用户登录,创建外部网络。

openstack使用openvswitch实现vxlan组网

openstack使用openvswitch实现vxlan组网

openstack使用openvswitch实现vxlan组网

 

 2 以demo用户登录,创建内网。因为在后台配置时已经选择了内部网络为vxlan,所以demo用户创建的网络为vxlan。

openstack使用openvswitch实现vxlan组网

 

openstack使用openvswitch实现vxlan组网

 这里配置的网段是创建的实例能够分配的地址。 

openstack使用openvswitch实现vxlan组网

 

 

openstack使用openvswitch实现vxlan组网

创建好内网和外网之后,创建一个路由器连接两个网段。在这个路由器上完成的功能是NAT,当实例出外网时,将内网地址NAT成外网地址以便访问公网。

openstack使用openvswitch实现vxlan组网

openstack使用openvswitch实现vxlan组网

 当网络创建好之后,网络拓扑应该是如下图所示。蓝色为公网网段,黄色为私网网段,中间是路由器,连接黄色的为开启的实例。

openstack使用openvswitch实现vxlan组网

四  底层网络分析

 与Linux-bridge不同,使用Openvswitch作为网络驱动之后创建vxlan网络会生成在controller生成三个网桥,分别是:

br-int 连接 Dnsmasq,流表逻辑处理

br-ex 连接网卡,出外网网桥

br-tun 隧道端点

在compute节点生成两中网桥,分别是:

br-int 连接虚拟机

br-tun 隧道端点,连接到controller。

如下图所示,分别是controller与compute节点的br-tun分析。 

openstack使用openvswitch实现vxlan组网

openstack使用openvswitch实现vxlan组网

 local_ip为本地隧道端点IP地址,remote_ip为对端隧道端点IP地址。本环境是管理网卡为隧道端点,也可以使用单独的网卡。

具体如下图所示:

 

openstack使用openvswitch实现vxlan组网

下图为 compute节点的br-int网桥,网桥上挂有两个端点,第一个是与实例有关,第二个连接br-tun

openstack使用openvswitch实现vxlan组网

具体见下图compute节点

 

openstack使用openvswitch实现vxlan组网

下图为controller节点的端口信息,第一个为controller上br-int与br-tun的连接;第二个是dhcp的设备;第三个是dashboard中创建的路由器的一端;第四个是br-int与br-ex的连接。

openstack使用openvswitch实现vxlan组网                                                

上图对应的连接为下图所示                   

openstack使用openvswitch实现vxlan组网                openstack使用openvswitch实现vxlan组网

下图为controller节点的br-ex网桥,三个端口分别是:

1 路由器的另一端(还有一端在br-int)

2 自身环回口,类似linux中的环回口。

3 外网网卡

openstack使用openvswitch实现vxlan组网

上图对应的关系如下图所示:

 

openstack使用openvswitch实现vxlan组网

 

 openstack使用openvswitch实现的VxLAN就如下图所示。图片出处为about 云 。

openstack使用openvswitch实现vxlan组网

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/194336.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!