
209
11
章
ネットワーキングと
サービスディスカバリ
コンテナという観点から見た場合、サービスディスカバリとネットワーキングとの境界線は、驚
くほど曖昧になってきています。サービスディスカバリは、サービスのクライアント
†
に対し、適
切
‡
なサービスのインスタンスの接続情報(通常は
IP
アドレスとポート)を自動的に提供するプ
ロセスです。すべてがちょうどの
1
つのインスタンスでまかなわれるような、単一のホストの静
的なシステムであれば、この問題は簡単です。しかし、サービスのインスタンスが複数あり、それ
らのインスタンスに変動があるような分散システムでは、この問題ははるかに複雑になります。
ディスカバリに対するアプローチの
1
つは、クライアントが単純に名前(
db
や
api
など)でサー
ビスへのリクエストを行い、バックエンドが何らかの魔法を使ってこの名前を適切な場所に解決す
ることです。この「魔法」は、シンプルなアンバサダー(大使)コンテナだったり、
Consul
のよ
うなサービスディスカバリのソリューションであったり、
Weave
(これはサービスディスカバリの
機能も持ちます)のようなネットワーキングソリューションであったり、あるいは何らかの形でこ
れらを組み合わせたものであったりします。
本書の例では、ネットワーキングはコンテナ同士を接続するプロセスと見なすことができます。
このプロセスには、物理的にイーサネットのケーブルを接続することは含まれませんが、
veth
の
ような、ケーブルの接続に相当するソフトウェアがしばしば含まれます。コンテナのネットワーキ ...