過去問ドリル

LinuCレベル4 システムアーキテクト 可用性の設計 問7

可用性の設計/負荷分散と障害の局所化

東京と大阪の2拠点でWebサービスをアクティブ・アクティブで提供し、DNSベースの広域負荷分散で利用者を振り分けている。一方の拠点が障害で停止したとき、利用者の接続先をできるだけ早くもう一方の拠点へ切り替えたい。設計として最も適切なものはどれか。

当サイトのオリジナル問題(LinuCレベル4 システムアーキテクトの出題範囲「可用性の設計」に対応。実際の試験問題ではありません)

正解:B

解説

DNSベースの広域負荷分散では、DNSの応答で利用者の接続先を決めるため、障害時の切り替えには二つの要素が関わります。一つは停止した拠点のアドレスを応答から外すことで、監視ツールのヘルスチェック結果に連動してレコードを動的に変更します。もう一つはTTLで、リゾルバや端末がキャッシュした古い応答はTTLが切れるまで使われ続けるため、TTLを短くしておくことで切り替えの遅れを抑えられます。重み付きやジオロケーションといったルーティングポリシーは平常時の振り分け方を決めるもので、それだけでは障害拠点を除外しません。

選択肢ごとの解説

  • A誤り。TTLを長くするとキャッシュされた古い応答が長く使われ、停止した拠点へ接続し続ける時間が延びてしまいます。
  • B正しい。ヘルスチェック連動で停止拠点を応答から外し、短いTTLでキャッシュの残存時間を抑えることで、切り替えを早められます。
  • C誤り。比率を固定したままでは停止した拠点のアドレスも返し続けるため、半数の利用者が障害拠点へ接続してしまいます。
  • D誤り。平常時の近接性による振り分けには有効ですが、障害時にも最寄りの停止拠点を返し続けるため、切り替えが行われません。
LinuCレベル4 システムアーキテクトの問題を演習モードで解く