ホットスタンバイ(ホットスタンバイ)とは | 意味や読み方など丁寧でわかりやすい用語解説
ホットスタンバイ(ホットスタンバイ)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。
読み方
日本語表記
ホットスタンバイ (ホットスタンバイ)
英語表記
Hot Standby (ホットスタンバイ)
用語解説
ホットスタンバイとは、システム障害発生時にサービスの中断を最小限に抑え、継続的な稼働を保証するための高可用性(High Availability: HA)構成の一つである。メインで稼働しているシステム(アクティブ系)とは別に、常に稼働可能な状態にある待機システム(スタンバイ系)を用意し、アクティブ系に障害が発生した場合に、スタンバイ系が速やかに処理を引き継ぐ仕組みを指す。この構成は、特に止まることの許されない基幹システムや、Webサービスなど、事業継続性を確保する上で非常に重要な要件を持つシステムにおいて広く採用されている技術である。
ホットスタンバイ構成におけるスタンバイ系システムは、単に電源が入っているだけでなく、OSが起動し、サービスを提供するアプリケーションも起動済みであり、いつでもアクティブ系から処理を引き継げる準備が整っている点が最大の特徴である。これにより、障害発生からサービス再開までの時間、すなわち目標復旧時間(RTO: Recovery Time Objective)を極めて短くできる。サービスの停止時間がほとんど発生しないか、ごく短時間で済むため、ユーザーへの影響を最小限に抑え、ビジネスの中断を防ぐことが可能となる。
具体的には、アクティブ系とスタンバイ系は、ネットワークを通じて常に互いの稼働状況を監視し合っている。この監視は「ハートビート」と呼ばれる定期的な信号の送受信によって行われることが一般的である。アクティブ系が正常であれば、定期的にハートビートを送信し続けるが、もし何らかの障害によりアクティブ系からハートビートが途絶えたり、システムのCPU使用率やメモリ使用率、ディスクI/Oなどの異常を示す兆候が検出されたりした場合、スタンバイ系はアクティブ系の障害と判断する。この障害検知の精度と速度が、ホットスタンバイシステムの信頼性を大きく左右する。障害が検出されると、スタンバイ系は自動的に処理の引き継ぎを開始する。この引き継ぎプロセスを「フェイルオーバー」と呼ぶ。フェイルオーバーが完了すると、それまでアクティブ系が担当していたIPアドレスや共有ストレージへのアクセス権などがスタンバイ系に引き継がれ、スタンバイ系が新たなアクティブ系としてサービス提供を開始する。この一連の動作は数秒から数十秒で完了することが多く、ユーザーからはサービスが一時的に途切れたように見えるか、ほとんど気づかれないうちに切り替わる場合もある。
フェイルオーバーを円滑に行うためには、アクティブ系で処理されたデータが、スタンバイ系にも常に最新の状態で同期されていることが不可欠である。このデータ同期には、リアルタイムまたはニアリアルタイムでのデータレプリケーション(複製)技術が用いられる。データベースの場合、アクティブ系での更新トランザクションログがほぼリアルタイムでスタンバイ系に転送され、スタンバイ系でそのログが適用されることで、両システム間のデータ整合性が保たれる。ファイルシステムの場合も同様に、ファイル更新内容が同期される。共有ストレージを使用する場合、アクティブ系とスタンバイ系の両方が同じストレージにアクセスできる構成にし、アクティブ系が書き込んだデータをスタンバイ系も即座に参照できるようにすることで、データ損失のリスクをさらに低減できる。これにより、フェイルオーバーが発生しても、ほとんどデータ損失なくサービスを継続することが可能となる。ただし、同期処理の瞬間に障害が発生した場合、ごくわずかなデータが失われる可能性はゼロではないが、その範囲は極めて限定的である。
ホットスタンバイは、計画的なメンテナンス時にも有効活用できる。例えば、アクティブ系のシステムやアプリケーションのアップデート、パッチ適用、ハードウェア交換などを行う際に、一時的にスタンバイ系をアクティブ系に切り替え(これをスイッチオーバーと呼ぶ)、メンテナンス作業が完了した後に再度元の構成に戻す(切り戻し)ことで、サービスの停止時間を最小限に抑えることができる。これにより、サービス提供者はメンテナンスによるサービス停止期間を顧客に明示することなく、システムの改善や強化を進めることが可能となる。
この構成の大きなメリットは、障害発生時のサービス停止時間を極限まで短縮できる点にある。これにより、ユーザーへの影響を最小限に抑え、ビジネスの中断を防ぎ、信頼性の高いサービス提供を継続できる。企業にとっては、システム停止によるビジネス機会の損失や信頼性の低下を防ぐ上で極めて有効な手段となる。
しかし、デメリットも存在する。システムを二重に用意し、かつ常に稼働させておくため、初期導入コストや運用コストは単一システムと比較して必然的に高くなる。高性能なサーバーやストレージ、高速なネットワークに加え、専用のクラスタリングソフトウェアやレプリケーションソフトウェアの導入が必要となる場合が多い。また、複雑な設定や監視が必要となり、運用管理の負担も増す可能性がある。特に、アクティブ系とスタンバイ系のデータ整合性を完全に維持するためには、高度な技術と慎重な設計が求められる。設定ミスやデータ同期の不具合は、重大なサービス停止やデータ破損につながる可能性があるため、熟練したエンジニアによる構築と運用が不可欠となる。
さらに、「スプリットブレイン」と呼ばれる問題への対策も重要となる。これは、ネットワーク障害などによってアクティブ系とスタンバイ系の間の通信が一時的に途絶え、両システムが互いに相手が停止したと誤認し、それぞれが独立してアクティブとして動作してしまう状態を指す。この状態に陥ると、同じデータに対して異なるシステムが同時に書き込みを行う可能性があり、データの不整合や破壊につながるため、システム全体を停止させるよりも危険な状況となる。この問題を回避するためには、共有ストレージのロック機構を利用したり、「クォーラムディスク」と呼ばれる特別なディスクを用いてどちらか一方が強制的にサービスを停止する仕組みを導入したり、あるいは第三の監視ノード(タイブレーカー)を設けてどちらが正当なアクティブであるかを判定させるなど、適切な対策が不可欠である。
ホットスタンバイは、単に機器を二重化するだけでなく、障害検知、データ同期、自動フェイルオーバーといった一連の高度な仕組みが連携して動作することで、極めて高い可用性を実現するシステム構築の基盤となる技術である。RTOの短縮を最優先とするシステム、例えば金融取引システムやオンラインショッピングサイト、ミッションクリティカルなデータベースなどにおいて特に威力を発揮する。コールドスタンバイ(待機系システムは電源オフの状態)やウォームスタンバイ(待機系はOS起動済みだがアプリケーションは停止状態)といった他の待機系構成と比較して、最もRTOが短く、サービス中断のリスクを最小化できるため、企業のIT戦略において不可欠な選択肢となっている。