【ふぇいるおーばー】

フェイルオーバー とは?

💡 障害時に「自動で予備に切り替え」てサービスを止めない仕組み
📌 このページのポイント
通常時 障害発生後 プライマリサーバー 稼 働 中 ─── ハートビート監視 ─── セカンダリサーバー 待 機 中 障害発生 プライマリサーバー 停 止 自動切り替え セカンダリサーバー 引き継ぎ完了 ダウンタイムを最小化し、サービスを継続する
障害時に自動的にバックアップ系に切り替わる
ひよこ ひよこ

フェイルオーバーって何?

ペンギン先生 ペンギン先生

メインのサーバが壊れたとき、自動でバックアップのサーバに切り替えてサービスを止めずに続ける仕組みだよ。「気づいたら切り替わっていた」というのが理想的なフェイルオーバー。

ひよこ ひよこ

アクティブ-スタンバイって何?

ペンギン先生 ペンギン先生

普段はメインのサーバだけ動かして、バックアップのサーバは待機状態(スタンバイ)にする構成。障害時にスタンバイが自動で起動・切り替わる。コストを抑えられるが切り替えに数十秒かかることがある。

ひよこ ひよこ

フェイルバックって何?

ペンギン先生 ペンギン先生

メインサーバが修復された後、バックアップから元のメインに戻すこと。フェイルオーバーの逆の操作。自動フェイルバックもあるけど、データの整合性確認のため手動で行うことも多い。

ひよこ ひよこ

フェイルオーバーの切り替え時間ってゼロにできるの?

ペンギン先生 ペンギン先生

完全にゼロにするのは難しいけど、アクティブ-アクティブ構成なら限りなくゼロに近づけられるよ。両方のサーバが同時にリクエストを処理していて、片方が落ちても残りが引き継ぐから、ユーザーはほぼ気づかない。ただしデータの同期やスプリットブレイン(両方がマスターだと主張する問題)への対策が必要だよ。

ひよこ ひよこ

クラウドだとフェイルオーバーはどう実現するの?

ペンギン先生 ペンギン先生

AWSならマルチAZ構成がフェイルオーバーの基本。RDSのマルチAZは別のアベイラビリティゾーンに自動でスタンバイを配置して、障害時に数分で切り替わる。さらにマルチリージョン構成にすれば、東京リージョン全体が落ちても大阪リージョンで継続できる。ただしリージョン間のデータ同期コストは高いから、RPO(許容データ損失量)とRTO(復旧目標時間)のバランスを見て設計するのが重要だよ。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
フェイルオーバーって出てきたら「障害発生時に自動で予備システムに切り替えてサービスを継続する仕組み」と思えばOK!
📖 おまけ:英語の意味
「Failover」 = 障害時の切り替え
💬 Fail(障害)over(移行)。フェイルバック(復旧後に元のシステムに戻すこと)とセットで考えることが多い
← 用語集にもどる