デフォルトでは、内部パススルー ネットワーク ロードバランサは、クライアントとバックエンドが配置されているゾーンを考慮せずに、新しい接続を適格なバックエンドに分散します。
ゾーン アフィニティを使用すると、ロードバランサは、特定のクライアント VM から、クライアント VM のゾーンにある適格なバックエンドの変更後のセットに新しい接続を分散できます。可能な限りトラフィックをゾーン内に保持してゾーン間のトラフィックを制限すると、ゾーン間のデータ転送コストが削減され、レイテンシが短縮され、パフォーマンスが向上します。また、マルチゾーン アーキテクチャのメリットも維持されます。
ゾーン アフィニティは、内部パススルー ネットワーク ロードバランサのバックエンド サービスで構成されます。ロードバランサは、さまざまなゾーン アフィニティ オプションをサポートしています。各オプションで、互換性のあるクライアントと同じゾーン内の適格なバックエンドに新しい接続をルーティングする際の優先度が異なります。ロードバランサの接続トラッキング テーブルにある確立済みの接続は、ゾーン アフィニティの影響を受けません。
機能の互換性
ゾーン アフィニティを有効にする前に、ゾーン アフィニティでサポートされている内部パススルー ネットワーク ロードバランサの機能を理解しておく必要があります。
サポートされている機能
- 静的ルートのネクストホップ
- ポリシーベースのルートのネクストホップ
- フェイルオーバー
- Private Service Connect の公開済みサービス。ゾーン アフィニティは、公開されたサービス プロデューサーが内部パススルー ネットワーク ロードバランサを使用する Private Service Connect エンドポイントにパケットを送信する互換性のあるクライアントでサポートされています。
対応していない機能
ゾーン アフィニティは、次のように構成された内部パススルー ネットワーク ロードバランサと互換性がありません。
- バックエンドのサブセット化
- Packet Mirroring のコレクタの宛先
- Network Security Integration のデプロイ - インバンドまたはアウトオブバンド。ネットワーク セキュリティ統合でゾーン アフィニティを使用すると、パケットがドロップします。
互換性のあるクライアント
ゾーン アフィニティは、ロードバランサと同じリージョンにある VM クライアントでのみ可能です。ゾーン アフィニティは、次のクライアントと互換性がありません。これらのクライアントは常に、ゾーン アフィニティが無効になっている場合と同様に動作します。
Cloud VPN トンネルと Cloud Interconnect VLAN アタッチメントを介して接続されたクライアント: Cloud VPN トンネルと Cloud Interconnect VLAN アタッチメントは、ゾーンリソースではなくリージョン リソースです。Cloud VPN トンネルまたは VLAN アタッチメントを介して転送されるパケットは、ロードバランサと同じリージョンにあるかどうかに関係なく、ゾーン アフィニティをサポートしません。
ロードバランサのリージョンと一致しないリージョンのクライアント VM: グローバル アクセスが有効になっている場合、1 つのリージョンにある内部パススルー ネットワーク ロードバランサには、他のすべてのリージョンのクライアントからアクセスできます。クライアント VM がロードバランサのリージョンとは異なるリージョンにある場合、クライアント VM はロードバランサのバックエンドと共通のゾーンを共有しません。
ネクストホップ内部パススルー ネットワーク ロードバランサとの互換性
ゾーン アフィニティは、静的ルートのネクストホップとして使用される内部パススルー ネットワーク ロードバランサに対して有効にできますが、一般に、ファイアウォールなどの仮想アプライアンスが並列に構成され、ロード バランシング エンティティがファイアウォールの両側に配置されるステートフル アーキテクチャでは推奨されません。
詳細については、ネクストホップとしての内部パススルー ネットワーク ロードバランサのガイドの要件をご覧ください。
ゾーン アフィニティ オプション
内部パススルー ネットワーク ロードバランサは、次のゾーン アフィニティ オプションをサポートしています。
ZONAL_AFFINITY_DISABLED(デフォルト): ゾーン アフィニティは無効になっています。ロードバランサは、元の適格なバックエンドのセットを変更せずに、新しい接続に適格なバックエンドを選択します。ZONAL_AFFINITY_STAY_WITHIN_ZONE: ゾーン アフィニティが有効になっています。ゾーン一致が発生すると、ロードバランサは異常なバックエンドを使用することになっても、トラフィックをクライアントのゾーン内に保持します。このオプションの詳細については、ZONAL_AFFINITY_STAY_WITHIN_ZONEの仕組みをご覧ください。ZONAL_AFFINITY_SPILL_CROSS_ZONE: ゾーン アフィニティが有効になっています。ゾーン一致が発生すると、ロードバランサは新しい接続をクライアントのゾーン内で分散するか、他のゾーンにスピルオーバーすることを許可します。スピルオーバーは、スピルオーバー率によって制御されます。このオプションの詳細については、ZONAL_AFFINITY_SPILL_CROSS_ZONEとスピルオーバー率の仕組みをご覧ください。
内部パススルー ネットワーク ロードバランサのバックエンド サービスでゾーン アフィニティを構成する方法については、ゾーン アフィニティを使用するをご覧ください。
ゾーン アフィニティの仕組み
以降のセクションでは、ゾーン アフィニティの仕組みについて詳しく説明します。これらの詳細を理解しなくてもゾーン アフィニティを構成できますが、エッジケースと正確なトラフィック分配動作を理解するのに役立ちます。
具体的には、次の内容について説明します。
ロードバランサがゾーン一致を判断する方法。
さまざまな構成オプションの詳細なゾーン アフィニティ ロジック。
さまざまなタイプのバックエンド
ゾーン アフィニティは、ロードバランサの元の適格なバックエンドと構成済みのバックエンドに基づいて、変更された適格なバックエンドのセットを作成します。ゾーン アフィニティがこの変更を行う方法を説明するために、5 つの異なるバックエンド セットを正確に定義します。このドキュメントでは、ゾーン アフィニティの仕組みについて説明する際に、以降のセクションで次の用語を使用します。
入力セット
構成済みのバックエンド: ロードバランサのバックエンド サービスの一部であるすべてのバックエンドのセット。これには、すべてのプライマリ バックエンドが含まれます。フェイルオーバー機能が有効になっている場合は、すべてのプライマリ バックエンドとすべてのフェイルオーバー バックエンドが含まれます。
元の適格なバックエンド: 新しい接続の受信に適格な構成済みバックエンドのサブセット。適格なバックエンドの元のセットは、バックエンドの選択と接続トラッキング プロセスの適格なバックエンドの識別ステップで生成されます。
中間セット
ゾーン一致テスト バックエンド: ゾーン一致のテストに使用される、構成済みのバックエンドのサブセット。構成されたバックエンドと元の適格なバックエンドの両方で、どの VM がゾーン一致テスト バックエンドであるかが決まります。
ゾーン一致バックエンド: 互換性のあるクライアントと同じゾーンにあるゾーン一致テスト バックエンドのサブセット。
アウトプット セット
- 変更された対象バックエンド: 構成されたゾーン アフィニティのタイプとスピルオーバー率に応じて、変更された対象バックエンドは、元の対象バックエンドと同じ場合もあれば、元の対象バックエンドのサブセットである場合もあれば、元の対象バックエンドとは異なる場合もあります。このセットは、構成されたゾーン アフィニティを提供するために使用されます。
ゾーン一致
ゾーン一致は、ゾーン アフィニティがトリガーされる条件を表します。ロードバランサは、構成されたゾーン アフィニティを提供するために、対象となるバックエンドの元のセットを変更する場合があります。適格なバックエンドの元のセットの変更は、ロードバランサが新しい接続に適格なバックエンドを選択した後に行われます。
ゾーン アフィニティ ロジックをトリガーするには、次のイベント シーケンスが発生する必要があります。
ゾーン アフィニティを有効にする必要があります。
ゾーン アフィニティが有効になっている場合は、次のステップに進みます。
クライアントが互換性のあるクライアントかどうかを判断します。
クライアントが互換性がある場合は、次のステップに進みます。
ゾーン一致が発生するかどうかを判断します。
ゾーン一致とは、クライアント VM が、ゾーン一致テスト バックエンドを少なくとも 1 つ含むゾーンにあることを意味します。ゾーン一致テスト バックエンドは、元の適格なバックエンドに基づいて構成されたバックエンドのセットです。詳細については、ゾーン マッチ条件をご覧ください。
次のいずれかに該当する場合、ゾーン一致は発生しません。
- ゾーン アフィニティが無効になっている
- 互換性のあるクライアントではない
ゾーン アフィニティ ロジックを適用します。
ゾーン一致条件
ゾーン一致が発生するには、ゾーン一致テスト バックエンドのインスタンスまたはエンドポイントの少なくとも 1 つが、互換性のあるクライアントと同じゾーンに存在する必要があります。構成済みのバックエンドと元の適格なバックエンドの両方が、ゾーン一致テスト バックエンドを決定するために使用される入力です。
| 適格な元のバックエンド | ゾーン一致テスト バックエンド |
|---|---|
| 正常なすべてのプライマリ バックエンド |
構成済みのすべてのプライマリ バックエンド 構成済みのプライマリ バックエンドは、すべて正常な場合もあれば、正常なものと異常なものが混在している場合もあります。 |
| 正常なすべてのフェイルオーバー バックエンド |
構成されたすべてのフェイルオーバー バックエンド 構成されたフェイルオーバー バックエンドは、すべて正常である場合と、正常なバックエンドと異常なバックエンドの組み合わせである場合があります。 |
| 異常なすべてのプライマリ バックエンド |
構成済みのすべてのプライマリ バックエンド 元の適格なバックエンドがすべて異常なプライマリ バックエンドである場合、構成済みのプライマリ バックエンドはすべて異常です。 |
ゾーン一致の例
ゾーン一致が発生するかどうかを理解するには、内部パススルー ネットワーク ロードバランサの次の設定を検討してください。
- プライマリ バックエンド: ゾーン A とゾーン B
- フェイルオーバー バックエンド: ゾーン C と D
- クライアント VM のロケーション: ゾーン A
- ゾーン アフィニティが有効になっている
- デフォルトのフェイルオーバー ポリシーが存在する
シナリオ 1:
- 元の適格なバックエンド: すべての正常なプライマリ バックエンド(ゾーン A とゾーン B)
- ゾーン一致テスト バックエンド: 構成済みのすべてのプライマリ バックエンド(ゾーン A とゾーン B)
- ゾーンの一致はありますか?: はい。この場合、クライアント VM はゾーン一致テスト バックエンドと同じゾーンにあるため、ゾーン一致があります。
シナリオ 2:
- 元の適格なバックエンド: すべての正常なフェイルオーバー バックエンド(ゾーン C と D)
- ゾーン一致テスト バックエンド: 構成済みのすべてのフェイルオーバー バックエンド(ゾーン C と D)
- ゾーンの一致はありますか?: いいえ。ゾーン一致が発生するには、クライアント VM が、ゾーン一致テスト バックエンドのセットから少なくとも 1 つのバックエンドを含むゾーンに存在する必要があります。この場合、クライアントはゾーン A にあり、ゾーン一致テスト バックエンドはゾーン C と D にあります。
ゾーン一致が発生したら、次のセクションで説明するようにゾーン アフィニティ ロジックを適用します。
ゾーン アフィニティ ロジック
ゾーン一致が発生した場合は、構成されているゾーン アフィニティ オプションに応じてゾーン アフィニティ ロジックを適用します。ゾーン アフィニティを有効にするオプションは次のとおりです。
ZONAL_AFFINITY_STAY_WITHIN_ZONEZONAL_AFFINITY_SPILL_CROSS_ZONE(スピルオーバー率が0)ZONAL_AFFINITY_SPILL_CROSS_ZONE(スピルオーバー率が 0 以外)
ゾーン一致が発生した場合、構成されているゾーン アフィニティ オプションのタイプに応じて、変更された適格なバックエンドは、元の適格なバックエンドと同じ場合も、元の適格なバックエンドのサブセットの場合も、元の適格なバックエンドと異なる場合もあります。
ZONAL_AFFINITY_STAY_WITHIN_ZONE の仕組み
ゾーン アフィニティが ZONAL_AFFINITY_STAY_WITHIN_ZONE に設定され、ゾーン一致が発生した場合、ロードバランサは新しい接続を修正された適格なバックエンドに分散します。変更された適格なバックエンドは、元の適格なバックエンドと同じ場合もあれば、元の適格なバックエンドのサブセットの場合もあれば、元の適格なバックエンドと異なる場合もあります。
変更された適格なバックエンドを作成するために、ロードバランサは次のプロセスを使用します。
ゾーン一致条件で特定されたゾーン一致テスト バックエンドから開始します。
クライアントと同じゾーンにないバックエンドをすべて削除します。これにより、ゾーンで一致するバックエンドのセットが取得されます。ゾーン一致が発生しているため、このセットは常に空ではありません。
ゾーン一致バックエンドと元の適格なバックエンドの共通部分を計算します。この交差は空の場合と空でない場合があります。
共通部分が空でない場合、変更された適格なバックエンドは共通部分のセットになります。変更された適格なバックエンドは、元の適格なバックエンドと同じ場合もあれば、変更された適格なバックエンドが元の適格なバックエンドのサブセットである場合もあります。
共通部分が空の場合、変更された適格なバックエンドはゾーン一致バックエンド自体であり、常に元の適格なバックエンドとは異なります。この状況では、すべての変更された適格なバックエンドが異常です。
次の表に、ゾーン アフィニティ オプションが ZONAL_AFFINITY_STAY_WITHIN_ZONE の場合に、変更された適格なバックエンドのセットを作成するプロセスの概要を示します。このゾーン アフィニティ オプションでは、異常なバックエンドを使用することになっても、クライアントのゾーンのバックエンドが優先されます。
| 元の適格なバックエンド(A) | ゾーン一致テスト バックエンド(B) | ゾーン一致バックエンド(C) | 積集合(A∩C) | 変更された対象バックエンド |
|---|---|---|---|---|
| 正常なすべてのプライマリ バックエンド |
構成済みのすべてのプライマリ バックエンド ゾーン一致テスト バックエンドは、すべて正常な場合もあれば、正常と異常が混在している場合もあります。 |
クライアントのゾーンにあるすべてのプライマリ バックエンド ゾーンで一致したバックエンドは、すべて正常、すべて異常、または正常と異常の組み合わせである可能性があります。 |
クライアントのゾーンにある正常なすべてのプライマリ バックエンド |
交差が空でない: 変更された適格なバックエンドは、クライアントのゾーンにあるすべての正常なプライマリ バックエンドです。 変更された適格なバックエンドは、元の適格なバックエンドと同じ場合もあれば、元の適格なバックエンドのサブセットの場合もあります。 交差が空の場合: 変更された適格なバックエンドは、クライアントのゾーンにあるすべての異常なプライマリ バックエンドです。 変更された適格なバックエンドは、クライアントのゾーンにあるすべてのプライマリ バックエンドであるゾーン一致バックエンドと同じです。ただし、元の適格なバックエンドとの共通部分が空であるため、これらのバックエンドはすべて異常です。 |
| 正常なすべてのフェイルオーバー バックエンド |
構成されたすべてのフェイルオーバー バックエンド ゾーン一致テスト バックエンドは、すべて正常である場合と、正常と異常が混在している場合があります。 |
クライアントのゾーンにあるすべてのフェイルオーバー バックエンド ゾーンで一致したバックエンドは、すべて正常、すべて異常、または正常と異常の組み合わせである可能性があります。 |
クライアントのゾーン内の正常なすべてのフェイルオーバー バックエンド |
交差が空でない: 変更された適格なバックエンドは、クライアントのゾーンにあるすべての正常なフェイルオーバー バックエンドです。 変更された適格なバックエンドは、元の適格なバックエンドと同じ場合もあれば、元の適格なバックエンドのサブセットの場合もあります。 交差が空の場合: 変更された適格なバックエンドは、クライアントのゾーンにあるすべての異常なフェイルオーバー バックエンドです。 変更された適格なバックエンドは、ゾーン一致バックエンドと同じです。これは、クライアントのゾーンにあるすべてのフェイルオーバー バックエンドです。ただし、元の適格なバックエンドとの共通部分が空であるため、これらのバックエンドはすべて異常です。 |
| 異常なすべてのプライマリ バックエンド |
構成済みのすべてのプライマリ バックエンド 元の適格なバックエンドがすべて異常なプライマリ バックエンドの場合、ゾーン一致テスト バックエンドは定義上すべて異常です。 |
クライアントのゾーンにあるすべての異常なプライマリ バックエンド |
クライアントのゾーンにあるすべての異常なプライマリ バックエンド |
交差は常に空ではない: 変更された適格なバックエンドは、クライアントのゾーンにあるすべての異常なプライマリ バックエンドです。 変更された適格なバックエンドは、元の適格なバックエンドと同じ場合もあれば、元の適格なバックエンドのサブセットの場合もあります。 |
ZONAL_AFFINITY_SPILL_CROSS_ZONE とスピルオーバー率の仕組み
ゾーン アフィニティが ZONAL_AFFINITY_SPILL_CROSS_ZONE に設定され、ゾーン一致が発生した場合、ロードバランサは新しい接続を修正された適格なバックエンドに分散します。変更された適格なバックエンドは、元の適格なバックエンドと同じ場合もあれば、元の適格なバックエンドのサブセットの場合もあります。
変更された適格なバックエンドが元の適格なバックエンドと同じ場合、新しい接続はクライアントのゾーン内の適格なバックエンドに送信されるか、任意のゾーン内の適格なバックエンドに送信される可能性があります(「スピルオーバー」)。この分散は、構成可能なスピルオーバー率によって異なります。
構成可能なスピルオーバー率は、トラフィックをクライアントのゾーン内に維持するかどうかのしきい値を示します。スピルオーバー率の値は 0.0~1.0 の範囲(両端を含む)で指定できます。ZONAL_AFFINITY_SPILL_CROSS_ZONE の構成時にスピルオーバー率を指定しない場合、 Cloud de Confiance はデフォルト値の 0.0 を使用します。
スピルオーバー率が 0 の場合
構成されたスピルオーバー比率が 0.0 の場合、ロードバランサは次のプロセスを使用して変更された適格なバックエンドを作成します。
ゾーン一致条件で特定されたゾーン一致テスト バックエンドから開始します。
クライアントと同じゾーンにないバックエンドをすべて削除します。これにより、ゾーン一致バックエンドのセットが取得されます。ゾーン一致が発生しているため、このセットは常に空ではありません。
ゾーン一致バックエンドと元の適格なバックエンドの共通部分を計算します。この交差は空の場合と空でない場合があります。
この共通部分が空でない場合、変更された有効なバックエンドは共通部分のセットになります。変更された適格なバックエンドは、元の適格なバックエンドと同じ場合もあれば、変更された適格なバックエンドが元の適格なバックエンドのサブセットである場合もあります。
共通部分が空の場合、変更された適格なバックエンドは元の適格なバックエンドと同じになります。
次の表に、ゾーン アフィニティ オプションが ZONAL_AFFINITY_SPILL_CROSS_ZONE で、構成済みのスピルオーバー率が 0.0 の場合に、変更された適格なバックエンドのセットを作成するプロセスを示します。
| 元の適格なバックエンド(A) | ゾーン一致テスト バックエンド(B) | ゾーン一致バックエンド(C) | 積集合(A∩C) | 変更された対象バックエンド |
|---|---|---|---|---|
| 正常なすべてのプライマリ バックエンド |
構成済みのすべてのプライマリ バックエンド ゾーン一致テスト バックエンドは、すべて正常な場合もあれば、正常と異常が混在している場合もあります。 |
クライアントのゾーンにあるすべてのプライマリ バックエンド ゾーンで一致したバックエンドは、すべて正常、すべて異常、または正常と異常の組み合わせである可能性があります。 |
クライアントのゾーンにある正常なすべてのプライマリ バックエンド |
交差が空でない: 変更された適格なバックエンドは、クライアントのゾーンにあるすべての正常なプライマリ バックエンドです。 新しい接続はクライアントのゾーン内で分散されます。変更された適格なバックエンドは、元の適格なバックエンドと同じ場合もあれば、元の適格なバックエンドのサブセットの場合もあります。 交差が空: 変更された適格なバックエンドは、元の適格なバックエンドと同じです。 新しい接続は、クライアントのゾーン内または他のゾーンに分散される可能性があります。 |
| 正常なすべてのフェイルオーバー バックエンド |
構成されたすべてのフェイルオーバー バックエンド ゾーン一致テスト バックエンドは、すべて正常である場合と、正常と異常が混在している場合があります。 |
クライアントのゾーンにあるすべてのフェイルオーバー バックエンド ゾーンで一致したバックエンドは、すべて正常、すべて異常、または正常と異常の組み合わせである可能性があります。 |
クライアントのゾーン内の正常なすべてのフェイルオーバー バックエンド |
交差が空でない: 変更された適格なバックエンドは、クライアントのゾーンにあるすべての正常なフェイルオーバー バックエンドです。 新しい接続はクライアントのゾーン内で分散されます。変更された適格なバックエンドは、元の適格なバックエンドと同じ場合もあれば、元の適格なバックエンドのサブセットの場合もあります。 交差が空: 変更された適格なバックエンドは、元の適格なバックエンドと同じです。 新しい接続は、クライアントのゾーン内または他のゾーンに分散される可能性があります。 |
| 異常なすべてのプライマリ バックエンド |
構成済みのすべてのプライマリ バックエンド 元の適格なバックエンドがすべて異常なプライマリ バックエンドの場合、ゾーン一致テスト バックエンドは定義上すべて異常です。 |
クライアントのゾーンにあるすべての異常なプライマリ バックエンド |
クライアントのゾーンにあるすべての異常なプライマリ バックエンド |
交差は常に空ではない: 変更された適格なバックエンドは、クライアントのゾーンにあるすべての異常なプライマリ バックエンドです。 新しい接続はクライアントのゾーン内で分散されます。変更された適格なバックエンドは、元の適格なバックエンドと同じ場合もあれば、元の適格なバックエンドのサブセットの場合もあります。 |
0 以外のスピルオーバー率
構成済みのスピルオーバー率が 0.0 より大きく 1.0 以下の場合、ロードバランサは次のプロセスを使用して、変更された対象バックエンドを作成します。
ゾーン一致条件で特定されたゾーン一致テスト バックエンドから開始します。
クライアントと同じゾーンにないバックエンドをすべて削除します。これにより、ゾーン一致バックエンドのセットが取得されます。ゾーン一致が発生しているため、このセットは常に空ではありません。
ゾーン一致バックエンドと元の適格なバックエンドの共通部分を計算します。このセットは空の場合も空でない場合もあります。
次の比率を計算します。
$$ \frac{\text{count}(\text{zonal matched backends} \; \cap \; \text{original eligible backends})}{\text{count}(\text{zonal matched backends})} $$交差セットが空の場合、計算された比率は常にゼロになります。
計算された比率を使用して、変更された対象バックエンドを決定します。
計算された比率がスピルオーバー率以上の場合、変更された適格なバックエンドは交差セットになります。変更された適格なバックエンドは、元の適格なバックエンドと同じ場合もあれば、元の適格なバックエンドのサブセットの場合もあります。
計算された比率がスピルオーバー率よりも小さい場合、変更された適格なバックエンドは元の適格なバックエンドと同じです。
次の表に、ゾーン アフィニティ オプションが ZONAL_AFFINITY_SPILL_CROSS_ZONE オプションで、構成済みのスピルオーバー率が 0.0 以外の場合に、変更された対象バックエンドのセットを作成するプロセスをまとめます。
| 元の適格なバックエンド(A) | ゾーン一致テスト バックエンド(B) | ゾーン一致バックエンド(C) | 積集合(A∩C) | 変更された対象バックエンド |
|---|---|---|---|---|
| 正常なすべてのプライマリ バックエンド |
構成済みのすべてのプライマリ バックエンド ゾーン一致テスト バックエンドは、すべて正常な場合もあれば、正常と異常が混在している場合もあります。 |
クライアントのゾーンにあるすべてのプライマリ バックエンド ゾーンで一致したバックエンドは、すべて正常、すべて異常、または正常と異常の組み合わせである可能性があります。 |
クライアントのゾーンにある正常なすべてのプライマリ バックエンド |
計算された比率 ≥ スピルオーバー率: 変更された適格なバックエンドは、クライアントのゾーン内の正常なプライマリ バックエンドすべてです。 新しい接続はクライアントのゾーン内で分散されます。変更された適格なバックエンドは、元の適格なバックエンドと同じ場合もあれば、元の適格なバックエンドのサブセットの場合もあります。 計算された比率 < スピルオーバー率: 変更された対象バックエンドは、元の対象バックエンドと同じです。 新しい接続は、クライアントのゾーン内または他のゾーンに分散される可能性があります。 |
| 正常なすべてのフェイルオーバー バックエンド |
構成されたすべてのフェイルオーバー バックエンド ゾーン一致テスト バックエンドは、すべて正常である場合と、正常と異常が混在している場合があります。 |
クライアントのゾーンにあるすべてのフェイルオーバー バックエンド ゾーンで一致したバックエンドは、すべて正常、すべて異常、または正常と異常の組み合わせである可能性があります。 |
クライアントのゾーン内の正常なすべてのフェイルオーバー バックエンド |
計算された比率 ≥ スピルオーバー率: 変更された適格なバックエンドは、クライアントのゾーン内の正常なフェイルオーバー バックエンドすべてです。 新しい接続はクライアントのゾーン内で分散されます。変更された適格なバックエンドは、元の適格なバックエンドと同じ場合もあれば、元の適格なバックエンドのサブセットの場合もあります。 計算された比率 < スピルオーバー率: 変更された対象バックエンドは、元の対象バックエンドと同じです。 新しい接続は、クライアントのゾーン内または他のゾーンに分散される可能性があります。 |
| 異常なすべてのプライマリ バックエンド |
構成済みのすべてのプライマリ バックエンド 元の適格なバックエンドがすべて異常なプライマリ バックエンドの場合、ゾーン一致テスト バックエンドは定義上すべて異常です。 |
クライアントのゾーンにあるすべての異常なプライマリ バックエンド |
クライアントのゾーンにあるすべての異常なプライマリ バックエンド |
計算された比率が常にスピルオーバー率以上である: 変更された適格なバックエンドは、クライアントのゾーンにあるすべての異常なプライマリ バックエンドです。 新しい接続はクライアントのゾーン内で分散されます。変更された適格なバックエンドは、元の適格なバックエンドと同じ場合もあれば、元の適格なバックエンドのサブセットの場合もあります。 |
スピルオーバー率の例
次の例は、ZONAL_AFFINITY_SPILL_CROSS_ZONE の仕組みを示しています。
スピルオーバー率が
1.0の場合は、次のようになります。- ゾーン一致バックエンドと元の適格なバックエンドの共通部分がゾーン一致バックエンドと同じセットの場合、変更された適格なバックエンドは共通部分のセットになります。
- ゾーン一致バックエンドと元の適格なバックエンドの共通部分がゾーン一致バックエンドと同じセットでない場合、変更された適格なバックエンドは元の適格なバックエンドと同じになります。
スピルオーバー率が
0.8の場合は、次のようになります。- ゾーン一致バックエンドと元の適格なバックエンドの交差部分にあるバックエンドの数が、ゾーン一致バックエンドの数の 80% 以上である場合、変更された適格なバックエンドはその交差部分のセットです。
- ゾーン一致バックエンドと元の適格なバックエンドの共通部分にあるバックエンドの数が、ゾーン一致バックエンドの数の 80% 未満の場合、変更された適格なバックエンドは元の適格なバックエンドと同じになります。
スピルオーバー率が
0.0の場合は、次のようになります。- ゾーン一致バックエンドと元の適格なバックエンドの交差が空でない場合、変更された適格なバックエンドは交差セットになります。
- ゾーン一致バックエンドと元の適格なバックエンドの共通部分が空の場合、変更後の適格なバックエンドは元の適格なバックエンドと同じになります。
スピルオーバー比率が 0.8 の ZONAL_AFFINITY_SPILL_CROSS_ZONE ゾーン アフィニティ オプションで内部パススルー ネットワーク ロードバランサが構成されている次の設定を検討します。
- 構成されたバックエンド: 10 個のプライマリ バックエンド(ゾーン 1 に 5 個、ゾーン 2 に 5 個)
- 元の適格なバックエンド: すべての正常なプライマリ バックエンド(8 つのバックエンド - ゾーン 1 に 5 つ、ゾーン 2 に 3 つ)
- ゾーン一致テスト バックエンド: 構成済みの 10 個のプライマリ バックエンドすべて
シナリオ A: ゾーン 1 にある互換性のあるクライアント
- ゾーン一致バックエンド: ゾーン 1 に 5 つのバックエンド。
- 交差: ゾーンで一致したバックエンドと元の適格なバックエンドの交差は、ゾーン 1 の 5 つの正常なバックエンドで構成されます。
- 計算された比率: 5 / 5 = 1.0
- 結果: 計算された比率 1.0 ≥ 0.8 であるため、変更された適格なバックエンドは交差セット(クライアントのゾーン 1 の 5 つの正常なプライマリ バックエンドすべて)に含まれます。新しい接続は、クライアントのゾーン内でのみ分散されます。
シナリオ B: ゾーン 2 にある互換性のあるクライアント
- ゾーンで一致したバックエンド: ゾーン 2 の 5 つのバックエンド。
- 交差: ゾーンで一致したバックエンドと元の適格なバックエンドの交差は、ゾーン 2 の 3 つの正常なバックエンドで構成されます。
- 計算された比率: 3 / 5 = 0.6
- 結果: 計算された比率 0.6 < 0.8 であるため、変更された対象バックエンドは元の対象バックエンドです。元の適格なバックエンドは、8 つの正常なバックエンド(ゾーン 1 に 5 つ、ゾーン 2 に 3 つ)です。新しい接続は、ゾーン 1 またはゾーン 2 に分散されます。
次のステップ
- 内部パススルー ネットワーク ロードバランサに Cloud Monitoring を構成する。内部パススルー ネットワーク ロードバランサのロギングとモニタリングをご覧ください。
- 内部パススルー ネットワーク ロードバランサの問題をトラブルシューティングする。内部パススルー ネットワーク ロードバランサをトラブルシューティングするをご覧ください。