一、配置防火墙
CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙。
1、关闭firewall:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
2、安装iptables防火墙
安装iptables
yum install iptables-services
编辑防火墙配置文件
vi /etc/sysconfig/iptables
3、开启宿主机之间的端口
TCP端口2377集群管理端口
TCP与UDP端口7946节点之间通讯端口
TCP与UDP端口4789 overlay网络通讯端口
-A INPUT -p tcp -m state --state NEW -m tcp --dport 2377 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp –dport 7946 -j ACCEPT
-A INPUT -p udp -m state --state NEW -m udp --dport 7946 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp –dport 4789 -j ACCEPT
-A INPUT -p udp -m state --state NEW -m udp --dport 4789 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9080 -j ACCEPT
4、重启防火墙使配置生效
systemctl restart iptables.service
设置防火墙开机启动
systemctl enable iptables.service
二、关闭selinux
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
setenforce 0
三、修改主机名
hostnamectl set-hostname
创建manager node:
docker swarm init --advertise-addr
注意:为了swarm集群的高可用,避免单点故障可以多建立几个manager节点
创建worker node:
Docker swarm join –join-token
需要在manager node上做以下操作
查看集群节点列表:
docker node ls
查看工作节点加入token:
docker swarm join-token worker
查看管理节点加入token:
docker swarm join-token manager
查看docker集群节点详细信息:
docker node inspect
更改节点的可用性:
设置节点不可用:
docker node update --availability drain
(如果不想把任务分配到manager节点可用设置为drain)
设置节点可用:
docker node update --availability active
节点升级worker to manager:
docker node promote
节点降级manager to worker:
docker node demote
退出集群:
worker node 上操作
docker swarm leave
manager node 上操作(整个集群节点都会被清除)
docker swarm leave --force
移除节点信息:
docker node rm