LoginSignup
9
11

More than 5 years have passed since last update.

Dockar swarm mode クラスタの構築

Last updated at Posted at 2016-08-13

主なコマンド

クラスタの起動

クラスタ起動の際にはdocker swarm initを実行する。
なお、コマンド実行時にはクラスタにノードを追加する際の
トークン情報の表示も行われる。
(別にここで記録しなくともコマンド実行で改めてトークンを取得することもできる。)

クラスタの起動
docker swarm init --advertise-addr="192.168.100.19" --listen-addr=0.0.0.0:2377
コマンド 意味 備考
docker swarm init クラスタの起動 特になし
--advertise-addr="192.168.100.19" 他ノードと通信する際の送信元アドレス? 複数インタフェースをノードが持っている場合に必要
--listen-addr=0.0.0.0:2377 他のノードとの通信に用いるリッスンアドレスとポートの指定 全インタフェースの2377番ポートでリッスン

クラスタへのノードの参加

swarmクラスタへのノード参加
docker swarm join 192.168.100.19 --advertise-addr="192.168.100.20" --listen-addr=0.0.0.0:2377 --token="SWMTKN-1-5ttd4rei5x2ltr5xa4balwu607lhg8cpggznhx22vxqwireuyj-dikln7ne6okdxu30ycrevdpwz"
コマンド 意味 備考
docker swarm join クラスタに参加する 利用するトークンによってマネージャまたはワーカノードになる
--advertise-addr="192.168.100.20" アドバタイズに使用するIPアドレスを指定する 複数インタフェースを持つ場合は指定必須
--listen-addr=0.0.0.0:2377 他のノードとの通信に用いるリッスンアドレスとポートの指定 この場合は全インタフェースのTCP2377番ポートでリッスンする
--token="~~~" クラスタへの参加用トークン マネージャノードとして参加する場合とワーカノードとして参加する場合でトークンが異なる

トークンの取得

swarmクラスタの中に含まれるマネージャノードで
docker swarm join-tokenのコマンドを実行することでトークンをクラスタ参加用のトークンを取得することができる。

コマンド実行時はマネージャノード用トークンまたは
ワーカノード用トークンの取得を行わなければならない。

マネージャノード用トークンの取得

マネージャノード用トークンの取得
docker swarm join-token manager
To add a manager to this swarm, run the following command:
    docker swarm join \
    --token SWMTKN-1-5ttd4rei5x2ltr5xa4balwu607lhg8cpggznhx22vxqwireuyj-dikln7ne6okdxu30ycrevdpwz

ワーカノード用トークンの取得

ワーカノード用トークンの取得
docker swarm join-token worker
To add a worker to this swarm, run the following command:
    docker swarm join \
    --token SWMTKN-1-5ttd4rei5x2ltr5xa4balwu607lhg8cpggznhx22vxqwireuyj-1c6c7kfkfbvn0pim5tb89bgug

状態確認

クラスタの状態確認

クラスタの状態確認
docker node list
ID                           HOSTNAME    STATUS  AVAILABILITY  MANAGER STATUS
74ir4572w3n9155wl2jgala4o    ubuntu-001  Ready   Active        Leader
8gag9kyuf6azs4ylojkyrui4s    ubuntu-002  Ready   Active        Reachable
a7kyx0ut9xn9mct2ersixuesz *  ubuntu-003  Ready   Active        Reachable

個別のノードの状態確認

個別ノードの状態確認
docker info
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
 ~~~~中略~~~~
Swarm: active
 NodeID: a7kyx0ut9xn9mct2ersixuesz
 Is Manager: true
 ClusterID: 1m4lxrlz5u1obrptp0n8zw60t
 Managers: 3
 Nodes: 3
 Orchestration:
  Task History Retention Limit: 5
 Raft:
  Snapshot interval: 10000
  Heartbeat tick: 1
  Election tick: 3
 Dispatcher:
  Heartbeat period: 5 seconds
 CA configuration:
  Expiry duration: 3 months
 Node Address: 192.168.100.21
~~~~中略~~~~
Registry: https://index.docker.io/v1/
WARNING: No swap limit support
Insecure Registries:
 127.0.0.0/8

Swarmがactiveとなっており、クラスタは動作している。

9
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
11