Japan
サイト内の現在位置を表示しています。
HAクラスター入門 ~第4回 フェールオーバーによる業務の引き継ぎとは?~
CLUSTERPRO オフィシャルブログ ~クラブロ~はじめに
今回はHAクラスターの『アプリケーションの稼動を他のサーバーが引き継ぐ』とは具体的にどのようなことを行っているのか解説していきたいと思います。
アプリケーションとデータ
フェールオーバーによる業務の引き継ぎのポイントは、単純にアクティブサーバーのアプリケーションを停止し、スタンバイサーバーのアプリケーションを起動させるのではなく、アクティブサーバーのアプリケーションがそれまで利用していたデータをスタンバイサーバーのアプリケーションが引き継いで利用するところにあります。そうでないと『フェールオーバーでアプリケーションがスタンバイサーバーに切り替わったら、データがさっきと違う(なんか古い)!』なんてことになりかねません。
そこでHAクラスターでは一般的にアプリケーションが使うデータは各サーバーから共通的にアクセスできるよう外部ストレージなどに格納され共有されます。アクティブサーバーのアプリケーションもスタンバイサーバーのアプリケーションもデータは同じものを利用することでうまく業務が引き継げるようにしているわけです。
クライアントのアクセス先
クライアントがアクティブサーバーのIPアドレスやホスト名に対しアクセスしている状態でフェールオーバーが発生すると、アプリケーションはスタンバイサーバーで稼働しているにも関わらずクライアントは『サーバーはダウンした状態が継続している』と認識してしまいます。これはアプリケーションがアクティブサーバーからスタンバイサーバーに切り替わったとしてもクライアントは同じサーバーに対しアクセスを継続するためです。
こうならないためHAクラスターでは仮想IPアドレスを用いるのが一般的です。アクティブサーバーに仮想IPアドレスを付与し、クライアントは仮想IPアドレスに対しアクセスを行います。フェールオーバーが発生した際、アクティブサーバーに付与した仮想IPアドレスを一旦削除し、スタンバイサーバーに仮想IPアドレスを付与し直すことで結果的にクライアントのアクセス先はスタンバイサーバー側に切り替えることができます。
フェールオーバー発生前とその後
フェールオーバーによる業務の引き継ぎを理解する前に、フェールオーバーが発生する前の状態を整理しましょう。まずデータは外部ストレージに格納されており、そのデータを用いてアクティブサーバー側のアプリケーションが起動しています。更に仮想IPアドレスはアクティブサーバー側に付与されており、クライアントは仮想IPアドレスに対しアクセスを行っています。逆にスタンバイサーバーのアプリケーションは停止状態であり、外部ストレージのデータに対してもアクセスできない状態(外部ストレージはアンマウント状態)となっています。
アクティブサーバー側に障害が発生するといよいよ『フェールオーバーによる業務の引き継ぎ』が行われます。まずはアクティブサーバー側のアプリケーションが停止され、外部ストレージへのアクセスも停止されます(アンマウント状態)。更にアクティブサーバー側に付与されていた仮想IPアドレスも削除されます。この時点でどちらのサーバーにおいても『アプリケーションは停止状態』、『外部ストレージへのアクセスも停止状態』さらに『仮想IPアドレスは付与されていない状態』であり、システムとしてはダウン状態となります。
次にスタンバイサーバーにて仮想IPアドレスを付与し、外部ストレージのデータを用いてアプリケーションを起動させます。このタイミングでクライアントは仮想IPアドレスを経由して、スタンバイサーバー側のアプリケーションにアクセスできるようになり、フェールオーバーによる業務の引き継ぎが完了したことになります。
さいごに
『フェールオーバーによる業務の引き継ぎ』について具体的にどのようなことを行っているのか解説をしてみましたがいかがでしたでしょうか。
このブログでは皆さまからのリクエストをお待ちしております。
HAクラスターに関する疑問や気になる検証構成などご要望等ございましたら、後述のお問い合わせ窓口までお知らせ下さい。
また、CLUSTERPROでは技術認定セミナーを毎月開催しています。
実機を使ってCLUSTERPROのインストールやクラスターの構築、操作を1日で学べる無料のセミナーです。 Webinar形式でも開催しており、日本中どこからでも受講いただくことが可能ですので是非参加をご検討ください。
詳細とお申し込み方法はこちらをご参照ください。
お問い合わせ