ロード バランサーと可用性ゾーン

Azure Load Balancer は、可用性ゾーンのシナリオをサポートしています。 Standard Load Balancer を使用することで、リソースをゾーンに一致させて、複数のゾーンに分散させることにより、シナリオ全体の可用性を向上させることができます。 このドキュメントを読んで、これらの概念と基本的なシナリオの設計ガイダンスを理解してください

ロード バランサーには、ゾーン冗長、ゾーン、 または 非ゾーン を指定できます。 ロード バランサーのゾーン関連プロパティ (前述) を構成するには、必要なフロントエンドの適切な種類を選択します。

ゾーン冗長

可用性ゾーンのあるリージョンでは、Standard Load Balancer をゾーン冗長にすることができます。 このトラフィックは、1 つの IP アドレスによって行われます。

単一のフロントエンド IP アドレスは、ゾーンの障害が発生した後も存続します。 フロントエンド IP は、ゾーンに関係なく、すべての (影響を受けない) バックエンド プール メンバーに到達するために使用できます。 1 つまたは複数の可用性ゾーンで障害が発生しても対応可能であり、リージョン内に正常なゾーンが 1 つでも残っていれば、データ パスは存続します。

フロントエンドの IP アドレスは、複数の可用性ゾーンで複数の独立したインフラストラクチャ展開によって同時に処理されます。 再試行または再確立は、ゾーンの障害による影響を受けない他のゾーンで成功します。

Figure depicts a zone-redundant standard load balancer directing traffic in three different zones to three different subnets in a zone redundant configuration.

図:ゾーン冗長ロード バランサー

ゾーン ベース

単一ゾーンを保証されたフロントエンドにすることができます。これは、"ゾーン ベース" と呼ばれます。 このシナリオは、すべての受信または送信フローが、リージョン内の 1 つのゾーンによって処理されることを意味します。 フロントエンドは、ゾーンの正常性に左右されます。 データ パスは、それが保証されたゾーン以外のゾーンのエラーによっては影響を受けません。 ゾーン ベースのフロントエンドを使って、可用性ゾーンごとに IP アドレスを公開することができます。

さらに、各ゾーン内の負荷分散されたエンドポイントに対して、ゾーン フロントエンドを直接使用することもできます。 この構成を使ってゾーンごとに負荷分散されたエンドポイントを公開し、各ゾーンを個別に監視することができます。 パブリック エンドポイントの場合は、これらを Traffic Manager などの DNS 負荷分散製品と統合して、1 つの DNS 名を使用できます。

Figure depicts three zonal standard load balancers each directing traffic in a zone to three different subnets in a zonal configuration.

図:ゾーン ロード バランサー

パブリック ロード バランサー フロントエンドの場合は、パブリック IP に zones パラメーターを追加します。 このパブリック IP は、それぞれの規則で使用されるフロントエンド IP 構成によって参照されます。

内部ロード バランサー フロントエンドの場合は、内部ロード バランサーのフロントエンド IP 構成に zones パラメーターを追加します。 ゾーン フロントエンドは、サブネット内の IP アドレスを特定のゾーンに対して保証します。

設計上の考慮事項

Standard Load Balancer のゾーン関連プロパティについて理解したうえで、次の設計上の考慮事項について理解すると、高可用性を実現するための設計に役立ちます。

ゾーン障害の許容範囲

  • ゾーン冗長 のロード バランサーは、1 つの IP アドレスを持つ任意のゾーン内のゾーン リソースに対してサービスを提供できます。 IP は、リージョン内に正常なゾーンが少なくとも 1 つ残っている限り、1 つまたは複数のゾーンで障害があっても存続できます。
  • ゾーン フロントエンドは、単一のゾーンへのサービスの縮小であり、対応するゾーンの正常性に依存します。 デプロイ先のゾーンがダウンした場合、デプロイでその障害を回避することはできません。

運用環境のワークロードには、ゾーン冗長のロード バランサーを使用することをお勧めします。

コントロール プレーンとデータプレーンについての注意点

ゾーンの冗長性は、データ プレーンやコントロール プレーンがヒットレスであることを意味するものではありません。 ゾーン冗長なフローは任意のゾーンを使うことができ、ユーザーのフローはリージョン内で正常なすべてのゾーンを使います。 ゾーンで障害が発生した場合、正常なゾーンを使用しているトラフィック フローは影響を受けません。

ゾーンで障害が発生したときにゾーンを使用しているトラフィック フローは影響を受ける可能性がありますが、アプリケーションは復旧できます。 Azure がゾーンの障害に対して収束した場合、トラフィックは、再送信時にリージョン内の正常なゾーンで継続されます。

障害シナリオに対するアプリケーションの回復性を向上させるには、Azure クラウド設計パターンに関する記事を参照してください。

制限事項

  • 作成済みのリソースに対して、ゾーンを変更、更新、作成することはできません。

  • 作成済みのリソースをゾーン ベースからゾーン冗長に、またはその逆に変更することはできません。

次のステップ