Join nodes to a swarm添加节点到集群

当你第一次创建集群时,你将单个Docker引擎置于集群模式中。为了充分利用群体模式,可以在集群中添加节点:

  • 添加工作节点可以增加容量。当你将服务部署到集群中时,引擎会在可用节点上调度任务,无论这些节点是工作节点还是管理节点。当你向你的群中添加工作者时,你就增加了群的规模来处理任务而不影响管理者的raft共识。
  • 管理器节点增加了容错性。Manager节点为集群执行编配和集群管理功能。在manager节点中,单个leader节点执行编排任务。如果一个leader节点宕机,其余的manager节点将选择一个新的leader,并恢复群集状态的编排和维护。默认情况下,manager节点还运行任务。

在向集群中添加节点之前,必须在主机上安装Docker引擎1.12或更高版本。
Docker引擎根据你提供给Docker swarm join命令的join-token连接令牌加入集群。节点仅在连接时使用令牌。如果你随后轮转了标记,它不会影响现有的集群节点。请参考集群模式下运行Docker引擎。
注意:Docker引擎允许非fips节点加入支持fips的集群。
虽然混合FIPS环境使升级或更改状态更容易,但Docker建议不要在生产环境中运行混合FIPS环境。

Join as a worker node做为工作节点添加

要检索包含工作节点的连接令牌的连接命令,请在管理器节点上运行以下命令:

$ docker swarm join-token worker

To add a worker to this swarm, run the following command:

    docker swarm join \
--token SWMTKN--49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-8vxv8rssmk743ojnwacrr2e7c \
192.168.99.100:

运行来自工作节点连接集群的输出命令:

$ docker swarm join \
--token SWMTKN--49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-8vxv8rssmk743ojnwacrr2e7c \
192.168.99.100: This node joined a swarm as a worker.

docker swarm join命令执行以下操作:

  • 将当前节点上的Docker引擎切换到集群模式。
  • 向管理器请求TLS证书。
  • 用机器主机名命名节点
  • 根据集群令牌在管理器侦听地址将当前节点连接到集群。
  • 将当前节点设置为Active可用性,这意味着它可以从调度程序接收任务。
  • 将ingress覆盖网络扩展到当前节点。

Join as a manager node作为管理节点加入

当你运行docker swarm join并传递manager令牌时,docker引擎将切换到与workers相同的swarm模式。Manager节点也参与了raft共识。新的节点应该是Reachable,但是现有的管理器仍然是集群的Leader。
Docker建议每个集群使用3到5个管理器节点来实现高可用性。由于集群模式管理器节点使用Raft共享数据,因此管理器的数量必须为奇数。只要管理器节点的一半以上的仲裁可用,集群就可以继续工作。
有关群管理器和管理群的详细信息,请参见Administer and maintain a swarm of Docker Engines
要检索包含管理节点的连接令牌的连接命令,请在管理节点上运行以下命令:

$ docker swarm join-token manager

To add a manager to this swarm, run the following command:

    docker swarm join \
--token SWMTKN--61ztec5kyafptydic6jfc1i33t37flcl4nuipzcusor96k7kby-5vy9t8u35tuqm7vh67lrz9xp6 \
192.168.99.100:

在新管理节点的输出端运行命令,将其加入集群:

$ docker swarm join \
--token SWMTKN--61ztec5kyafptydic6jfc1i33t37flcl4nuipzcusor96k7kby-5vy9t8u35tuqm7vh67lrz9xp6 \
192.168.99.100: This node joined a swarm as a manager.

docker swarm英文文档学习-6-添加节点到集群的更多相关文章

  1. docker swarm英文文档学习-11-上锁你的集群来保护你的加密密钥

    Lock your swarm to protect its encryption key上锁你的集群来保护你的加密密钥 在Docker 1.13及更高版本中,默认情况下,群管理器使用的Raft日志在 ...

  2. docker swarm英文文档学习-3-开始

    https://docs.docker.com/engine/swarm/swarm-tutorial/ 1)Getting started with swarm mode 本教程向你介绍Docker ...

  3. docker swarm英文文档学习-8-在集群中部署服务

    Deploy services to a swarm在集群中部署服务 集群服务使用声明式模型,这意味着你需要定义服务的所需状态,并依赖Docker来维护该状态.该状态包括以下信息(但不限于): 应该运 ...

  4. docker swarm英文文档学习-10-使用Docker密钥管理敏感数据

    Manage sensitive data with Docker secrets使用Docker secrets管理敏感数据 About secrets 对于Docker Swarm服务来说,sec ...

  5. docker swarm英文文档学习-4-swarm模式如何运行

    1)How nodes work Docker引擎1.12引入了集群模式,使你能够创建一个由一个或多个Docker引擎组成的集群,称为集群.集群由一个或多个节点组成:在群模式下运行Docker引擎1. ...

  6. docker swarm英文文档学习-5-在swarm模式中运行Docker引擎

    Run Docker Engine in swarm mode在swarm模式中运行Docker引擎 当你第一次安装并开始使用Docker引擎时,默认情况下禁用swarm模式.在启用集群模式时,需要处 ...

  7. docker swarm英文文档学习-1-概述

    参考https://docs.docker.com/engine/swarm/ Swarm mode overview群模式概述 Docker的当前版本包括集群模式,用于本地管理称为集群的Docker ...

  8. docker swarm英文文档学习-9-使用Docker Configs存储配置数据

    Store configuration data using Docker Configs 使用Docker Configs存储配置数据 Docker 17.06引入了集群服务配置,允许你在服务镜像或 ...

  9. docker swarm英文文档学习-7-在集群中管理节点

    Manage nodes in a swarm在集群中管理节点 List nodes列举节点 为了查看集群中的节点列表,可以在管理节点中运行docker node ls: $ docker node ...

随机推荐

  1. Java - "JUC" ReentrantLock获取锁

    [Java并发编程实战]-----“J.U.C”:ReentrantLock之一简介 ReentrantLock介绍 ReentrantLock是一个可重入的互斥锁,又被称为“独占锁”. 顾名思义,R ...

  2. POJ3468(KB7-C 线段树)

    A Simple Problem with Integers Time Limit: 5000MS  Memory Limit: 131072K Total Submissions: 108903   ...

  3. w3school前端教程合集

    有关前端开发的w3c教程合集. http://caibaojian.com/w3school/ 地图 ajax教程 Canvas教程 CSS教程 CSS3教程 CSS3选择器 CSS参考手册 DHTM ...

  4. 安装nvm管理不同的node版本

    在工作或者学习中,偶尔会遇到需要切换不同node版本的需求,幸好有神器nvm可以帮我们解决问题.下面我们就来讲解如何在window系统上安装nvm!

  5. 解决stackoverflow打开缓慢的问题

    一.原因: 因为stackoverflow用的是谷歌的api,在国内谷歌是被禁用的,所以才会打开缓慢,并不是stackverflow被墙 二.解决方法: 1.如果你正在使用的是火狐浏览器,那么请按照下 ...

  6. Android热修复之 - 收集崩溃信息上传服务器

    1.概述 大致的流程就是在用户崩溃的时候,我们获取崩溃信息.应用当前的信息和手机信息,然后把它保存到手机内存卡,再找我就直接找出来看看.后来衍生到上线后某些奇葩机型会有部分问题,所以不得不上传到服务器 ...

  7. FragmentStatePagerAdapter和FragmentPagerAdapter区别

    FragmentPageAdapter和FragmentStatePagerAdapter 我们简要的来分析下这两个Adapter的区别: FragmentPageAdapter:和PagerAdap ...

  8. js拼接table查询信息部分

    其一: $("#datagrid").empty(); var a=0; <order-rows> a++; $("#datagrid").appe ...

  9. 全球首款完全开源的堡垒机,符合 4A 的专业运维审计系统Jumpserver

    Jumpserver是全球首款完全开源的堡垒机,是符合 4A 的专业运维审计系统. http://www.jumpserver.org https://github.com/jumpserver/ju ...

  10. git常用命令图