20170904多个docker容器中同时搭建多套ceph集群(一)---docker网络模式的了解

来源:互联网 发布:mac怎么隐藏桌面图标 编辑:程序博客网 时间:2024/06/05 15:01

多个docker容器中同时搭建多套ceph集群(一)---docker网络模式的了解

1、软件安装

使用brctl show指令需要安装 yum install bridge-utils

使用ifconfig、ip route 、ip route add 等指令  yum install net-tools -y


2、使用默认网桥docker0以bridge模式跑一个容器

备注:bridge模式可以与host模式共存

   当创建一个 Docker 容器的时候,同时会创建了一对 veth pair 接口(当数据包发送到一个接口时,另外一个接口也可以收到相同的数据包)。这对接口一端在容器内,即 eth0 ;另一端在本地并被挂载到docker0 网桥,名称以 veth 开头(例如 vethAQI2QT )。通过这种方式,主机可以跟容器通信,容器之间也可以相互通信。Docker 就创建了在主机和所有容器之间一个虚拟共享网络.

容器要想访问外部网络,需要本地系统的转发支持。在Linux 系统中,检查转发是否打开。
[root@master ~]# sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1
如果为 0,说明没有开启转发,则需要手动打开。
$sysctl -w net.ipv4.ip_forward=1

vim  /root/tmp.sh

输入/bin/bash保存退出.start-ceph.sh是Dockerfile文件中指定的文件名称

docker run -itd --net=bridge --privileged=true -v /root/tmp.sh:/root/start-ceph.sh --name lwlceph ceph/centos6:latest

如果不指定脚本,也可以直接这样启动

docker run -itd --net=bridge --privileged=true  /bin/bash --name lwlceph ceph/centos6:latest

其中ceph/centos6:latests是镜像名称,这种方式docker会自动使用默认的虚拟镜像docker0,它的IP地址可通过ifconfig进行查询,一般是172.17.0.1,通过bridge模式生成的容器的ip范围在172.17.0.2---172.17.0.16

这种方式不能在创建容器的时候使用--ip的指令指定ip地址,但是建立好容器之后可以进入容器后修改容器的i

docker  ps -a docker attach lwlceph

ifconfig查询其中eth0的ip

ifconfig eth0 172.17.0.10/16   修改ip为172.17.0.10,指定掩码为255.255.0.0


route -n  查看路由表信息

route add default gw *.*.*.*添加默认路由

route del 


3、自建一个网桥docker-br0,可以跑容器的时候指定ip

多台机器上docker容器互通需要添加对方机器中docker的网段,所以需要自己额外创建不同网段的网桥

多台机器上docker容器互通

环境:

服务器id

容器分配网段

启动容器的id

10.3.191.10

172.172.0.0/24

172.172.0.10

10.3.191.11

172.172.1.0/24

172.172.1.10

10.3.191.12

172.172.2.0/24

172.172.2.10

 

l  在第一台10.3.191.10

创建网桥

docker networkcreate --subnet=172.172.0.0/24 docker-br0

指定IP 运行容器

docker run -itd--net  docker-br0 --ip 172.172.0.10 --name dockervr0 -v/root/tmp.sh:/root/start-ceph.sh ceph/centos6:latest

l  在第二台10.3.191.11

创建网桥

docker networkcreate --subnet=172.172.1.0/24 docker-br0

dockernetwork rm docker-br0 指令可以移除网桥

指定IP 运行容器

docker run -itd--net  docker-br0 --ip 172.172.1.10 --name dockervr0 -v/root/tmp.sh:/root/start-ceph.sh ceph/centos6:latest

l  在第三台10.3.191.12

创建网桥

docker networkcreate --subnet=172.172.2.0/24 docker-br0

指定IP 运行容器

docker run -itd--net  docker-br0 --ip 172.172.2.10 --name dockervr0 -v/root/tmp.sh:/root/start-ceph.sh ceph/centos6:latest

l  在第一台10.3.191.10

添加路由规则

ip route add 对方容器所在的ip网段/子网掩码 via对方虚拟机ip dev 通过哪个网卡通信

如: ip route add 172.172.1.0/24 via 10.3.191.11dev enp1s0f0

     ip route add 172.172.2.0/24 via 10.3.191.12dev enp1s0f0

添加完成之后,可以使用 route命令 查看添加之后的规则,也可以使用

ip route del172.172.1.0/24 via 10.3.191.11 dev enp1s0f0 

ip route del172.172.2.0/24 via 10.3.191.12 dev enp1s0f0

移除路由规则

l  在第二台10.3.191.11

添加路由规则

ip route add 对方容器所在的ip网段/子网掩码 via对方虚拟机ip dev 通过哪个网卡通信

如: ip route add 172.172.0.0/24 via 10.3.191.10 dev enp1s0f0

     ip route add 172.172.2.0/24 via 10.3.191.12 dev enp1s0f0

添加完成之后,可以使用 route命令 查看添加之后的规则,也可以使用

ip route del172.172.0.0/24 via 10.3.191.10 dev enp1s0f0 

ip route del172.172.2.0/24 via 10.3.191.12 dev enp1s0f0

移除路由规则

l  在第二台10.3.191.11

添加路由规则

ip route add 对方容器所在的ip网段/子网掩码 via对方虚拟机ip dev 通过哪个网卡通信

如: ip route add 172.172.0.0/24 via 10.3.191.10devenp1s0f0

     ip route add 172.172.1.0/24 via 10.3.191.11dev enp1s0f0

添加完成之后,可以使用 route命令 查看添加之后的规则,也可以使用

ip route del172.172.0.0/24 via 10.3.191.10 dev enp1s0f0 

ip route del172.172.1.0/24 via 10.3.191.11 dev enp1s0f0

移除路由规则

PS:通过ip route可以查看路由表信息,全部步骤准备完成后,此时进入相应的容器则可以ping通其他容器的ip地址了。

以自建的docker-br0为网桥,指定IP,创建容器

在第一台机器10.3.191.10

docker run -itd--net  docker-br0 --ip 172.172.0.10 --name dockervr0 -v /root/tmp.sh:/root/start-ceph.sh ceph/centos6:latest

在第二台机器10.3.191.11

docker run -itd--net  docker-br0 --ip 172.172.1.10 --name dockervr0 -v /root/tmp.sh:/root/start-ceph.sh ceph/centos6:latest

在第三台机器10.3.191.10

docker run -itd--net  docker-br0 --ip 172.172.2.10 --name dockervr0 -v /root/tmp.sh:/root/start-ceph.sh ceph/centos6:latest

在这三台机器中容器中,ping其他机器容器的IP就可以ping通了,实现跨机器的容器网络共通.






原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 皮肤粗糙暗黄毛孔大怎么办 毛孔粗大还有痘印怎么办 高一的不爱上数学怎么办 监狱系统需要体测怀孕怎么办 货运从业资格证年审过期了怎么办 科三线路记不住怎么办? 汽车大灯里面起雾水怎么办 二级重伤对方法庭拒绝赔偿怎么办? 在麦当劳工作收到假钞怎么办 东西湖小学分配太远怎么办 农行k令过期了怎么办 穿军训的鞋捂坏了怎么办 联通手机号销户话费怎么办 建行员工所持有的原始股怎么办 孕妇喝了午时茶怎么办 苹果6id被锁了怎么办 苹果手机app密码忘了怎么办 好哥们借钱手上没钱怎么办 武汉ca证书u盾怎么办 判了刑发现还有漏案没判怎么办 高铁旅客漏乘怎么办 水库里面要养殖小龙虾最好怎么办 点读机的笔丢了怎么办 皮肤晒的很黑怎么办 电脑wifi连接受限制怎么办 高中孩子班管理松怎么办 脱式计算有余数怎么办 手机被别人绑定微信怎么办 饿了么入职查不到学历怎么办 高中没考上家人让打工怎么办 一建证书丢了怎么办 自考大专证书丢了怎么办 护士学分卡丢了怎么办 公司电脑只能用内网怎么办 遇见素质低的人怎么办 被素质低的人骂怎么办 对素质差的人怎么办 碰到素质低的人怎么办 和韩国人结婚后工作怎么办 大连明珠卡坏了怎么办 护肤品酒精含量太高怎么办