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 :
|
1
|
apt-get install neutron-openvswitch-agent |
compute :
|
1
|
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 设置如下


增加用于外部网络的网桥
|
1
|
ovs-vsctl add-br br-ex |
向外部网桥添加物理网卡
|
1
|
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个 + 计算节点 1个 4 控制节点 ...
- openstack pike 使用 linuxbridge + vxlan
#openstack pike 使用 linuxbridge + vxlan #openstack pike 集群高可用 安装部署 汇总 http://www.cnblogs.com/elvi/p/ ...
- OpenStack中的rabbitmq的配置方法
OpenStack中的rabbitmq的配置方法 author:headsen chen 2017-10-11 17:24:58 个人原创,允许转载,转载请注明作者,出处,否则依法追究法律责任 ...
- Docker+OpenvSwitch搭建VxLAN实验环境
一.概述 1.环境:我这里是2台linux机器(host1和host2),发行版是kali2.0, ...
- openstack组件服务的入口寻找方法
在centos7系统上,安装openstack服务以后,可以通过以下命令,查找到该系统上,已经安装的openstack服务 [root@xzto01n010027244133 ~]# systemct ...
- 安装openstack同步数据库时出错解决方法
错误提示:(2003, "Can't connect to MySQL server on 'controller' ([Errno -2] Name or service not know ...
- 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,本地局 ...
- OpenStack中给wsgi程序写单元測试的方法
在 OpenStack 中, 针对web应用, 有三种方法来写单元測试 1) 使用webob生成模拟的request from __future__ import print_function imp ...
随机推荐
- Eclipse上传项目到Git
转载自:http://blog.csdn.net/fan510988896/article/details/56277822 Git有和Svn类似的功能. 我们想使用Eclipse上传项目到自己的Gi ...
- Robot Framework脚本在jenkins执行完之后无法查看日志
首先确保Robot Framework Plugin已经安装好,构建结束后test result和log.html等日志文件已显示,只是无法打开查看: 修改tomcat配置:vi tomcat/con ...
- apache 2.2 和 2.4 访问控制区别 (require 替代 deny)
apache 2.4权限配置 Order命令已从Apache 2.4中删除 注意:使用require指令时,需要在指令外添加<RequireAll></RequireAll>标 ...
- 前端-JavaScript2-5——JavaScript之运算符进阶
运算符(Operators,也翻译为操作符),是发起运算的最简单形式. 运算符的分类见仁见智,我们的课程对运算符进行如下分类: 数学运算符(Arithmetic operators) 比较运算符(Co ...
- python爬虫学习笔记(二)——基础篇之爬虫基本原理
1.什么是爬虫? 请求网站并提取数据的自动化程序 2.爬虫基本流程 2.1发起请求 通过HTTP库向目标站点发起请求,即发起一个Request,请求可以包含额外的headers等信息,等待服务器响应: ...
- 1、Netty 实战入门详解
一.Netty 简介 Netty 是基于 Java NIO 的异步事件驱动的网络应用框架,使用 Netty 可以快速开发网络应用,Netty 提供了高层次的抽象来简化 TCP 和 UDP 服务器的编程 ...
- oracle 11g审计关闭,及删除日志
转自https://blog.csdn.net/louwzh/article/details/51274955 环境:Linux redhat6.3 下安装的oracle11g oracle 11g推 ...
- MJRefresh在Xode6中报错处理
MJRefresh在Xcode6中会报错,objc_msgSend(self.beginRefreshingTaget, self.beginRefreshingAction, self),简单调 ...
- DLC 格雷码
格雷码特点 每相邻两个数,只会有一位发生变(二进制数) 异或运算 若两个运算数相同,结果为 0 若两个运算数不相同, 结果为 1
- java-网络通信-索引
HTTP协议 关于HTTP协议,一篇就够了 HTTP与HTTPS的区别 HTTP Keep-Alive模式 HTTP长连接和短连接 HTTP的长连接(持久连接)和短连接 HTTP的长连接 ...