ネットワークロードバランサー(NLB)インスタンスは、Alibaba Cloudがモノのインターネット(IoE)向けに開発した次世代のレイヤー 4 ロードバランサーです。 NLBは超高性能を提供し、自動スケーリングをサポートし、より高い可用性を提供し、ゲートウェイトラフィックの安定性をさらに向上させます。 ASMイングレスゲートウェイはNLBの使用をサポートしています。イングレスゲートウェイのServiceTypeをLoadBalancerに設定すると、クラシックロードバランサー(CLB)インスタンスがゲートウェイサービスのロードバランサーとして自動的に関連付けられます。このトピックでは、NLBインスタンスをイングレスゲートウェイに関連付ける方法について説明します。
前提条件
KubernetesクラスターがASMインスタンスに追加されていること。以下の条件を満たしている必要があります。
Kubernetesクラスターのバージョンが V1.24 以降であり、クラウドコントローラーマネージャー(CCM)のバージョンが V2.5.0 以降であること。
ASMインスタンスのバージョンが V1.18 以降であること。
ACKクラスターが存在するVPCに、少なくとも 2 つのゾーンに vSwitch があること。
手順
ASMコンソール にログインします。左側のナビゲーションペインで、 を選択します。
[メッシュ管理] ページで、ASMインスタンスの名前をクリックします。左側のナビゲーションペインで、 を選択します。
コンソールまたはYAMLテンプレートを使用してイングレスゲートウェイを作成することを選択できます。
コンソールを使用してイングレスゲートウェイを作成する
[イングレスゲートウェイ] ページで、[作成] をクリックします。このトピックでは、NLBインスタンスのパラメーターについてのみ説明します。他の構成パラメーターの詳細については、「イングレスゲートウェイを作成する」をご参照ください。
構成項目
説明
NLB
[サービスの種類] が [ロードバランサー] に設定されている場合にのみ、この構成が必要です。
[インターネットアクセス] と [VPCアクセス] がサポートされています。
SLBインスタンスの作成
デフォルトでは、コンソールで [SLBインスタンスの作成] が選択されています。必要に応じて、[既存の SLB インスタンスを使用する] を選択できます。
このオプションを選択した後、以下の [NLBインスタンスのゾーンを選択] で、少なくとも 2 つのゾーン にデプロイされた vSwitch を選択する必要があります。
既存の SLB インスタンスを使用する
このオプションを選択した後、以下の [既存のロードバランサーを選択] で、既存の NLB インスタンスを選択する必要があります。
重要Kubernetesサービスごとにロードバランサーを割り当てることをお勧めします。複数のKubernetesサービスが同じロードバランサーを共有する場合、以下のリスクと制限があります。
既存のロードバランサーを使用すると、既存のリスナーが上書きされ、アプリケーションにアクセスできなくなる可能性があります。
Kubernetes が Service を介して作成したロードバランサーは再利用できません。コンソールで手動で作成されたもの(または OpenAPI を呼び出して作成されたもの)のみを再利用できます。
同じロードバランサーを共有する複数の Service は、ポートの競合が発生するため、同じフロントエンドリスナーポートを持つことはできません。
ロードバランサーを再利用する場合、リスナーと vServer グループの名前は Kubernetes によって一意の識別子として使用されます。したがって、リスナーまたは vServer グループの名前を変更しないでください。
クロス クラスターおよびクロス リージョンのロードバランサーの再利用はサポートされていません。
YAMLテンプレートを使用してイングレスゲートウェイを作成する
[イングレスゲートウェイ] ページで、[YAML テンプレートを使用] をクリックし、ゲートウェイ名を ingressgateway-nlb-test に設定し、[名前空間] に [istio-system] を選択します。次の YAML を構成します。
YAMLでは、
loadBalancerClassをalibabacloud.com/nlbに設定する必要があります。 NLBインスタンスの仕様を指定する必要はありませんが、少なくとも 2 つのゾーンを指定する必要があります。作成が完了すると、ページは次のように表示されます。 CLBを使用するゲートウェイの場合、[サービスアドレス] は IP アドレスとして表示されます。 NLBを使用するゲートウェイの場合、[サービスアドレス] はドメイン名として表示されます。イングレスゲートウェイの作成時に 2 つのゾーンを指定すると、2 つの IP アドレスがドメイン名にバインドされます。

NLBコンソール にログインして、現在の NLB のステータスを表示できます。詳細については、「アノテーションを使用してネットワークベースのロードバランシング NLB を構成する」および「NLB の課金」をご参照ください。