Microsoft Azure は、高可用性に基づいてアベイラビリティ ゾーンをサポートします。NSX Advanced Load Balancer は、Microsoft Azure クラウドの複数のアベイラビリティ ゾーンをサポートします。Azure でプロビジョニングされたサービス エンジンとアプリケーション ロード バランサも、新しいアベイラビリティ ゾーンベースの HA を使用します。このセクションでは、Microsoft Azure および NSX Advanced Load Balancer で複数のアベイラビリティ ゾーンを有効にするために必要な設定に関する詳細を説明します。

Azure のアベイラビリティ ゾーンの詳細については、次のリンクを参照してください。

Microsoft Azure の構成の設定

Microsoft Azure で、選択したリージョンが複数のアベイラビリティ ゾーン機能をサポートしていることを確認します。現在、NSX Advanced Load Balancer はリージョン内のアベイラビリティ ゾーン全体でのみ SE をサポートしています。

NSX Advanced Load Balancer の構成の設定

NSX Advanced Load Balancer の Azure クラウド構成で、use_enhanced_ha flag を有効にします。クラウドに SE または仮想サービスがすでに作成されている場合、このフラグを有効にすることはできません。仮想サービス、プール作成の構成ワークフローは同じです。Azure では、サブネット、ALB、およびパブリック IP アドレスは複数のゾーンにまたがることができます。したがって、仮想サービスは、異なるアベイラビリティ ゾーンの SE にスケールアウトされる VIP を 1 つだけ必要とします。

Microsoft Azure の 3 つのアベイラビリティ ゾーンのサポート

NSX Advanced Load Balancer のリリース 21.1.1 以降では、サービス エンジン グループごとに 3 つのアベイラビリティ ゾーン (AZ) がサポートされ、アベイラビリティ ゾーンを選択するオプションが構成可能になります。このリリースより前は、アベイラビリティ ゾーンの数はデフォルトで 2 に設定され、値は編集できませんでした。デフォルトでは、クラウド レベルの Azure 構成で 2 つの AZ が使用でき、いずれかのアベイラビリティ ゾーンに SE を作成できました。

最近の機能強化により、要件に従って 3 つのアベイラビリティ ゾーンのいずれかに SE を作成できます。リージョンでゾーンがサポートされていない場合、SE の作成中にエラーが表示されます。

3 つのアベイラビリティ ゾーンの構成

[インフラストラクチャ] > [クラウド] > [場所とネットワーク] の順に移動し、次に示すように、[Azure の拡張 HA 機能を使用] オプションを有効にします。要件に従ってアベイラビリティ ゾーンを選択します。

図 1.

azure_configuration モードで使用可能な use_enhanced_ha オプションを使用して、サービス エンジン グループに必要な 3 つのアベイラビリティ ゾーンを構成します。AZ を構成するためのコマンドを次に示します。

[admin:10-10-1-1]: > configure cloud Az1
[admin:10-10-1-1]: cloud> azure_configuration
[admin:10-10-1-1]: cloud:azure_configuration> use_enhanced_ha
Overwriting the previously entered value for use_enhanced_ha
[admin:10-10-1-1]: cloud:azure_configuration> availability_zones 1
[admin:10-10-1-1]: cloud:azure_configuration> availability_zones 2
[admin:10-10-1-1]: cloud:azure_configuration> availability_zones 3
[admin:10-10-1-1]: cloud:azure_configuration> save
[admin:10-10-1-1]: cloud> save

3 つのアベイラビリティ ゾーンを構成した後の出力は次のとおりです。

|   use_enhanced_ha            | True                                                                             |
|   use_managed_disks          | True                                                                             |
|   availability_zones[1]      | 1                                                                                |
|   availability_zones[2]      | 2                                                                                |
|   availability_zones[3]      | 3                                                                                |
|   use_standard_alb           | False
注:

availability_zones 構成が上記とまったく同じであることを確認します。availability_zones に誤った値を追加すると、SE の作成に失敗します。

Advanced Load Balancer の設定

基本的な ALB と同様に、クラウド コネクタは、SE グループごとに 1 つの標準 SKU 内部 ALB と 1 つの外部 ALB を作成します。各仮想サービスには、1 つの VIP とオプションのパブリック IP アドレスがあります。サービス エンジン仮想マシンは、個々のアベイラビリティ ゾーンに作成されます。各仮想サービスは、少なくとも 2 つの AZ に配置されます。標準 SKU ALB を作成するクラウド コネクタは、Azure AZ 全体で可用性を提供します。標準の ALB では、パブリック IP アドレスのトラフィック インフローを許可するようにネットワーク セキュリティ グループ (NSG) を明示的に構成する必要があります。

Azure のネットワーク セキュリティ グループ (NSG) の作成に採用されたスキームを次に示します。



ネットワーク セキュリティ グループの設定

クラウド コネクタは、クラウドごとに 1 つの NSG を作成し、そのクラウドで作成された各 SE NIC に関連付けます。デフォルトでは、NSG には次のルールが構成されています。



これらのルールにより、仮想ネットワークへのすべての受信トラフィックと送信トラフィックが許可されます。Azure Load Balancer は仮想マシンをプローブでき、仮想マシンはインターネットにアクセスできます。

これに加えて、パブリック IP アドレスが構成されている場合、cloud_connector は、パブリック IP アドレスごとに 1 つのルールをこの NSG に追加します。これにより、任意のソースから仮想サービスで構成された public IP:port への受信トラフィックが許可されます。これらのルールの優先度は 100 から始まります。

次に、構成後の NSG 受信ルールの例を示します。

Azure は、パブリック IP アドレスの数に対応するために、NSG ごとに最大 500 個のルールをサポートします。

設定の順序は次のとおりです。

  1. NSG の作成:クラウドの最初の SE が作成されると、クラウドごとに 1 つの NSG が作成されます。

  2. NSG の NIC への関連付け:サービス エンジンが作成されると、NSG は NIC の作成時に SE NIC に関連付けられます。これにより、NIC が NSG を作成することが保証されます。

  3. NSG ルールの作成:パブリック IP アドレスを持つ仮想サービスが作成され、attach_ip 呼び出しが cloud_connector に発行されると、そのパブリック IP アドレスのルールが NSG で構成されます。ルールには、すべてのポート(またはポートの範囲)が仮想サービスの一部として構成されています。

  4. NSG ルールの削除:パブリック IP アドレスが削除されると、定期的なガベージ コレクション サイクルの一環として、対応する NSG ルールが NSG から削除されます。

  5. NSG の削除:クラウドが削除されると NSG が削除されます。