
私は複数の異なる Docker 化されたアプリケーションを持っており、それぞれに適切な Nginx サービスが付属しており、いくつかのルールに基づいてコンテナーにトラフィックを送信します。
これらのアプリケーションを同じサーバーに配置する必要があるため、SSL を処理し、トラフィックを適切な Docker 化された Nginx に転送する新しい Nginx をホストに追加しました。
質問: 複数の異なる Docker 化された Nginx にトラフィックを転送するホストで Nginx を使用しても問題ありませんか? 既知の問題はありますか? パフォーマンスに影響しますか?
答え1
複数の異なる Docker 化された Nginx にトラフィックを転送するホストで Nginx を使用しても問題ありませんか?
はい、それは実際によくある習慣です。
既知の問題はありますか?
この設定自体が原因ではありません。
それはパフォーマンスに影響しますか?
ある意味では、確かにそうです。他のすべてのロード バランサーと同様に (実際そうですが)、バッファリングと TCP ソケットにいくらかの遅延が追加されます。
答え2
複数の異なる Docker 化された Nginx にトラフィックを転送するホストで Nginx を使用しても問題ありませんか?
はい。これは一つの方法です。
既知の問題はありますか?
NGINX のホスト インスタンスはコンテナー化されていないため、構成が難しくなる可能性があります。これを行うもう 1 つの一般的な方法は、ポートにバインドされた Docker コンテナーを用意し
80
、443
すべての入力トラフィックを処理して対応するコンテナーに転送することです。最後に、Kubernetes などの他のコンテナ オーケストレーション システムには組み込みの概念があり
Ingress
、Docker Compose でコンテナを構成するのと同じように構成できます。Kubernetes Ingress の利点は、Docker Compose では制限が多いのに対し、複数のサーバーにスケールアップ/スケールダウンできることです。それはパフォーマンスに影響しますか?
宛先コンテナに到達するまでに余分なホップがあると、パフォーマンスに悪影響を及ぼしますが、これはよくあることです。