Docker OpenvSwitch 应用部署

安装部署OVS并建立GRE隧道

  • 节点1:192.168.1.198 容器网段:172.17.1.0/24
  • 节点2:192.168.1.199 容器网段:172.17.2.0/24

1、节点1节点2操作:修改docker 默认IP地址网段,主配置文件内修改配置参数。

vim /lib/systemd/system/docker.service

# bip参数设置IP地址 指定的是网关。
ExecStart=/usr/bin/dockerd --bip=172.17.2.1/24
# 重启服务
systemctl daemon-reload
systemctl restart docker

2、节点1节点2操作:安装OVS

yum -y install openvswitch bridge-utils

3、节点1节点2操作:启动openvswitch服务

# 启动服务
systemctl start openvswitch

4、节点1节点2操作:创建网桥并激活

# 1、创建网桥
ovs-vsctl add-br br0 # 2、激活网桥
ip link set dev br0 up
[root@weave02 ~]# ifconfig
br0: flags=67<UP,BROADCAST,RUNNING> mtu 1500
inet6 fe80::f488:54ff:fe9e:5d98 prefixlen 64 scopeid 0x20<link>
ether 5e:87:fd:fe:3a:41 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 11 bytes 866 (866.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

查看网桥

5、节点1节点2操作:将gre0虚拟接口加入网桥br0,并设置接口类型和对端IP地址(远程IP指定对端)

注:如果多台主机 需要配置多条策略。由于是点对点通信所以需要创建新的gre端口。

ovs-vsctl add-port br0 gre0 -- set Interface gre0 type=gre options:remote_ip=192.168.1.77
# 命令解析
ovs-vsctl add port 已创建网桥名称 端口名称 -- set Interface 端口名称 type=隧道类型 options:remote_ip=指定点对点的对端节点IP

6、节点1节点2操作:添加docker0网桥到OVS网桥br0

brctl addif docker0 br0
命令:ovs-vsctl show

3a4acf8f-1db3-4069-8fd8-8dd8e883e914
# 网桥名称
Bridge "br0"
# 端口名称
Port "br0"
# 类型
Interface "br0"
type: internal
Port "gre0"
Interface "gre0"
# 隧道类型
type: gre
# 对端点对点远程地址
options: {remote_ip="192.168.1.77"}
# 版本号
ovs_version: "2.0.0"

查看网桥信息

7、节点1节点2操作:添加静态路由

ip route add 172.17.0.0/16 dev docker0
[root@weave02 ~]# route
Destination Gateway Genmask Flags Metric Ref Use Iface
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0

查看路由表

8、节点1节点2操作:验证互通:相互ping测试

docker run -it busybox

Docker OpenvSwitch 应用部署的更多相关文章

  1. qemu-kvm和openvswitch安装部署-qemu-kvm和openvswitch原型环境部署和基本测试 (1)

    qemu-kvm和openvswitch安装部署 本文包含两个部分: qemu-kvm的安装部署 openvswitch的安装部署 参考文档: kvm官网:http://www.linux-kvm.o ...

  2. 将你的前端应用打包成docker镜像并部署到服务器?仅需一个脚本搞定

    1.前言 前段时间,自己搞了个阿里云的服务器.想自己在上面折腾,但是不想因为自己瞎折腾而污染了现有的环境.毕竟,现在的阿里云已经没有免费的快照服务了.要想还原的话,最简单的办法就是重新装系统.而一旦重 ...

  3. 基于Jenkins,docker实现自动化部署(持续交互)

      前言 随着业务的增长,需求也开始增多,每个需求的大小,开发周期,发布时间都不一致.基于微服务的系统架构,功能的叠加,对应的服务的数量也在增加,大小功能的快速迭代,更加要求部署的快速化,智能化.因此 ...

  4. Docker Compose 一键部署LNMP

    Docker Compose 一键部署LNMP 目录结构 [root@localhost ~]# tree compose_lnmp/ compose_lnmp/ ├── docker-compose ...

  5. Docker Compose 一键部署Nginx代理Tomcat集群

    Docker Compose 一键部署Nginx代理Tomcat集群 目录结构 [root@localhost ~]# tree compose_nginx_tomcat/ compose_nginx ...

  6. Docker Compose 一键部署多节点爬虫程序

    Docker Compose 一键部署多节点爬虫程序 目录结构 [root@localhost ~]# tree compose_crawler/ compose_crawler/ ├── cento ...

  7. Docker Overlay 应用部署

    Docker Overlay 部署条件 要想使用Docker原生Overlay网络,需要满足以下任意条件: 1.Docker运行在Swarm模式 2.使用键值存储的Docker主机集群 本次部署使用键 ...

  8. Docker Macvlan 应用部署

    Docker Macvlan 应用部署 MacVLAN有两种桥接模式 Bridge模式:不创建子接口的情况下直接去桥接物理接口.直接桥接到与宿主级的同网段. VLAN Bridge模式:创建子接口去桥 ...

  9. Docker OpenvSwitch 介绍 or 工作原理

    Docker OpenvSwitch Network 介绍 什么是OpenVSwich OpenvSwich Network:属于第三方网络项目,可以理解为是一个标准的交换机协议. OpenvSwic ...

随机推荐

  1. spark连数据库

    DataFrame提供了一条联结所有主流数据源并自动转化为可并行处理格式的渠道,通过它Spark能取悦大数据生态链上的所有玩家,无论是善用R的数据科学家,惯用SQL的商业分析师,还是在意效率和实时性的 ...

  2. 线程的条件Condiition

    条件Condition相当于给锁造钥匙,但是这钥匙是一次性的.一个线程拿到钥匙进去,出来之后钥匙没有归还,而是没了. 如下代码: from threading import Thread, Condi ...

  3. python中print(obj) 与sys.stdout.write()的区别

    print(obj) 其实等价于sys.stdout.write(obj+\n),而\r表示回到行首,所以需要输出进度条时可以用以下代码 rate = float(has_sent) / float( ...

  4. 合并两个git仓库并保留提交记录

    case如下: 有2个git仓库:repo1.repo2: 想将repo1中的文件移入repo2: repo1的历史日志要保留:   1 2 # 1.将repo1作为远程仓库,添加到repo2中,设置 ...

  5. oracle 11g R2(静默安装)

    参考博客地址:https://blog.csdn.net/jameshadoop/article/details/48223645 https://www.abcdocker.com/abcdocke ...

  6. js判断PC端还是移动端

    function goPAGE() { if ((navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobi ...

  7. Python学习之旅(十九)

    Python基础知识(18):面向对象高级编程(Ⅰ) 使用__slots__:限制实例的属性,只允许实例对类添加某些属性 (1)实例可以随意添加属性 (2)某个实例绑定的方法对另一个实例不起作用 (3 ...

  8. Access无法启动应用程序,工作组信息文件丢失,或是已被其他用户已独占方式打开

    使用SQL Server导入有密码的Access数据库内容,连接时出现错误提示: Access无法启动应用程序,工作组信息文件丢失,或是已被其他用户已独占方式打开 参考百度信息,可以点上图中的高级,在 ...

  9. 解锁scott用户

    具体操作步骤如下: C:> sqlplus 请输入用户名:sys 输入口令:sys as sysdba //注意:在口令这里输入的密码后面必须要跟上 as sysdba 才可以. SQL> ...

  10. 怎样把Word文档导入Excel表格

    Word是现在办公中的基础文件格式了,很多的内容我们都通过Word来进行编辑,那么当我们需要将Word文档里的信息导入到Excel里面的时候,我们应该怎样做呢?下面我们就一起来看一下吧. 操作步骤: ...