Docker-swarm集群搭建
服务器准备
主机名 |
IP |
主机配置 |
master |
10.10.10.3 |
2c2g |
node01 |
10.10.10.4 |
2c2g |
node02 |
10.10.10.5 |
2c2g |
主机名配置
1 2 3 4 5 6
| [root@master ~]# hostnamectl set-hostname master # node01 [root@node01 ~]
[root@node02 ~]
|
本地解析
1 2 3 4 5 6
| # 所有主机都要配置 cat >> /etc/hosts << EOF 10.10.10.3 master 10.10.10.4 node01 10.10.10.5 node02 EOF
|
安装docker
1 2 3 4 5 6 7
|
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum -y install docker-ce
|
1 2
| [root@master ~]# systemctl start docker && systemctl enable docker
|
初始化swarm
把第一台机器master充当管理节点,第二台node01 、第三台node02作为工作节点
1 2 3
| 如果你的 Docker 主机有多个网卡,拥有多个 IP,必须使用 –advertise-addr 指定 IP。 执行 docker swarm init 命令的节点自动成为管理节点。 命令 docker info 可以查看 swarm 集群状态。
|
工作节点加入集群
1 2 3 4
| # node01节点 [root@node01 ~]# docker swarm join --token SWMTKN-1-38vbfidgbpkdvwgpx2fzu1jwqtzlnlpfr0p73hcxfs3vwabl98-eenxcbwb3rd4633iw2vp4qwa1 10.10.10.3:2377 #node02节点 [root@node02 ~]# docker swarm join --token SWMTKN-1-38vbfidgbpkdvwgpx2fzu1jwqtzlnlpfr0p73hcxfs3vwabl98-eenxcbwb3rd4633iw2vp4qwa1 10.10.10.3:2377
|
查询节点状态
1
| [root@master ~]# docker node ls
|
升级为高可用
1 2 3
| [root@master ~]# docker node promote node01 [root@master ~]# docker node promote node02
|
1 2 3 4 5 6
| [root@master ~]# docker node ls
|
删除节点
1 2 3 4 5
| [root@master ~]# docker node update --role worker node01
[root@master ~]# docker node rm node1
|
重新加入节点
1 2
| [root@master ~]# docker node promote node01
|