Docker容器_Swarm集群构建_学习记录 (3)

Docker容器_学习记录 (3)

swarm集群构建:

官方文档:

https://docs.docker.com/swarm/install-manual/#step-5-create-swarm-cluster  

环境:centos7
A: 192.168.183.129(node01)
B: 192.168.183.130(node02)
C: 192.168.183.128(mg01)


1.  A/B/C:
#yum install docker

编辑配置文件
Edit /etc/docker/daemon.json. Create it if it does not exist. Assuming the file was empty, its contents should be:
{
  "hosts": ["tcp://0.0.0.0:2375", "unix:///var/run/docker.sock"]
}

#systemctl restart docker

2. 分别给A、B节点安装swarm
#docker pull swarm

 

3. C节点:
#docker pull progrium/consul
#docker run -d -p 8500:8500 --name=consul progrium/consul -server -bootstrap -advertise=<consul0_ip>
#docker run -d -p 8500:8500 --name=consul progrium/consul -server -bootstrap -advertise=192.168.183.128

为保证服务器或docker服务重启后容器能自动启动,建议使用如下命令:
#docker run -d --restart unless-stopped -p 8500:8500 --name=consul progrium/consul -server -bootstrap -advertise=192.168.183.128


5. create swarm cluster:


#docker run -d -p 4000:4000 swarm manage -H :4000 --replication --advertise <manager0_ip>:4000 consul://<consul0_ip>:8500

#docker run -d -p 4000:4000 swarm manage -H :4000 --replication --advertise 192.168.183.128:4000 consul://192.168.183.128:8500

#docker run -d  --restart unless-stopped -p 4000:4000 swarm manage -H :4000 --replication --advertise 192.168.183.128:4000 consul://192.168.183.128:8500


6. Connect to node0 and node1 in turn and join them to the cluster
node01 
#docker run -d swarm join --advertise=192.168.183.130:2375 consul://192.168.183.128:8500

#docker run -d  --restart unless-stopped swarm join --advertise=192.168.183.130:2375 consul://192.168.183.128:8500

node02 
#docker run -d swarm join --advertise=192.168.183.129:2375 consul://192.168.183.128:8500

#docker run -d  --restart unless-stopped swarm join --advertise=192.168.183.129:2375 consul://192.168.183.128:8500

Start the swarm manager
#docker swarm init 然后在manager节点运行提示
然后根据提示在其他节点内执行

在其他节点内执行如下:

(注意)如果出现下列错误:

docker swarm:Error response from daemon: rpc error: code = Unavailable desc = grpc: the connection is unavailable

可能是防火墙没关的问题。

#docker node ls (检查节点)

#docker service create --replicas 2 -p 81:80 --name httpd docker.io/httpd:latest

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值