Docker 三剑客之Docker Swarm

Docker Swarm 介绍




创建Docker Swarm集群

1、使用docker machine ssh连接到想要成为manager node的那台docker宿主机上。

$ docker-machine ssh manager1


2、执行下面的命令,创建一个swarm集群。

docker swarm init --advertise-addr <MANAGER-IP>

例如:

# docker swarm init --advertise-addr 43.241.208.252
Swarm initialized: current node (xmv5n6bi8jtzux88a9ly03dx6) is now a manager.
To add a worker to this swarm, run the following command:
    docker swarm join --token SWMTKN-1-4ebqztfvn45rpmol5gy8stxh9om7otzzeib3pyvemtpc49zf0t-18tzrg41wdfctkp2ejeai9nxl 43.241.208.252:2377
To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

我这里是在美团公有云的一台云主机上创建的,使用的是公网IP,因为我准备将阿里云上一台云主机添加为swarm node。所以用的是公网IP,通常生产环境都是用内网IP


添加一个worker到swarm集群,执行以下命令,注意是在worker上执行命令而不是manager

docker swarm join --token SWMTKN-1-4ebqztfvn45rpmol5gy8stxh9om7otzzeib3pyvemtpc49zf0t-18tzrg41wdfctkp2ejeai9nxl 43.241.208.252:2377

如果哪天忘记这个命令了,可以在manager上执行下面的命令,查看

$ docker swarm join-token worker

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

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



添加一个manager到swarm集群,执行以下命令,并按照提示操作,注意是在worker上执行命令而不是manager

docker swarm join-token manager


我这里把美团云上同一内网的另外一台云主机添加为worker,虽然我前面创建集群是用的公网IP,但是manager监听地址为0.0.0.0:2377,所以用内网IP也没问题

# docker swarm join --token SWMTKN-1-4ebqztfvn45rpmol5gy8stxh9om7otzzeib3pyvemtpc49zf0t-18tzrg41wdfctkp2ejeai9nxl 172.16.2.14:2377   
This node joined a swarm as a worker.



将阿里云主机添加为worker

#  docker swarm join --token SWMTKN-1-4ebqztfvn45rpmol5gy8stxh9om7otzzeib3pyvemtpc49zf0t-18tzrg41wdfctkp2ejeai9nxl 43.241.208.252:2377
This node joined a swarm as a worker.

注意:在操作之前,一定要保证节点之间,以下端口能互通

  • TCP port 2377 for cluster management communications

  • TCP and UDP port 7946 for communication among nodes

  • UDP port 4789 for overlay network traffic



docker node ls:查看swarm集群节点信息,在manager节点上执行该命令

image.png



docker info,查看 Swarm集群信息

Swarm: active
 NodeID: xmv5n6bi8jtzux88a9ly03dx6
 Is Manager: true
 ClusterID: nwjap3nned83wyf9zt2nrcd0i
 Managers: 1
 Nodes: 3
 Orchestration:
  Task History Retention Limit: 5



猜你喜欢

转载自blog.51cto.com/zengestudy/2134211
今日推荐