您的位置:首页 > 运维架构 > Docker

docker swarm 集群创建

2016-10-28 17:21 597 查看
一、 环境准备
1. 准备3台虚拟机,IP和主机名设置如下
192.168.71.137
manager1
192.168.71.141
worker1
192.168.71.140
worker2

2. 系统和软件版本
系统版本
[root@manager1 ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
内核版本
[root@manager1 ~]# uname -r
3.10.0-327.36.1.el7.x86_64
docker 版本
[root@manager1 ~]# docker -v
Docker version 1.12.2, build bb80604

3. 防火墙开通相关端口
放行一下端口:
TCP 2377 集群管理通信所需
TCP and UDP 7946 节点间通信所需
TCP and UDP 4789 overlay 网络所需
命令如下:
firewall-cmd --add-port=2377/tcp
firewall-cmd --add-port=2377/tcp --permanent
firewall-cmd --add-port=7946/tcp --add-port 7946/udp
firewall-cmd --add-port=7946/tcp --add-port 7946/udp --permanent
firewall-cmd --add-port=4789/tcp --add-port 4789/udp
firewall-cmd --add-port=4789/tcp --add-port 4789/udp --permanent

二、 swarm集群创建
1. 创建swarm集群
初始化命令如下,我这里用192.168.71.137为manager
docker swarm init --advertise-addr <MANAGER-IP>
[root@manager1 ~]# docker swarm init --advertise-addr 192.168.71.137
Swarm initialized: current node (8d1kzvnv99q2gy82ulrklezom) is now a manager.

To add a worker to this swarm, run the following command:

docker swarm join \
--token SWMTKN-1-12k7eupx7wbuhdhyb1qo2vu8q49x8k4uq0d0t62ksb8irlylex-6fz55egsirm1l5076pin7ksc6 \
192.168.71.137:2377

To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

根据以上提示,可知节点加入集群需执行以上返回的那条命令。

查看docker info,显示docker工作在swarm模式
[root@manager1 ~]# docker info
...
Swarm: active
...
查看管理节点已启动起来一个节点
[root@manager1 ~]# docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
8d1kzvnv99q2gy82ulrklezom * manager1 Ready Active Leader

在work1 、worker2上执行加入集群的命令
[root@worker1 ~]# docker swarm join \
> --token SWMTKN-1-12k7eupx7wbuhdhyb1qo2vu8q49x8k4uq0d0t62ksb8irlylex-6fz55egsirm1l5076pin7ksc6 \
> 192.168.71.137:2377
This node joined a swarm as a worker.

[root@worker2 ~]# docker swarm join \
> --token SWMTKN-1-12k7eupx7wbuhdhyb1qo2vu8q49x8k4uq0d0t62ksb8irlylex-6fz55egsirm1l5076pin7ksc6 \
> 192.168.71.137:2377
This node joined a swarm as a worker.

如果上面的命令不记得了,可以在manager1节点上用以下命令查看
[root@manager1 ~]# docker swarm join-token worker
To add a worker to this swarm, run the following command:

docker swarm join \
--token SWMTKN-1-12k7eupx7wbuhdhyb1qo2vu8q49x8k4uq0d0t62ksb8irlylex-6fz55egsirm1l5076pin7ksc6 \
192.168.71.137:2377

在manager1节点上再次查看node列表信息
[root@manager1 ~]# docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
8d1kzvnv99q2gy82ulrklezom * manager1 Ready Active Leader
8iwemhb8ux2fedbdn12c9igii worker2 Ready Active
bdmj4stzpnwmkovonnxj6u4q9 worker1 Ready Active
说明集群已创建完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  虚拟机 docker swarm