web-dev-qa-db-ja.com

クラウド以外の環境におけるKubernetesの負荷分散

Kubernetesは、ClusterIPNodePortLoadBalancingを使用できることがわかりました。ロードバランスにはクラウドが必要です。 iの場合の場合は、クラウドプロバイダーがあります(= /// =)ノード間のトラフィックをどのようにロードすることができますか?Haproxyがロードバランスができることを知っていますが、私はこれを考えていますクラウドロードバランキーは単純なhaproxyとは異なります

そして、HaproxyやNginxなどのhaproxyとIngresscontrollerの間で違うものを知りたいです。

ロードバランサーは、ワーカーノード間のトラフィックをロードバランストラフィックにしたいです。 Pods.Iとの間のサービスロードバランストラフィックは、入口コントローラはレイヤ7ロードバランタです。私は私のノード間のロードバランスを望みます

12
yasin lachini

Kubernetesではバックエンドがノードではなくポッドであるため、ノード間の負荷のバランスをとるためのクウェットには必要ありません。

そのため、Kubernetesコアコントローラは一部のコントローラがなく、ICがその1つであるため、ロードバランサではなく、ICレスバランサを考慮する必要があります。クラスターリップ型サービスはすでに基本的なロードバランシングをしています。

NGINX ICは素晴らしいです。それで、ISTIOとして(異なる概念)。 Traefikもオプションになる可能性があります。さまざまなICオプションを確認し、入力コントローラの概念を明確にします。

1
suren

Kubernetesの内部負荷分散のために、ISTIOまたはLinkerDのようなNGINX入力コントローラまたはサービスメッシュを使用します。 nginxの場合、どのような場合はどうなりますか.PODの上にサービスを作成します。このサービスは、負荷分散することができる抽象化ですが、それでもロードバランサーが必要です。 NGINXは、内部でもこれを正確すぎるために使用できます。あなたがそれが完璧ではないか素晴らしいことではないと想像できるように、それはチェックアウトするのは悪い考えではありません。 Envoy( https://blog.turbinelabs.io/a-basic-service-mesh-with-envoy-71d16bb7347d )、ISTIO( https:// istio)を見てください。 io / )とlinkerd( https://linkerd.io/ )自分自身を転がすことは完全に可能ですが、これらの多くの機能に対処するためのソリューションであるため、すでに最初にあなたの人生をずっと簡単にします。 Metallb( https://github.com/google/metallb )もあります。少し前進するのを助けることを願っています。

0
sandrom