第5回 可用性を高めるOpen HA Cluster


サン・マイクロシステムズ株式会社
OpenSolarisエバンジェリスト
加藤 久慶
2008/5/13


クラスタリング故に起こる障害

 クラスタリングのノードに障害が起こった場合、「split brain(スプリットブレイン)」「amnesia(アムネジア)」という2つの問題が起こる可能性があります。

 split brainとは、クラスタノード間のインターコネクト(ハートビート)が遮断され、クラスタノードが分割され、唯一のクラスタになってしまった場合のことをいいます。遮断されたクラスタは、自分自身がクラスタとして成立しているかどうかも分からない状態になります。この結果、各ノードが同時に共有リソースへアクセスし、データを破損させるおそれがあるため、問題となります。

 一方amnesiaとは、すべてのノードがそのクラスタ内で不安定な状態になっている場合に起こります。

 例えば、クラスタノード1とクラスタノード2からなる2ノードのクラスタがあるとします。ノード1が停止すると、クラスタ構成リポジトリのデータはノード2のものだけが更新され、ノード1では更新されません。この後でノード2が停止し、ノード1が再起動されると、今度はノード1は古い内容のクラスタ構成リポジトリに基づいて動作することになってしまいます。

 このような問題を回避するために利用されるのが、定足数デバイスです。定足数デバイスでは、各ノードの投票数を1票として、過半数の投票がないとクラスタが動作しないようにする仕組みを取っています。その投票を行うために、あらかじめ当該デバイスを定足数デバイスとして登録しておきます。これは共有デバイス上に、もしくはサーバとして設定する必要があります。

Solaris Clusterで利用できるサービス

 クラスタリング上で動作しているアプリケーションは、「フェイルオーバーサービス」または「スケーラブルサービス」のどちらかのサービスを取ります。

 フェイルオーバーサービスとは、片方のノードが障害などでダウンした場合、もう片方のノードに移るサービスのことをいいます。その際に、サービス提供に必要な論理IPアドレスもクラスタノードのフェイルオーバーを行い、もう一方のノードへ移動します。

 一方スケーラブルサービスでは、前回紹介したサーバのロードバランシングのように、クラスタ各ノードが同時実行できるクラスタサービスのことをいいます。

Solaris Clusterにおけるリソースグループ

 Solaris Clusterにおけるサービスは、1つのリソースグループに属しています。そのリソースグループは、例えば図3のような2ノードクラスタ構成の場合、どちらか片方のノードをプライマリのノードとしています。

図3
図3 リソースグループにおけるフェイルオーバー

 ここでは、プライマリノードをクラスタノード1とします。そして、クラスタノードには、my-rgというリソースグループがあると仮定します。そのリソースグループには、MySQL用のリソースとTomcat用のリソースが登録されています。

 もし、プライマリノードであるクラスタノード1が何らかの障害によりダウンしたとすると、すべてのリソースはクラスタノード2に移り、リソースグループmy-rgはクラスタノード2から立ち上がります。

 この例のように、Solaris Clusterにおいては、リソースやサービスはすべてリソースグループ単位で扱われる仕組みになっています。

 これで一通り、Solaris Clusterのアーキテクチャについて解説しました。次回は、このSolaris Clusterをインストールし、ブログサービスを冗長化する手順を紹介しましょう。

前のページ
3/3

Index
OpenSolarisでサーバ構築
 第5回 可用性を高めるOpen HA Cluster
  Page 1
 クラスタリングはなぜ必要か
 OpenSolarisと親和性の高い「Open HA Cluster」
  Page 2
 4つの層からなるSolaris Cluster Architecture
  IPネットワークパスの冗長化
  共有ストレージの利用
  Page 3
  クラスタリング故に起こる障害
  Solaris Clusterで利用できるサービス

Linux Square全記事インデックス


 Linux Squareフォーラム サーバ構築・運用関連記事
連載:Heartbeatでかんたんクラスタリング(連載中)
オープンソースソフトウェアの「Heartbeat」を使ってHAクラスタを実現し、サービスを「落とさない」仕組みを実現します
特集:Apache 2.2でWebサイトをパフォーマンスアップ!
最新安定版Apache 2.2は、何が変わったのか? 最新のApacheを新機能の使い方とともに解説する
連載:実用 Apache 2.0運用・管理術(全8回)
本連載では、Apache 2.0の運用や管理方法を解説する。まず必須設定と基本的なセキュリティ対策を行い今後の運用に備える
連載:実用 BIND 9で作るDNSサーバ(全15回)
本連載では、BIND 9の構築/運用方法を解説していく。実際に役立つことを目的に、セキュリティや大規模運用などのテーマを取り上げていく
連載:実用qmailサーバ運用・管理術(全14回)
本連載を通して、qmailによるメールサーバの高度な構築・運用・管理術を紹介。SPAM対策やML管理からサーバでのウイルスチェックなどまで
特集:Samba 3.0の全貌 改訂版
Samba 3.0リリースから8カ月。ここであらためて、Samba 3.0系列の新機能、インストール方法、国際化の現状を解説する

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します

TechTargetジャパン

Linux Square フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

キャリアアップ



- PR -
@IT Sepcial

イベントカレンダー

PickUpイベント

- PR -
もっと見る
- PR -

お勧め求人情報

ホワイトペーパーTechTargetジャパン

@IT Sepcial
ソリューションFLASH