Docker Swarm 基本建置

假設有三台電腦,ip 分別為:

  • master: 192.168.1.100
  • node-1: 192.168.1.200
  • node-2: 192.168.1.300

在這邊我們讓 100 這台當作 leader 也就是 manager node,200 和 300 為 worker nodes。
所以我們會藉由 leader 來發號司令安排任務。

如圖:

Step 1: 建立 Swarm mode

我們先在 leader 這台建立 swarm mode。

$ docker swarm init --advertise-addr 192.168.1.100
Swarm initialized: current node (ptetl3n05wr5crvbhl6i2dh01) is now a manager.

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

    docker swarm join --token SWMTKN-1-1h8e0f4efui3zxxpxglaibun7l7z6tcop8mfcelagw6i6lzwsj-7qby9dlsgu5ns4xulthq0xttx 192.168.1.100:2377

To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

如果在 swarm mode 下只有一台電腦,也就是只有 leader,那麼 –advertise-addr 這個參數可以不需要。
若有兩個以上的 node(包含 leader),那麼如果沒有給定 –advertise-addr 這個參數,expose 出來的 port 將不會在每一台 node 都有效 expose 出來

也就是說:如果我們在 init 時有給定 –advertise-addr 這個參數。那麼如果我們 expose
5000 這個 port 出來,我們連 192.168.1.100:5000, 192.168.1.200:5000, 192.168.1.300:5000 將會連到相同的服務

Setp 2: 將 Worker nodes 加入 Swarm mode

由步驟依我們可以看到,若 worker 要加入已建立好的 swarm mode,只需要複製貼上剛剛那段 console 的指令就可以了。

$ docker swarm join --token SWMTKN-1-1h8e0f4efui3zxxpxglaibun7l7z6tcop8mfcelagw6i6lzwsj-7qby9dlsgu5ns4xulthq0xttx 192.168.1.100:2377

這麼一來,我們基本的 cluster 就建立好了

我們可以利用以下指令來查看現在 node 的情況:

$ docker node ls

Reference

Create a swarm

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s