openstack使用openvswitch实现vxlan组网
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 文件

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


配置 /etc/neutron/l3_agent.ini

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

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


增加用于外部网络的网桥
ovs-vsctl add-br br-ex
向外部网桥添加物理网卡
ovs-vsctl add-port br-ex ens33
三 dashboard配置租户网络
1 使用admin用户登录,创建外部网络。



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


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


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


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

四 底层网络分析
与Linux-bridge不同,使用Openvswitch作为网络驱动之后创建vxlan网络会生成在controller生成三个网桥,分别是:
br-int 连接 Dnsmasq,流表逻辑处理
br-ex 连接网卡,出外网网桥
br-tun 隧道端点
在compute节点生成两中网桥,分别是:
br-int 连接虚拟机
br-tun 隧道端点,连接到controller。
如下图所示,分别是controller与compute节点的br-tun分析。


local_ip为本地隧道端点IP地址,remote_ip为对端隧道端点IP地址。本环境是管理网卡为隧道端点,也可以使用单独的网卡。
具体如下图所示:

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

具体见下图compute节点

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

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

下图为controller节点的br-ex网桥,三个端口分别是:
1 路由器的另一端(还有一端在br-int)
2 自身环回口,类似linux中的环回口。
3 外网网卡

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

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

openstack使用openvswitch实现vxlan组网的更多相关文章
- openstack使用openvswitch实现vxlan的方法
openstack使用openvswitch实现vxlan,分享给大家,具体如下: openstack环境: 1 版本:ocata 2 系统:ubuntu16.04.2 3 控制节点 1个 + 计算节 ...
- Neutron 理解 (3): Open vSwitch + GRE/VxLAN 组网 [Netruon Open vSwitch + GRE/VxLAN Virutal Network]
学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...
- Neutron 理解(14):Neutron ML2 + Linux bridge + VxLAN 组网
学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...
- openstack pike 使用 linuxbridge + vxlan
#openstack pike 使用 linuxbridge + vxlan #openstack pike 集群高可用 安装部署 汇总 http://www.cnblogs.com/elvi/p/ ...
- Docker+OpenvSwitch搭建VxLAN实验环境
一.概述 1.环境:我这里是2台linux机器(host1和host2),发行版是kali2.0, ...
- openstack之neutron linuxbridge + vlan组网
linuxbridge是和linuxbridge plugin匹配的core agent,主要实现L2层的功能和security group的功能.security group的功能逐渐会被neutr ...
- openstack pike 使用 openvswitch + vxlan
# openstack pike 使用 openvswitch + vxlan# openstack pike linuxbridge-agent 换为 openvswitch-agent #open ...
- openstack之Neutron网络模式vlan,gre,vxlan详解
第一:neutron openvswitch + vlan虚拟网络 一:基础知识 vlan基础知识 1.vlan介绍 1.1:首先说下lan,LAN 表示 Local Area Network,本地局 ...
- 【Network】OVS、VXLAN/GRE、OVN等 实现 Docker/Kubernetes 网络的多租户隔离
多租户隔离 DragonFlow与OVN | SDNLAB | 专注网络创新技术 Neutron社区每周记(6.25~7.6)| OVS将加入Linux基金会?OVN或抛弃ovsdb? | Unite ...
随机推荐
- 基于HTTP协议的下载功能实现
超文本传输协议 (HTTP-HyperText Transfer Protocol)是一种使用极为广泛的协议,它由请求和响应构成,是一种无状态的应用层协议.设计HTTP协议的初衷是为了提供一种传输HT ...
- Hadoop各种进程的配置文件及其位置说明
hdfs DameNode core-site.xml <!--设置主机的IP和端口--> <property> <name>fs.defaultFS</na ...
- JProfiler - Java的性能监控工具
简介 JProfiler是一款Java的性能监控工具.可以查看当前应用的对象.对象引用.内存.CPU使用情况.线程.线程运行情况(阻塞.等待等),同时可以查找应用内存使用得热点,即:哪个对象占用的内存 ...
- [基础架构]PeopleSoft Process Scheduler 重要文件说明
我们都知道PeopleSoft是由几个不同的服务组成的,他们在PeopleSoft体系结构中扮演着自己的角色.这些服务具有不同的文件结构并包含重要的可执行文件和配置文件. 以下是Peoplesoft体 ...
- 设备常用框架framework
framework名称 framework说明 framework文档 Accelerate.framework 包含加速数学和DSP函数 http://developer.apple.com/iph ...
- Ambari安装之部署本地库(镜像服务器)(二)
部署本地库(镜像服务器) (1)下载HortWorks官网上的3个库到本地(也可以在线下载,但是速度会很慢) 我们先把hortworks官网上需要下载的3个库下载到本地(这个还是需要很长时间的,当然你 ...
- poj_2186: Popular Cows(tarjan基础题)
题目链接 tarjan参考博客 本文代码参考博客 题意:求在图上可以被所有点到达的点的数量. 首先通过tarjan缩点,将所有内部两两可达的子图缩为一点,新图即为一个有向无环图(即DAG). 在这个D ...
- 一个Web 持续集成工作实践
一个web的持续基础实践: https://mp.weixin.qq.com/src=3×tamp=1494325174&ver=1&signature=wFVC0E ...
- Hibernate一对多实例
本文向大家介绍Hibernate实例一对多的情况,可能好多人还不了解Hibernate实例一对多,没有关系,下面通过一个实例来帮助您理解Hibernate实例一对多,希望本文能教会你更多东西. 先看由 ...
- lfcp——PB使用
场景:记录以备忘. 1 直接说明 pb连接说明:目前项目共有性能.功能.业务.联调四个环境.所以pb可以连接四个不同的数据库.1.copy一份pb程序,修改main.ini文件中的DBCONNECT/ ...