docker swarm join
描述 | 以节点和/或管理器的身份加入 swarm |
---|---|
用法 | docker swarm join [OPTIONS] HOST:PORT |
Swarm 此命令适用于 Swarm 编排器。
描述
将节点加入 swarm。节点根据您通过 --token
标志传递的 token 加入为管理器节点或工作节点。如果您传递管理器 token,则节点作为管理器加入。如果您传递工作节点 token,则节点作为工作节点加入。
选项
选项 | 默认值 | 描述 |
---|---|---|
--advertise-addr | 广告地址(格式:<ip|interface>[:port] ) | |
--availability | active | 节点的可用性(active , pause , drain ) |
--data-path-addr | API 1.31+ 用于数据路径流量的地址或接口(格式:<ip|interface> ) | |
--listen-addr | 0.0.0.0:2377 | 监听地址(格式:<ip|interface>[:port] ) |
--token | 加入 swarm 的 token |
示例
以管理器身份将节点加入 swarm
以下示例演示了使用管理器 token 加入管理器节点。
$ docker swarm join --token SWMTKN-1-3pu6hszjas19xyp7ghgosyx9k8atbfcr8p2is99znpy26u2lkl-7p73s1dx5in4tatdymyhg9hu2 192.168.99.121:2377
This node joined a swarm as a manager.
$ docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
dkp8vy1dq1kxleu9g4u78tlag * manager2 Ready Active Reachable
dvfxp4zseq4s0rih1selh0d20 manager1 Ready Active Leader
一个集群最多只能有 3-7 个管理器,因为集群要正常运行必须有大多数管理器可用。不参与此管理仲裁的节点应作为工作节点加入。管理器应是具有静态 IP 地址的稳定主机。
以工作节点身份将节点加入 swarm
以下示例演示了使用工作节点 token 加入工作节点。
$ docker swarm join --token SWMTKN-1-3pu6hszjas19xyp7ghgosyx9k8atbfcr8p2is99znpy26u2lkl-1awxwuwd3z9j1z3puu7rcgdbx 192.168.99.121:2377
This node joined a swarm as a worker.
$ docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
7ln70fl22uw2dvjn2ft53m3q5 worker2 Ready Active
dkp8vy1dq1kxleu9g4u78tlag worker1 Ready Active Reachable
dvfxp4zseq4s0rih1selh0d20 * manager1 Ready Active Leader
--listen-addr 值
如果节点是管理器,它将在此地址上监听传入的 swarm 管理器流量。默认是在 0.0.0.0:2377 上监听。也可以指定一个网络接口来监听该接口的地址;例如 --listen-addr eth0:2377
。
指定端口是可选的。如果值是裸 IP 地址或接口名称,将使用默认端口 2377。
加入现有 swarm 时,此标志通常不是必需的。
--advertise-addr 值
此标志指定将通告给 swarm 中其他成员以进行 API 访问的地址。如果未指定,Docker 将检查系统是否具有单个 IP 地址,并使用该 IP 地址和监听端口(参见 --listen-addr
)。如果系统有多个 IP 地址,则必须指定 --advertise-addr
,以便为管理器间通信和覆盖网络选择正确的地址。
也可以指定一个网络接口来广播该接口的地址;例如 --advertise-addr eth0:2377
。
指定端口是可选的。如果值是裸 IP 地址或接口名称,将使用默认端口 2377。
加入现有 swarm 时,此标志通常不是必需的。如果您通过负载均衡器加入新节点,您应该使用此标志确保节点广播其 IP 地址而不是负载均衡器的 IP 地址。
--data-path-addr
此标志指定全局范围网络驱动程序将向其他节点发布的地址,以便访问在此节点上运行的容器。使用此参数,可以将容器的数据流量与集群的管理流量分离开来。如果未指定,Docker 将使用与广告地址相同的 IP 地址或接口。
--token 字符串
节点加入 swarm 所需的密钥值
--availability
此标志指定节点在加入主节点时的可用性。可能的可用性值包括 active
、pause
或 drain
。
此标志在某些情况下非常有用。例如,集群可能希望拥有不作为工作节点服务的专用管理器节点。这可以通过将 --availability=drain
传递给 docker swarm join
来实现。