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

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

» 2016年11月02日 08時00分 公開

Docker Swarmによる構築

 前回の記事でも紹介したように、Docker 1.12以上で搭載されたSwarmには、さまざまな機能が存在します。ここでは、Swarmクラスタの構築、オーバレイネットワークの設定、さらにオーバレイネットワーク上でのコンテナ間の通信を行う手順を簡単に取り上げます。

今回はマネージャノード1台、ワーカノード2台で構成します。ワーカノードの1台にWebサーバのコンテナを起動し、さらにもう1台のワーカノードのコンテナからWebサーバのコンテナにアクセスすることで、オーバレイネットワークの通信を確認します。構築する環境は以下のとおりです。


項目 物理サーバ1号機 物理サーバ2号機 物理サーバ3号機
Swarmクラスタにおける役割 マネージャノード ワーカノード ワーカノード
ホストOS CentOS 7.2 CentOS 7.2 CentOS 7.2
ホストOSに付与したホスト名 n0121 n0122 n0123
Dockerエンジン 1.12 1.12 1.12
ホストOSのIPアドレス 172.16.1.121/16 172.16.1.122/16 172.16.1.123/16
Dockerイメージ なし larsks/thttpd centos:centos7.2.1511
稼働させるコンテナ名 なし test01 test02

 物理サーバの1号機、2号機、3号機はネットワークスイッチに接続され、それぞれのホストOSは、172.16.0.0/16のネットワークで通信できる状態にします。また、オーバレイネットワークは以下のとおりです。


項目
ネットワーク名 mynet01
ネットワークアドレス 172.19.0.0/24

 構築するオーバレイネットワークを172.19.0.0/24と定義しましたので、コンテナには172.19.0.X/24のIPアドレスが付与され、物理サーバをまたいで通信することになります。今回のゴールは、物理サーバの3号機のDockerコンテナから、2号機で稼働するWebサーバ入りのDockerコンテナが提供するテスト用のWebコンテンツにアクセスすることとします。

Docker 今回構築するDocker Swarmクラスタ環境
       1|2|3|4|5|6|7 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ