docker swarm 集群搭建

  1. 安装docker
  2. 配置镜像加速
  3. 环境配置
  4. 搭建集群
  5. 创建服务
  6. 扩缩容

3、 防火墙 ,安全组 2377端口 放开
通常错误有 :
1】如果主管理器(leader) 没有开放 ,其它主机无法加入
2】如果leader 放开了,其它主机没有放开 ,那么可以加入集群 ,但是 部署任务 会失败,docker service ps 服务名 可以看到 一直在部署 ,除了本机,当然如果你没有配置了 每台主机每个服务的最大任务数 (默认),就会全部部署到本机 ,docker ps 查看 本机任务

4、 选择一台服务器 作为 swarm 的创建者 (leader),如下命令
docker swarm init 【 --advertise-addr 】 (【】可选)
manager-ip 为 其它服务器 连接 leader 的ip ,如果不指定 ,那么默认是eth0 ip,如果是云服务器 ,除非是在同一个局域网,否则需要设置为公网ip
显示如下:
docker swarm 集群搭建_第1张图片
输出 写的很明白 ,当前节点是一个管理者 ,添加 一个 工作者使用如下命令 【docker swarm ······ ip:2377】 ,添加管理者 运行 docker swarm-join manager
docker swarm-join manager 得到 添加管理者 命令
docker swarm-join manager 得到 添加工作者 命令
在这里插入图片描述
复制 后在其它 服务器 运行 这个命令 ,记住 其它服务器 不用docker swarm init 命令
在这里插入图片描述
成功。
在leader (主管理者),或者其它 管理者 运行命令 docker node ls
在这里插入图片描述

5、创建服务可以使用两种方式:
1】docke-compose.yaml 文件
docker stack deploy -c docke-compose.yaml demo 【demo为stack】
2】docker service create 命令
docker service create [OPTIONS] IMAGE [COMMAND] [ARG...]

区别:第一种 创建多个服务 ,保持在一个 stack中 ,用于对 其中多个服务的 删除等操作。第二种 创建一个服务,麻烦

6、创建任务
创建服务不一定创建了任务
docker service scale --replaces 服务名=任务数
随机部署到所有节点 ,管理者 默认也是一个worker

你可能感兴趣的:(如此迷惑行为,docker,服务器,linux)