首页 > 其他分享 >Swarm集群搭建(6)

Swarm集群搭建(6)

时间:2022-11-22 15:16:14浏览次数:62  
标签:node swarm -- 192.168 Swarm 集群 docker 节点 搭建

Swarm集群搭建

官方文档:https://docs.docker.com/engine/swarm/

# 管理配置文件
docker config
    # 查看已创建配置文件
    - docker config ls
    # 将已有配置文件添加到docker配置文件中
    - docker config create docker 配置文件名 本地配置文件
 # 管理swarm节点
docker node
    # 查看集群中的节点
    - docker node ls
    # 将manager角色降级为worker
    - docker node demote 主机名
    # 将worker角色升级为manager
    - docker node promote 主机名
    # 查看节点的详细信息,默认json格式
    - docker node inspect 主机名
          # 查看节点信息平铺格式
          - docker node inspect --pretty 主机名
    # 查看运行的一个或多个及节点任务数,默认当前节点
    - docker node ps
    # 从swarm中删除一个节点
    - docker node rm 主机名
    # 更新一个节点
    - docker node update
          # 对节点设置状态(“active”正常|“pause”暂停|“drain”排除自身work任务)
          - docker node update --availability
 # 管理敏感数据存储
docker secret
# 服务栈,栈的形式,一般作为编排使用,格式与docker compose相同。
docker stack
    # 通过.yml文件指令部署
    - docker stack deploy -c 文件名.yml 编排服务名
    # 查看编排服务
    - docker stack ls

工作原理

Docker Engine 1.12 introduces swarm mode that enables you to create a cluster of one or more Docker Engines called a swarm. A swarm consists of one or more nodes: physical or virtual machines running Docker Engine 1.12 or later in swarm mode.
There are two types of nodes: managers and workers.
Docker 引擎 1.12 引入了群模式,使您能够创建一个或多个 Docker 引擎(称为群)的集群。群由一个或多个节点组成:在群模式下运行 Docker 引擎 1.12 或更高版本的物理机或虚拟机。

image.png
If you haven’t already, read through the swarm mode overview and key concepts.

进行搭建:

$ docker swarm --help
Usage: docker swarm COMMAND
Manage Swarm
Commands:
ca # Display and rotate the root CA
init # 初始化一个Swarm
join # 加入一个集群作为一个节点 和/或 管理者
join-token # 管理生成的令牌
leave # 离开swarm
unlock # 解锁swarm
unlock-key # 解锁密钥管理
update # 更新swarm

docker swarm init --help
Initialize a swarm

Options:
--advertise-addr string Advertised address (format: <ip|interface>[:port])
--autolock Enable manager autolocking (requiring an unlock key to start a
stopped manager)
--availability string Availability of the node ("active"|"pause"|"drain") (default "active")
--cert-expiry duration Validity period for node certificates (ns|us|ms|s|m|h) (default
2160h0m0s)
--data-path-addr string Address or interface to use for data path traffic (format:
<ip|interface>)
--data-path-port uint32 Port number to use for data path traffic (1024 - 49151). If no
value is set or is set to 0, the default port (4789) is used.
--default-addr-pool ipNetSlice default address pool in CIDR format (default [])
--default-addr-pool-mask-length uint32 default address pool subnet mask length (default 24)
--dispatcher-heartbeat duration Dispatcher heartbeat period (ns|us|ms|s|m|h) (default 5s)
--external-ca external-ca Specifications of one or more certificate signing endpoints
--force-new-cluster Force create a new cluster from current state
--listen-addr node-addr Listen address (format: <ip|interface>[:port]) (default 0.0.0.0:2377)
--max-snapshots uint Number of additional Raft snapshots to retain
--snapshot-interval uint Number of log entries between Raft snapshots (default 10000)
--task-history-limit int Task history retention limit (default 5)

1.设置主要节点

$docker swarm init --advertise-addr 192.168.64.134

docker swarm init --advertise-addr 192.168.64.134
Swarm初始化: 当前节点(...)现在是一个manager(管理节点)。
Swarm initialized: current node (n2ws0fm7fvsiniuo9wjmq3dfh) is now a manager.

翻译:要添加一个worker(工作节点)到这个swarm,运行以下命令(令牌)
To add a worker to this swarm, run the following command:

docker swarm join --token SWMTKN-1-56fs1oaww5jkhsq7f3v2f3fazgm1jgxrvjc1n4cttab8v6bmr8-04efiil88xkppw186vk82y5f1 192.168.64.134:2377

翻译:要添加一个swarm(管理节点)到swarm,运行'docker swarm join-token manager',
To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

2.生成令牌(管理生成的令牌)

生成管理节点的令牌
docker swarm join-token manager

生成工作节点的令牌
docker swarm join-token worker

docker swarm join-token manager
To add a manager to this swarm, run the following command:

【添加一个管理节点的命令】
docker swarm join --token SWMTKN-1-56fs1oaww5jkhsq7f3v2f3fazgm1jgxrvjc1n4cttab8v6bmr8-4bocoqdhfypuppql3yqxt0u2p 192.168.64.134:2377

[root@192 ~]# docker swarm join-token worker
To add a worker to this swarm, run the following command:
【添加一个工作节点的命令】
docker swarm join --token SWMTKN-1-56fs1oaww5jkhsq7f3v2f3fazgm1jgxrvjc1n4cttab8v6bmr8-04efiil88xkppw186vk82y5f1 192.168.64.134:2377

将服务器(192.168.64.135)加入工作节点(在192.168.64.135运行命令)
:::tips
【添加一个工作节点的命令】
$ docker swarm join --token SWMTKN-1-56fs1oaww5jkhsq7f3v2f3fazgm1jgxrvjc1n4cttab8v6bmr8-04efiil88xkppw186vk82y5f1 192.168.64.134:2377

docker swarm join --token SWMTKN-1-56fs1oaww5jkhsq7f3v2f3fazgm1jgxrvjc1n4cttab8v6bmr8-04efiil88xkppw186vk82y5f1 192.168.64.134:2377
This node joined a swarm as a worker.# 成功变为工作节点

4、查看所有节点信息

docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSION
n2ws0fm7fvsiniuo9wjmq3dfh * 192.168.64.134 Ready Active Leader 20.10.12
y1clyylemoiqbrquha4hpgdg7 192.168.64.135 Ready Active 20.10.12

6、移除节点

从swarm中删除一个节点 | -f 删除多个节点
$ docker node rm 节点id

7、将服务器(192.168.64.137)加入管理节点
这里manager加不进去的话应该也是要防火墙开放2377端口或关闭防火墙

永久关闭防火墙
$ systemctl disable firewalld
$ systemctl stop firewalld

停止并禁用开机启动
$ systemctl disable firewalld

【添加一个管理节点的命令】
docker swarm join --token SWMTKN-1-56fs1oaww5jkhsq7f3v2f3fazgm1jgxrvjc1n4cttab8v6bmr8-4bocoqdhfypuppql3yqxt0u2p 192.168.64.134:2377

docker swarm join --token SWMTKN-1-56fs1oaww5jkhsq7f3v2f3fazgm1jgxrvjc1n4cttab8v6bmr8-4bocoqdhfypuppql3yqxt0u2p 192.168.64.134:2377
This node joined a swarm as a manager. # 成功进入管理节点

8、查看所有节点信息

docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSION
n2ws0fm7fvsiniuo9wjmq3dfh * 192.168.64.134 Ready Active Leader 20.10.12
y1clyylemoiqbrquha4hpgdg7 192.168.64.135 Ready Active 20.10.12
29g0dvdvrtajsxr5d6lgutddr 192.168.64.136 Ready Active 20.10.12
mbtufs92q1q1kbsrdkfh3gx7s 192.168.64.137 Ready Active Reachable 20.10.12

标签:node,swarm,--,192.168,Swarm,集群,docker,节点,搭建
From: https://www.cnblogs.com/yutoujun/p/16915182.html

相关文章

  • Swarm集群弹性创建服务(8)
    Swarm集群弹性创建服务扩缩容功能,创建服务,动态扩展服务,更新服务,日志,灰度发布(更新网站(服务)时依旧提出服务,不挂404)功能:扩缩容功能(扩容:增加容器,缩容:减少容器),灰度发布目的:......
  • 搭建IIS网站后,点击浏览地址,报403错误
    点击左侧的浏览地址,报右侧的错误,可将目录浏览进行启用双击进去,进行启用即可  ......
  • LAB-17:集群故障排查
    LAB-17:集群故障排查LAB概述一个名为k8s-node-0的节点状态为NotReady,让其他恢复至正常状态,并确认所有的更改开机自动完成 LAB预配#预配关闭k8s-node-3节点......
  • Haproxy搭建web集群
    一、常见的web集群调度器目前常见的web集群调度器分为软件和硬件软件通常使用开源的LVS、Haproxy、Nginx,LVS性能最好,但搭建复杂。Nginx并发量,性能低于Haproxy硬件一般......
  • aws 与 aliyun 容器集群升级调研
    https://help.aliyun.com/document_detail/86497.html#section-t4q-rgc-7daACK保障最近的三个Kubernetes子版本的稳定运行,同时支持最新版本往前两个子版本的升级功能。例......
  • 低代码应用搭建平台 基于低代码快速开发管理系统
    很多时候,市场上的管理软件鱼龙混杂,找一些外包团队在实际应用中效果并不理想,项目中存在的问题也比较棘手。后面了解到白码低代码开发工具,可以让没有编程基础的人都可以短时......
  • 5分钟搭建图片压缩应用
    摘要:用华为云函数工作流FunctionGraph搭建图片压缩应用。本文分享自华为云社区《真正的按需计费丨函数工作流FunctionGraph实战,5分钟搭建图片压缩应用》,作者:华为云PaaS服......
  • 第2章 搭建环境
    一.MySQL1-1MySQL下载①进入MySQL官网https://www.mysql.com/,进入downloads页面,找到如下入口进入社区版下载页面:②选择MySQLCommunityServer标签并进入③先点击A......
  • 让搭建DM8主备集群更科学
    1安装前准备1.1集群规划A机器B机器业务IP172.16.1.1172.16.1.2心跳IP192.168.1.1192.168.1.2实例名DW1_01DW1_02实例端口52365236MAL端口53365336MAL守护进程端......
  • 拨号云服务器如何搭建
    拨号vps的实现方式?拨号vps的搭建架构方式:我自己想象了几种方式:1.电信内部有人,直接在电信idc机房托管机器,打通idc机房和拨号服务器所在机房,然后设置adsl帐号可以多拨的次数;2......