千家信息网

DDBMS中如何冗余docker网络

发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,小编给大家分享一下DDBMS中如何冗余docker网络,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!环境准备:vmware
千家信息网最后更新 2025年12月01日DDBMS中如何冗余docker网络

小编给大家分享一下DDBMS中如何冗余docker网络,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

环境准备:

vmware中配置四台ubuntu server 14.04(你可以只安装一个系统,使用克隆功能克隆出另外三台ubuntu),配置好SSH

每台机器配置两个网卡,像openstack一样,分Internal和External IP。这里我让eth0(NAT)作为 External,eth2(host-only)作为Internal。

拓扑图如下:

安装OVS:

具体安装教程参考这里:http://www.sdnlab.com/3166.html

附上我的OVS启动脚本:

ovs_launch#!/bin/bash#launch the ovsovsdb-server -v --remote=punix:/usr/local/var/run/openvswitch/db.sock --remote=db:Open_vSwitch,Open_vSwitch,manager_options --private-key=db:Open_vSwitch,SSL,private_key --certificate=db:Open_vSwitch,SSL,certificate --bootstrap-ca-cert=db:Open_vSwitch,SSL,ca_cert --pidfile --detach#init the databaseovs-vsctl --no-wait init#launch the main processovs-vswitchd --pidfile --detach#print the version infomationovs-vsctl --versionecho echo 'OpenVswitch have been launched successfully!'

保存并放置该脚本

chmod +x ovs_launchmv ovs_launch /usr/local/bin

安装pipework工具:

git clone https://github.com/jpetazzo/pipeworkcp ~/pipework/pipework /usr/local/bin/

安装docker最新的版本:https://docs.docker.com/installation/ubuntulinux/

pull一个镜像:

docker pull ubuntu

创建挂载容器用的br0和br1网桥:

brctl addbr br0ip link set dev br0 upip addr add 192.168.2.1/24 dev br0brctl addbr br1ip link set dev br1 upip addr add 192.168.3.1/24 dev br1

在每台host上配置OVS(每次开机先执行ovs_launch):

ovs-vsctl add-br ovs0ovs-vsctl set bridge ovs0 stp_enable=trueovs-vsctl add-port ovs0 br0ovs-vsctl add-port ovs0 br1

创建host1tohost2的vxlan或gre隧道(这里我用的是gre):

ovs-vsctl add-port ovs0 gre0 -- set interface gre0 type=gre options:remote_ip=10.20.10.71

创建host2tohost1的gre隧道:

ovs-vsctl add-port ovs0 gre0 -- set interface gre0 type=gre options:remote_ip=10.20.10.70

创建host2tohost3的隧道:

ovs-vsctl add-port ovs0 gre1 -- set interface gre1 type=gre options:remote_ip=10.20.10.72

创建host3tohost2的隧道:

ovs-vsctl add-port ovs0 gre1 -- set interface gre1 type=gre options:remote_ip=10.20.10.71

创建host3tohost4的隧道:

ovs-vsctl add-port ovs0 gre2 -- set interface gre2 type=gre options:remote_ip=10.20.10.73

创建host4tohost3的隧道:

ovs-vsctl add-port ovs0 gre2 -- set interface gre2 type=gre options:remote_ip=10.20.10.72

创建host4tohost1的隧道:

ovs-vsctl add-port ovs0 gre3 -- set interface gre3 type=gre options:remote_ip=10.20.10.70

创建host1tohost4的隧道:

ovs-vsctl add-port ovs0 gre3 -- set interface gre3 type=gre options:remote_ip=10.20.10.73

(注意,两台主机间的互通隧道名相同,且每个OVS上不能出现重名的隧道)

启动容器并测试:

host1:

docker run -itd --name=test1 ubuntupipework br0 test1 192.168.2.11/24

host2:

docker run -itd --name=test1 ubuntupipework br0 test1 192.168.2.12/24

host3:

docker run -itd --name=test1 ubuntupipework br1 test1 192.168.3.11/24

host4:

docker run -itd --name=test1 ubuntupipework br1 test1 192.168.3.12/24

进入容器进行测试,你会发现,无论哪个容器,只要挂在同一个br网桥(同一网段),它们都是互通的。当然,如果你用192.168.2.11 ping 192.168.3.11那是绝对不行的(除非你不把br0和br1挂在ovs0上,此时route会进行路由,这种情况下可以互通)。

此时,你就建立了一个冗余的docker容器网络。

以上是"DDBMS中如何冗余docker网络"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

隧道 容器 配置 冗余 网络 篇文章 内容 脚本 网桥 参考 测试 不行 相同 不怎么 两个 主机 功能 大部分 工具 情况 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 朝阳区正规软件开发设计专业服务 连云港江苏大容量服务器直销 长宁区市场软件开发报价方案 畅博软件开发和游龙 互联网银行与金融科技的关系 dell服务器回收 郴州软件开发 网络安全基础性作用靠谁发挥 ibm服务器怎么进管理软件 嵌入式软件开发师怎么样 数据库中专辑导航 我的世界纯生存服务器最新推荐 网络安全活动总结图片 网络安全法 使用个人信息 通信网络技术试题 数据库创建用户无法登录 大众宾利兰博基尼elsa数据库 我的世界服务器好看的主城图片 Java软件开发薪资组成 外国处理垃圾方式数据库 汽车网络技术用什么编程 江北网络技术公司 服务器硬盘 分区 数据库运维技术指标 yii 添加数据库 房山区智能网络技术服务保障 8年级网络安全及防护措施 计算机及其网络技术 惠普服务器异常断电以后无法启动 西门子子贴片机数据库密码
0