コンテンツにスキップ

フェーズ 3 — フェイルオーバー

フェーズ 3 は、フェーズ 1 のゾーンの上にヘルスチェック付きフェイルオーバーを追加します。F5 XC の DNS ロードバランサーは、プールのヘルス状態に基づいて名前に対して異なる応答を返すため、トラフィックは自動的に正常なプールに移動します。

DNS ロードバランサースタックは、3 つの F5 XC リソースとゾーン内の 1 つのレコードで構成されます。

リソース役割
xcsh_dns_lb_health_check各メンバーをプローブし(HTTP、HTTPS、TCP、ICMP、または UDP)、プールのヘルス状態を判定します
xcsh_dns_lb_poolロードバランシングモード(ROUND_ROBINPRIORITY など)とヘルスチェックへの参照を持つメンバーのセット
xcsh_dns_load_balancerリクエストごとにプールを選択するルール(フォールバックプール付き)
lb_recordxcsh_dns_zone 内)ゾーン内の名前を DNS ロードバランサーにバインドします

dns-lb モジュールはこれらを表現し、ゾーンモジュールはロードバランサーを指す lb_record エントリを持つように拡張されます — これにより、単一の terraform apply でフェイルオーバーパス全体が構築されます。

モジュールがリリースされると、フェイルオーバーデモでは以下を実施します。

  1. ヘルスチェックを使用して、DNS ロードバランサーの背後に 2 つのプール(プライマリとセカンダリ)をデプロイします。
  2. ロードバランシングされた名前を解決し、プライマリプールの応答が返されることを確認します。
  3. プライマリを非正常な状態にし、解決がセカンダリにフェイルオーバーすることを確認します — レディネスゲートは応答が変わるまで dig をポーリングします。
  4. プライマリを復元し、フェイルバックを確認します。

それまでは、フェーズ 4 — ティアダウンに進んで、フェーズ 1 のゾーンを削除してください。