ビジネスで使用するサーバーやシステムは、基本的に常に稼働させ続ける必要があります。万が一停止などの問題が発生すると、業務に大きな影響を及ぼす恐れがあるためです。
サーバーやシステムのトラブルを防止し、ビジネスを円滑に進めるために有効なのが「フェイルオーバー」と呼ばれる機能です。
ここでは、フェイルオーバーの概要や、活用するメリットなどをご紹介します。
1 ビジネスにおいて欠かせない「システムの冗長性」
ビジネス用のサーバーやシステムを構築するうえで大切なのは、システムが故障・停止することなく、継続稼働できるようにすることです。
継続稼働が求められるシステムの例として、監視カメラを考えてみましょう。監視カメラのシステムに問題が発生すると、映像が撮影できない、データが保存されないなどのトラブルにつながります。
「犯罪が起きたので確認してみたら、映像データが残っていなかった」といった事態になると、監視カメラを設置している意味がなくなってしまうのです。
とはいえ、自然災害やサイバー攻撃、サーバーの物理的な故障など、どのようなタイミングでシステムに問題が起きるかはわかりません。
障害が発生してもシステムが安定稼働する状態を保ったり、停止時間を短くしたりするために、予備の装置を平常時から運用して、冗長化させたシステムを組むことが求められます。
システムの冗長化をするうえで有効なのが、「フェイルオーバー」という仕組みです。
2 フェイルオーバーとは
フェイルオーバー(Failover)とは、稼働中のサーバーやシステムに何らかの障害が発生した際に、待機している別のサーバーやシステムに自動で切り替える仕組みのことです。
システムの冗長化の手法には、主に可用性向上を目的にした「HAクラスタ」と、負荷分散を目的にした「LBクラスタ」の2つありますが、フェイルオーバーはHAクラスタのことを指します。
具体的には、稼働しているシステムに対して、すぐ稼働できる同等の予備システムを待機させておきます。稼働システムに何らかの問題が発生したら、すぐに自動で予備システムに切り替えてシステムを継続させるというのが、フェイルオーバーの特長です。
3 フェイルオーバーの種類
サーバーにおけるフェイルオーバーは、構成から大きく2種類に分けることができます。それぞれの特長は、以下のとおりです。
3-1 アクティブ・アクティブ構成
用意した2台のサーバーやシステムを、常時稼働させ続ける構成が「アクティブ・アクティブ構成」です。用意した全てのサーバーまたはシステムを動かし続けるので、トラブルがない時は処理の負荷を分散できます。
いずれかのシステムに障害が発生した時は、正常に稼働している残りのサーバー/システムによって処理を行います。
3-2 アクティブ・スタンバイ構成
アクティブ・アクティブ構成とは異なり、2台以上のサーバーやシステムを用意したうえで、1つを稼働(アクティブ)、それ以外は待機(スタンバイ)させることで、冗長性を確保する構成です。
一般的にフェイルオーバーというと、こちらの構成を指します。
4 フェイルオーバー機能を活用するメリット
フェイルオーバーは、常に稼働状態が続くサーバーやNASなどに欠かせない機能のひとつです。ここでは、フェイルオーバーを活用するメリットをご紹介します。
4-1 冗長性の確保
フェイルオーバーでは、サーバーが動作しているかどうかを、機器同士が監視し合っています。それぞれの機器がお互いを監視し合うことで、冗長性を確保しているのです。
また、特に高い可用性が求められるシステムにおいては、予備のシステムにも障害が発生するケースに備えなければいけません。そのため、予備システムを1つだけでなく、3つや4つほど設置する「カスケイド・フェイルオーバー」を採用するケースもあります。
4-2 システムの継続稼働
24時間365日稼働するシステムが一般化した近年は、万が一にもシステムがダウンするような状況は許されないものとなっています。
冗長性の確保の項目でも説明したとおり、フェイルオーバーでは機器同士がお互いを監視し合っているのが特長です。障害の発生したサーバーを機器が検知すると、すぐに予備のサーバーに切り替わるため、問題なく処理を継続できます。
先ほどの監視カメラの例でいえば、仮に稼働中のサーバー(システム)が停止したとしても、映像の録画は止まりません。これによって、システムの安定した運用が可能となります。
5 フェイルオーバーとスイッチオーバーの違い
自動でシステムが切り替わるフェイルオーバーに対して、手動でシステムを切り替える仕組みを「スイッチオーバー(Switchover)」と呼びます。フェイルオーバーとは異なり、常に予備システムを動かし続ける必要がない、複雑な仕組みが不要など、コストを抑えやすいのが特長です。
主に、メンテナンスやアップデートなどで人為的にサーバー/システムを切り替えたい時に使われます。
一方で、人の手で切り替えるという仕様上、スイッチオーバーは障害発生からシステムが使えるようになるまで時間がかかります。サーバーやシステムを切り替える人員を24時間365日用意しておく必要がある点にも注意が必要です。
常時稼働させ続けるサーバーやシステムにおいては、スイッチオーバーではなくフェイルオーバーの方が有効な仕組みといえるでしょう。
6 障害後はすぐにメイン機の修理を行おう
フェイルオーバー機能が備わっていれば、万が一メインの機器に障害が発生しても、自動的かつ瞬時にバックアップ機に切り替えが行われます。それにより、ダウンタイム(稼働が停止している状態)の発生を防ぐことが可能です。
しかし、システムが稼働しているからと、そのままの状態で放置するのは避けましょう。バックアップ機が1台で稼働を続けることになるため、それに何らかの問題が発生すると、システムが完全に停止してしまいます。
バックアップ機に切り替わった後には、待機系のシステムからメインのシステムに処理を戻す「フェイルバック(切り戻し)」を行うことが大切です。
製品によっては、旧メイン機を修理した後にフェイルオーバーを有効化して、旧メイン機をバックアップ機に、旧バックアップ機をメイン機にすることもできます。
7 フェイルオーバーで障害によるトラブルを防ごう
フェイルオーバー機能を活用すれば、問題が発生したシステムから、待機しているシステムへの切り替えが自動的に完了します。サーバーやNASなどに何らかの問題が発生しても、特別な操作をすることなく、システムを動かし続けることが可能です。
機能が完全に停止するダウンタイムの発生を防ぎ、システムの冗長性を確保できます。
不測の事態によるトラブルを防ぐために、運用しているサーバーにフェイルオーバーを取り入れてみてはいかがでしょうか。