2016-01-20 16 views
7

私はgetting started overlayの例を通じて続いていると私は単純なクエリを持っているにオーバーレイを使用したマルチホストのネットワーク機能を使用するために必要な群れです。 swarm clusterを作成しなくても、オーバレイを使用したマルチホストネットワーキング機能を使用できますか?私は織りのようなサードパーティのプラグインを使用したくないです。私はこのためにドッカーネイティブのネットワーキングのサポートを使いたいと思います。は、ドッキングウィンドウ

私は3.16+ kernel RHELとdocker 1.9実行しています。

答えて

8

はい、可能です:「Lab 6: Docker Networking」を参照してください。
オーバーレイネットワークの重要な部分は、たとえばConsulのような検出サービスです。

オーバーレイネットワークは、キーと値のストアが必要です。
ストアは、ディスカバリ、ネットワーク、エンドポイント、IPアドレスなどを含むネットワーク状態に関する情報を保持します。 EngineはConsul、etcd、ZooKeeper(分散ストア)のKey-Valueストアをサポートしています。

https://github.com/docker/dceu_tutorials/raw/master/images/tut6-step1.png

記事「Docker Networks: Discovering Services on an Overlay」個々の容器の登録または発見のために構築されていない現在のサービス発見ツールに関するいくつかの批判を築きます。

オーバーレイは、カバーの下にKVストアを使用してネットワークトポロジをモデル化し、ホスト間コンテナとコンテナ間通信を有効にします。それはSRV record解像度を提供しません。

オーバーレイネットワークでは、すべてのコンテナに独自のIPアドレスが割り当てられています。
この作業を行う唯一の方法は、サービスを提供するネットワーク上のすべてのコンテナ内でコンサルエージェントを実行することです。これは確かに開発者にとって透明ではなく、既製の画像と互換性があります。

+0

ありがとうございます。私は何とかgithubでこのドキュメントの可用性を認識していませんでした。 :-) –

+0

もう1つ@VonC、クラスタ化されたコンテナを実行するノードの1つに 'KV'ストアイメージ(zookeeperなど)を起動できませんか? –

+1

@AnkitKumarはいできます。右のオプションでドッキングウィンドウを再起動することを忘れないでください(https://github.com/docker/dceu_tutorials/blob/94fd5f3e9372a8f58ca7b25f3232305731f7cd36/06-networking.md#task-2-configure-the-engine-to-use-key-値ストア)。そのノードは他のノードによって到達可能である必要があります。それはそれ自身のノードでそれを別々に保つ方が良いです。 – VonC