0
レプリカが3に設定されたレプリケーションコントローラを使用して配置されたポッド。クラスタには5つのノードがあります。ポッドのサービス(nodeportタイプ)を作成しました。現在、kube-proxyは5つのノードすべてのip-tablesにサービスに関するエントリを追加します。クラスタにノードが50ある場合、オーバーヘッドにならないでしょうか?Kubernetes IPテーブル内のサービスIPエントリ
レプリカが3に設定されたレプリケーションコントローラを使用して配置されたポッド。クラスタには5つのノードがあります。ポッドのサービス(nodeportタイプ)を作成しました。現在、kube-proxyは5つのノードすべてのip-tablesにサービスに関するエントリを追加します。クラスタにノードが50ある場合、オーバーヘッドにならないでしょうか?Kubernetes IPテーブル内のサービスIPエントリ
これはオーバーヘッドではありません。すべてのノードは、そのサービスのポッドをホストしていなくてもサービスと通信できる必要があります(つまり、そのサービスに接続するポッドを持つ可能性があります)。
しかし、いくつかの非常に大きなクラスターでは、iptablesの更新のパフォーマンスが低い可能性があると報告されています(これは非常に大きなスケールです)。そのような場合は、Linkerd(https://linkerd.io/)やIstio(https://istio.io/)のようなソリューションを調べることをお勧めします。
少しオーバーヘッドがあることに同意します。 iptablesルールをすべてのノードに追加するのは設計によるものです。これにより、使用可能なノード上でポッドをスケジュールすることができます。また、iptablesのどこかで、効率的なアルゴリズムを使ってiptablesルールを検索し、トラフィックをルーティングしています。 – sfgroups
あなたの質問は何ですか?どのようにしないでください? – GhostCat