docker swarm 加入
| Description | Join a swarm as a node and/or manager |
|---|---|
| Usage | docker swarm join [OPTIONS] HOST:PORT |
Swarm 此命令适用于Swarm编排器。
描述
将一个节点加入到一个群集中。节点根据您使用--token标志传递的令牌作为管理节点或工作节点加入。如果您传递的是管理令牌,节点将作为管理节点加入。如果您传递的是工作令牌,节点将作为工作节点加入。
选项
| Option | Default | Description |
|---|---|---|
--advertise-addr | Advertised address (format: <ip|interface>[:port]) | |
--availability | active | Availability of the node (active, pause, drain) |
--data-path-addr | API 1.31+
Address or interface to use for data path traffic (format: <ip|interface>) | |
--listen-addr | 0.0.0.0:2377 | Listen address (format: <ip|interface>[:port]) |
--token | Token for entry into the swarm |
示例
将节点加入群集作为管理器
下面的示例演示了如何使用管理令牌加入管理节点。
$ 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地址的稳定主机。
将节点作为工作节点加入群集
下面的示例演示了如何使用工作令牌加入工作节点。
$ 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 value
如果节点是管理器,它将在此地址上监听入站群管理器流量。默认是在0.0.0.0:2377上监听。也可以指定一个网络接口来监听该接口的地址;例如--listen-addr eth0:2377。
指定端口是可选的。如果值是裸IP地址或接口名称,将使用默认端口2377。
在加入现有群集时,通常不需要此标志。
--advertise-addr value
此标志指定将向群集的其他成员通告的地址以进行API访问。如果未指定,Docker将检查系统是否具有单个IP地址,并使用该IP地址与监听端口(参见--listen-addr)。如果系统具有多个IP地址,则必须指定--advertise-addr,以便为管理器间通信和覆盖网络选择正确的地址。
也可以指定一个网络接口来公布该接口的地址;
例如 --advertise-addr eth0:2377。
指定端口是可选的。如果值是裸IP地址或接口名称,将使用默认端口2377。
在加入现有群集时,通常不需要此标志。如果您通过负载均衡器加入新节点,则应使用此标志以确保节点通告其IP地址,而不是负载均衡器的IP地址。
--data-path-addr
此标志指定全局范围网络驱动程序将向其他节点发布的地址,以便访问在此节点上运行的容器。 使用此参数,可以将容器的数据流量与集群的管理流量分开。 如果未指定,Docker将使用与广告地址相同的IP地址或接口。
--token string
节点加入群集所需的密钥值
--availability
此标志指定节点在加入主节点时的可用性。
可能的可用性值为 active、pause 或 drain。
在某些情况下,这个标志非常有用。例如,一个集群可能希望拥有专门的管理节点,这些节点不作为工作节点提供服务。这可以通过在docker swarm join时传递--availability=drain来实现。