検索
連載

ミラーリングツール「DRBD」によるデータ保護Heartbeatでかんたんクラスタリング(4)(3/3 ページ)

「Heartbeat」の適切な導入によってHAクラスタを構成し、Linux上で動作しているサービスの可用性を上げることができます。続いて、肝心のデータそのものを保護できるツール「DRBD」について紹介しましょう。

PC用表示 関連情報
Share
Tweet
LINE
Hatena
前のページへ |       

DRBDの動作テスト

 それでは、DRBDの動作確認をしてみましょう。surr、tomatoの双方で、

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

としてサービスを終了します。次に、surrで

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

としてサービスを起動します。そうすると、

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

のように表示されますので、この間に、tomato側でサービスを起動させます。もしこの間にtomato側でサービスを起動させない場合、「継続するか、無視するか」の判断を迫られることになります。

 問題なくサービスが起動したら、surrで、

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

として、ファイルシステムを作成してからマウントします。その後、

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

のようにテスト用のファイルを作成します。そして、

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

として、ファイルシステムをアンマウントし、セカンダリ(secondary)へと格下げを行います。ここで念のため、

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

としてステータスの確認を行っておきましょう。tomatoにおいて、

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

として、プライマリへと格上げ後、ファイルシステムをマウントし、

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

として、先ほどsurrで作成したファイルが存在していることを確認してください。ファイルが存在していれば、無事DRBDによるミラーリングの動作が確認できたことになります。

Heartbeatとの連携

 DRBDをHeartbeatのリソースとして動作させるには、これまで紹介してきたアクティブ/スタンバイモードのほかに、マルチステイト(Multistate)モードを選択することもできます(コラム参照)。DRBDを使用する場合、仕様上の制限から最大で2台構成にしかできないため、アクティブ/スタンバイモードでも十分なのですが、今回は、ほかのモードの紹介の意味も込めて、マルチステイトモードでの設定を紹介します。

 前回までの記事でHeartbeatの設定については一通り紹介してきましたので、ここではDRBDに関する部分を抜き出して説明します。まず、サンプル設定ファイルの「cib.xml」を適当に編集し、所定の場所に置いてください。

サンプルダウンロード:

→ サンプルファイル(cib.xml)のダウンロード


 なお、マルチステイトモードではどのサーバを優先的に「マスター」にするかを決めることができます。ここでは分かりやすさを考慮して、surrを優先するように設定しました。

 Heartbeatのサービスを起動させる前に、まずdrbdのサービスを起動してください。tomato側から立ち上げ、

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

のようにしてサービスをモニタします。正常に起動すると、drbdリソース部がこれまでの「Started」でなく、「Master」と表示されます。この状態でsurr側のHeartbeatを起動させると、surrのそれが「Master」と表示され、tomato側は「Slave」となり、ステイトが変更されたことが分かります。

 Heartbeatとの連携部に関してはかなり省略しましたが、マルチステイトモードでのApacheなどとの連携は皆さんへの宿題としたいと思います。コツとしては、constraints要素内にrsc_order要素を用いて、Apacheなどのほかのリソースを順次起動させるようにします。

コラム クローンモードとマルチステイト(マスター/スレイブ)モード

 これまでの記事では、Heartbeatで特別なモードを動作させず、シンプルな1対1のアクティブ/スタンバイモードでの動作についてのみ紹介してきました。

 実はHeartbeatには、このほかにも「クローンモード」と「マルチステイトモード」という特別な動作モードがあります。この2つのモードについての説明は、Heartbeat日本語ページでもまだ翻訳されておらず(http://www.linux-ha.org/ja/v2/Concepts_jaからのリンク参照)、理解しにくい面もあるのですが、簡単に説明しましょう。

 クローンモードでは、同一の環境で動作するサーバを複数台動作させることができます。これにより、ロードバランシングクラスタが構築できるようになっています。

 マルチステイトモードは、クローンモードをさらに進化させたものとなっています。ステイトごとに各サーバの動作を変えるように設定することができるほか、複数台で運用中のクラスタのうち、数台だけを特定のサービス向けに動作させるといったことができます。

 現在、マルチステイトモードで実装されているステイトは、「マスター」と「スレイブ」の2種類のみであるため、これを「マスター/スレイブモード」と呼ぶこともあります。リソースをこのモードで動作させるためには、リソースエージェントに「promote」「demote」オプションが実装されていなくてはなりません。



Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       
ページトップに戻る