vSphere IaaS control plane 環境で NSX Advanced Load Balancer を構成する場合は注意が必要です。

次の場合、Ingress は NSX Advanced Load Balancer から外部 IP アドレスを取得しません。
  • Ingress の構成でホスト名が指定されていない場合。
  • Ingress がホスト名ではなく defaultBackend 構成オプションを使用して構成されている場合。
デフォルトでは、Kubernetes の Ingress リソースは、外部 IP アドレスを割り当てるために、コントローラ構成でホスト名を定義する必要があります。この処理が必要なのは、 NSX Advanced Load Balancer では Kubernetes Ingress に対応して作成される仮想サービスのトラフィックに仮想ホスティングを使用するためです。 defaultBackend 構成オプションの詳細については、 https://kubernetes.io/docs/concepts/services-networking/ingress/#default-backend を参照してください。

Ingress のホスト名が別の名前空間の Ingress と同じ場合、その Ingress は NSX Advanced Load Balancer から外部 IP アドレスを取得しません。デフォルトでは、NSX Advanced Load Balancer は名前空間ごとに一意の VIP を割り当てます。つまり、1 つの名前空間内のすべての Ingress が同じ VIP を共有します。そのため、異なる名前空間からの 2 つの Ingress には個別の VIP が割り当てられます。ただし、これらの Ingress のホスト名が同じである場合、DNS サーバはホスト名を解決するための IP アドレスを認識できません。