Docker创建Docker Swarm集群节点


预置条件

一、配置防火墙

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 <hostname>
创建集群节点

创建manager node:

docker swarm init --advertise-addr <MANAGER-IP>

 

注意:为了swarm集群的高可用,避免单点故障可以多建立几个manager节点

创建worker node:

Docker swarm join –join-token <MANAGER-IP>:<PROT>

 
节点操作相关命令

需要在manager node上做以下操作

查看集群节点列表:

docker node ls

 

查看工作节点加入token:

docker swarm join-token worker

查看管理节点加入token:

docker swarm join-token manager

查看docker集群节点详细信息:

docker node inspect <NODE-ID> [--pretty]

更改节点的可用性:

设置节点不可用:

docker node update --availability drain <NODE-ID>/<hostname>

(如果不想把任务分配到manager节点可用设置为drain)

设置节点可用:

docker node update --availability active <NODE-ID>/<hostname>

节点升级worker to manager:

docker node promote <NODE-ID>/<hostname>

节点降级manager to worker:

docker node demote <NODE-ID>/<hostname>

退出集群:

worker node 上操作

docker swarm leave

manager node 上操作(整个集群节点都会被清除)

docker swarm leave --force

 

       移除节点信息:

docker node rm <NODE-ID>/<hostname>
————————————————
版权声明:本文为CSDN博主「Tomorrow YE」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_29301417/article/details/75643216

posted @   lclc  阅读(307)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2020-03-16 利用Windows自带性能计数器分析软件产品的性能瓶颈(转)
点击右上角即可分享
微信分享提示