
Docker Swarmとは
- 複数台のDockerホストでクラスタ構成を組むためのソフトウェア
- Dockerに標準装備されている
- 複数台の構成にすることで、一部のホストがダウンしても処理を継続することができる
Masterノード(マネージャーノード)
- Swarmにおいて、主に各ノードへ指示を出したり、管理を行う役割を担うホストをMasterノード
- MasterノードをAgentノードとしても機能させることも可能
- Masterノードがダウンしてしまうと各ノードの管理や、コンテナの管理などが行えなくなるリスクがあるため、それを踏まえた設計にする必要がある
Agentノード(ワーカーノード)
- Swarmにおいて、コンテナを実際に実行して処理を行うホストをAgentノード
- Masterノードからの指示によってコンテナの実行、停止などを行う
Swarmにおけるサービス
- マネージャーノードや、ワーカーノードで実行するタスクについての定義のこと
- サービスの作成時には、どのイメージを使い、コンテナ内でどのようなコマンドを実行するかといった情報を指定する
Swarmにおけるタスク
- サービスで定義された内容をノードで実行するための実行単位
- タスクが割り当てられたノード上で予めサービスに定義したコンテナが起動する