検索
ニュース

第31回 Docker Swarmクラスタのオーバレイネットワークを構築する方法古賀政純の「攻めのITのためのDocker塾」(6/7 ページ)

複数の物理サーバで稼働するコンテナ同士の通信を可能にするには、Docker Swarmを用いたオーバレイネットワークを構築します。前回はその概要について解説しましたが、今回はこの環境を構築する方法を紹介します。

Share
Tweet
LINE
Hatena

別のコンテナを起動してみる

 Webサーバ入りのDockerコンテナを、ワーカノードn0122で稼働させることができました。同様に、ワーカノードのn0123にCentOS 7.2のOSテンプレートイメージからDockerコンテナを起動し、n0122上で稼働するWebサーバ入りのコンテナにアクセスできるかテストしてみます。マネージャノード上で、「docker service」を使って、ワーカノードn0123にCentOS 7.2のコンテナ「test02」を稼働させます。


n0121 # docker service create \
--name test02 \ ←コンテナ名
--constraint 'node.hostname == n0123' \ ←ワーカノード「n0123」でコンテナを起動
--network mynet01 \ ←コンテナはオーバレイネットワーク「mynet01」に所属させる
centos:centos7.2.1511 tail -f /dev/null ←CentOS 7.2のイメージを指定し、tailで稼働を持続

 CentOS 7.2のOSイメージからコンテナを起動しますが、コンテナの稼働を持続させるため「tail -f /dev/null」を入れています。先ほどと同様に、「docker service ls」と「docker service ps」で状況を確認してみましょう。


n0121 # docker service ls 
ID            NAME    REPLICAS  IMAGE                  COMMAND
9tfne7ujen3p  test01  1/1       larsks/thttpd
cekmq75s52sd  test02  1/1       centos:centos7.2.1511  tail -f /dev/null

 CentOS 7.2のOSテンプレートから起動したサービスが「test02」として稼働していることが分かります。起動したサービス「test02」がどのノードで稼働しているかを確認します。


n0121 # docker service ps test02
ID                         NAME      IMAGE                  NODE   DESIRED STATE ...
9s9m5j6dkweqrufb12wany6tt  test02.1  centos:centos7.2.1511  n0123  Running       ...

 ワーカノード「n0123」でコンテナが稼働していることが分かります。念のために、ワーカノード「n0123」上でも確認しておきます。


n0123 # docker ps -a 
CONTAINER ID  IMAGE                   COMMAND             ... NAMES
56dfaa68f9b4  centos:centos7.2.1511   "tail -f /dev/null" ... test02.1.9s9m5j6dkweqrufb12wany6t

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る