2017-12-22 12 views
0

kubernetesの負荷分散にNginxを使用したいと思います。 展開はサービスの一部です。これには、拡大縮小可能なポッドが含まれています。私は、NGINXを規模の拡大なしにサービスの一部にしたいと思っています。Nginxでサービス内の負荷分散を実現するkubernetes

NGINXを外部のDNSリゾルバで設定することで、外部ロードバランサとして使用できることがわかりました。これにより、ポッドのIPをスケールし、独自の負荷分散ルールを適用することができます。

NGINXをサービスの一部にすることはできますか?次に、ポッドにDNS解決を行う方法は?その場合、どのポッドにサービス名が参照されますか?

私は、マイクロサービスを表すセットアップの単一の定義を保持する2つのサービスの宣言を避けたいと思います。

より一般的に

、どのように私は同じサービスで宣言することができます。

  • バックエンドをスケーリングされユニット、
  • データベースをスケールされていない、

感謝をスケーリングしていませんすべて

答えて

0

サービスの一部としてNGINXを使用することはできません。サービスにはポッドは含まれていません。

本質的に進入コントローラは次のように動作するサービスとして公にのnginxの展開公開されています。これは、クラスタ上の任意およびすべてのサービスが

EDITあなたが入力サービスを望むように、それはロードバランサになり聞こえますロードバランサ/ファンアウト。デプロイメントでは、入力リソース用にクラスタをスキャンし、NGINXを再構成して、要求を適切なサービスに転送します。

通常、人は、すべてのマイクロサービスのロードバランサとして機能する単一のコントローラを展開します。 DNS、URI、その他のヘッダーなどに基づいてファンアウトすることができます。また、TLS終了、特定のサービスへの基本認証の追加、NGINX設定スニペットを入力リソースに直接スプライスすることもできます。

+0

わかりました。つまり、サービスの目的の1つは、ロードバランシングを可能にするために、名前とDNSの後ろにスケーリングされたset afポッドを隠すことです。あれは正しいですか? いいえ、私は入口コントローラでディーパーを見ます。 5つのマイクロサービスを導入しようとしている場合、NGINXに基づいて5つの異なる戦略/構成で5つの異なる入口コントローラを宣言することは可能ですか? (キャッシング、負荷バランス..) ありがとう – kinder5612

関連する問題