Sun Java ロゴ     前へ      目次      索引      次へ     

Sun ロゴ
Sun Java System Messaging Server 6 2004Q2 配備計画ガイド 

第 10 章
サービス可用性に向けた計画

この章では、配備に適切なサービス可用性のレベル決定方法について説明します。サービス可用性のレベルは、採用したハードウェアとソフトウェアインフラストラクチャ、および実際の保守の方法に関係しています。この章では、いくつかの選択肢とそのメリットおよびコストについて説明します。

この章には、以下の節があります。


Automatic System Reconfiguration (ASR) の概要

単に高可用性 (HA) ソリューションを評価するだけでなく、ASR を可能にするハードウェアの配備についても検討する必要があります。

ASR は停止時間に関連するハードウェア障害を最小限にするためのプロセスです。サーバーに ASR 機能がある場合は、ハードウェアの個別のコンポーネントに障害が発生しても、停止時間を最小限にとどめることが可能になります。ASR により、サーバーの自動再起動と、障害の発生したコンポーネントが交換されるまでそれを停止しておくことが可能になります。欠点は、障害の発生したコンポーネントがサービスから排除される結果、システムのパフォーマンスが低下することです。たとえば、CPU に障害が発生すると、マシンは残りの CPU を使用して再起動されます。システムの I/O ボードまたはチップに障害が発生した場合は、システムの I/O ボードが減少するか、代わりの I/O パスが使用されます。

さまざまな Sun SPARC システムが、さまざまなレベルの ASR をサポートしています。高いレベルの ASR まではサポートしていないシステムもあります。当然ながら、高い ASR 機能を持つサーバーはその分コストも高くつきます。ソフトウェアに高可用性がない場合、コストには制約がないものとすれば、データ格納用にはハードウェアに高い冗長性と ASR 機能を持たせたマシンを選択します。


高可用性モデルの理解

さまざまなタイプの高可用性モデルを Messaging Server として使用できます。一般的によく使用されるモデルに、以下の 3 つがあります。

以下の節で、これらのモデルについてそれぞれ詳しく説明します。


異なる高可用性製品が異なるモデルをサポートしている場合もあれば、サポートしていない場合もあります。対応する製品の高可用性に関するマニュアルを参照して、どのモデルがサポートされているかを確認してください。


非対称型

基本的な非対称型または「ホットスタンバイ」型の高可用性モデルは、クラスタ化された 2 つのホストマシンまたは「ノード」で構成されます。1 つの論理 IP アドレスおよび関連するホスト名が両方のノードに指定されます。

このモデルでは、常に 1 つのノードだけがアクティブとなります。バックアップノードまたはスタンバイノードは、大半の時間はアイドル状態のままとなります。両ノード間で単独の共有ディスクアレイが構成され、アクティブまたは「プライマリ」なノードの支配下となります。メッセージストアパーティションおよびメッセージ転送エージェント (MTA) キューは、この共有ボリュームに置かれます。以下の図は非対称型モデルの例です。

図 10-1 非対称型高可用性モデル

この図は、非対称型高可用性モデルの説明です。

前の図には、物理-A物理-B の 2 つのノードがあります。フェイルオーバーの前は、物理-A がアクティブなノードです。フェイルオーバーが行われると、物理-B がアクティブなノードとなり、共有ボリュームは物理-B の支配下に切り替わります。すべてのサービスが物理-A で停止し、物理-B で開始されます。

このモデルのメリットは、バックアップノードがプライマリノードの予備としてだけ使用されることです。また、フェイルオーバー時に、バックアップノードでリソースの競合が起こることもありません。しかし、このモデルではバックアップノードがほとんどの時間でアイドル状態にあり、そのリソースがほとんど利用されないことになります。

対称型

基本的な対称型または「デュアルサービス」型の高可用性モデルは、それぞれ固有の 論理 IP アドレスを持つ 2 台のホストマシンで構成されます。それぞれの論理ノードは 1 つの物理ノードに関連付けられており、それぞれの物理ノードが、2 つのストレージボリュームを持つ 1 つのディスクアレイを制御します。1 つのボリュームがローカルメッセージ格納パーティションと MTA キューとして使用され、もう 1 つのボリュームは他方のメッセージ格納パーティションと MTA キューのミラーイメージとなります。

以下の図は、対称型高可用性モデルの例です。両方のノードが共にアクティブで、それぞれのノードが他方のバックアップとして機能します。正常な状態では、それぞれのノードが Messaging Server の 1 つのインスタンスだけを実行します。

図 10-2 対称型高可用性モデル

この図は、対称型高可用性モデルの説明です。

フェイルオーバーが起こったときには、障害の発生したノードのサービスが停止され、バックアップノードで再開されます。この時点で、バックアップノードは両方のノードの Messaging Server を実行し、2 つの個別ボリュームを管理しています。

このモデルのメリットは、両方のノードが同時にアクティブとなり、マシンリソースが完全に利用されることです。ただし、障害が発生している間は、バックアップノードで両方のノードの Messaging Server のサービスを実行するため、リソースの競合が多くなります。したがって、障害の発生したノードをできるだけ素早く修復し、サービスをデュアルサービスの状態に復元する必要があります。

このモデルでは、バックアップストレージアレイも提供されます。ディスクアレイに障害が発生した場合は、バックアップノードのサービスが冗長イメージを取り出します。

対称型モデルを構成するには、共有ディスクに共有バイナリをインストールする必要があります。ただし、共有バイナリをインストールすることにより、ローリングアップグレード、すなわち、Messaging Server のパッチリリース中にシステムの更新を行う機能が実行できなくなる場合があります (この機能は将来のリリースで対応を検討中)。

N+1 (N プラス 1)

N + 1 または "N プラス 1" モデルは、マルチノードの非対称型構成で運用します。N 個の論理ホスト名と N 個の共有ディスクアレイが必要です。1 つのバックアップノードが、他のすべてのノードに対するホットスタンバイとして確保されます。バックアップノードは、N 個のノードから同時に Messaging Server を実行できます。

図 10-3 は、基本的な N + 1 高可用性モデルの例です。

図 10-3 N + 1 高可用性モデル

この図は、N + 1 高可用性モデルの説明です。

1 つまたは複数のノードでフェイルオーバーが起こったときは、バックアップノードが障害の発生したノードの責任を引き受けます。

N + 1 モデルのメリットは、サーバーの負荷が複数のノードに分散され、すべてのノードの障害に対して 1 つのバックアップノードだけで対処できることです。したがってマシンのアイドル比率は、単独の非対称型モデルの 1 対 1 に対して、N 対 1 となります。

N + 1 モデルを構成するには、バイナリをローカルディスク (対称型モデルの共有ディスクのことではない) にだけインストールする必要があります。すべての対称型モデル、1 + 1 または N + 1 非対称型モデルあるいは対照型モデルの対称型高可用性ソリューションでは、現在の Messaging Server のインストールとセットアップのプロセスにより、バイナリは強制的に共有ディスクに置かれます。


高可用性モデルの選択

以下の表で、それぞれの高可用性モデルのメリットとデメリットをまとめています。この情報を参考にして、配備にふさわしいモデルを決定してください。

表 10-1 高可用性モデルのメリットとデメリット

モデル

メリット

デメリット

推奨ユーザー

非対称型

  • 簡単に構成できる
  • バックアップノードが 100% 予約される

マシンリソースが完全に利用されない

将来拡張を予定している小規模なサービスプロバイダ

対称型

  • システムリソースを有効に利用できる
  • 可用性が高い

バックアップノードでリソースの競合が起こる

高可用性実現のために完全な冗長ディスクが必要

サーバー障害時のパフォーマンスの低下を許容できる小規模な企業

N + 1

  • 負荷分散される
  • 拡張性が高い

管理と構成が複雑

リソース競合のない分散を必要とする大規模なサービスプロバイダ

システム停止時間の計算

以下の表で、システム障害によりメッセージサービスが利用できなくなる確率について説明します。ここでの計算は、システムクラッシュまたはサーバーのハングアップによるサーバーの停止が平均して 3 か月間に 1 日、ストレージデバイスの停止が 12 か月間に 1 日の割合で発生することを想定しています。両方のノードが同時に停止する可能性はきわめて小さいため、計算では無視しています。

表 10-2 システム停止時間の計算 

モデル

サーバーが停止する確率

単独のサーバー (高可用性なし)

Pr (停止) = (システムの停止 4 日 + ストレージの停止 1 日)/365 = 1.37%

非対称型

Pr (停止) = (システムの停止 0 日 + ストレージの停止 1 日)/365 = 0.27%

対称型

Pr (停止) = (システムの停止 0 日 + ストレージの停止 1 日)/365 = 0.27%

N + 1 非対称型

Pr (停止) = (システムの停止 5 時間 + ストレージの停止 1 日)/(365xN) = 0.33%/N


製品の参照情報

Messaging Server がサポートする高可用性モデルの詳細については、以下の製品マニュアルを参照してください。


リモートサイトフェイルオーバーの理解

リモートサイトフェイルオーバーは、プライマリサイトに致命的な障害が発生した場合に、そのプライマリサイトに WAN で接続されているサイトでサービスを開始する機能です。リモートサイトフェイルオーバーにはいくつかの形式があり、それぞれにコストが異なります。

リモートサイトフェイルオーバーでは、すべてのケースでサーバーとストレージを追加して、リモートサイトにインストールおよび設定された、サービスのユーザー負荷のすべてまたは一部を処理する能力を持つようにする必要があります。すべてまたは一部というのは、顧客によっては優先するユーザーとそうでないユーザーがいることを意味します。ISP でも企業でも、そのような状況が起こります。ISP には、この機能のために割増料金を支払うユーザーがいます。企業では、全従業員に電子メールの機能を提供している部門内で、ユーザーによってはそのサポートが高くついている場合があるかもしれません。たとえば、カスタマサポートに直接関わるユーザーのメールに対してリモートサイトフェイルオーバーを選択した場合でも、製造ラインで勤務する従業員には、リモートサイトフェイルオーバーを用意しないというケースが考えられます。リモートハードウェアは、このようにリモートサイトフェイルオーバーメールサーバーにアクセスを許可されたユーザーの負荷を処理できます。

ユーザーベースの使用率だけを制限すると、必要な冗長サーバーとストレージハードウェアの数を減らすことができますが、フェイルバックの設定と管理も複雑になります。そのようなポリシーはまた、長期的には予期しない別の影響をユーザーに与えます。たとえば、ドメインメールルーターが 48 時間にわたって消失した場合、インターネット上の他の MTA ルーターがそのドメイン宛てのメールを保持します。ある時点で、サーバーがオンラインに復帰したときに (うまくいけば DoS による障害を受けることもなく)、そのメールが配信されます。さらに、すべてのユーザーをフェイルオーバーリモートサイトに設定していない場合は、MTA が起動して設定されていないユーザーに対して永続的なエラー (バウンス) が返されます。最後に、すべてのユーザーを受け入れるようにメールを設定している場合は、すべてのユーザーをフェイルバックするか、フェイルオーバーがアクティブな間使用できないアカウント宛てのメールを保持し、フェイルバックが起こったらそれを本来の配信の流れに戻すように MTA ルーターを設定する必要があります。

考えられるリモートサイトフェイルオーバーのソリューションには、以下のようなものがあります。

ハードウェアやソフトウェアをはじめ、管理コスト、電力費、光熱費、ネットワークコストまで、これらのソリューションでは、さまざまなコストが発生します。これらのコストはすべてそのまま計算に入れて、数字をはじき出します。そうしなければ、めったに起こらない処理を実行するときの思いがけない費用や、停止時間による直接のコスト、データ損失によるコストなど、いくつかのコストを算出するのが困難になります。このような種類のコストを正確に算定するのは不可能です。顧客によっては、停止時間とデータの損失は代償が高くつくか、まったく受け入れられません。その他の顧客にとっては不愉快以上のものではないでしょう。

リモートサイトフェイルオーバーを行う場合には、リモートディレクトリが少なくとも最新のもので、メッセージデータの復元が可能な状態にあることも必要です。リモートサイトにリストアメソッドを使用する場合は、ディレクトリが完全に復元されてからメッセージを復元する必要があります。また、ユーザーをシステムから削除した場合、ディレクトリ内でそのユーザーに無効のタグがつけられるだけなのはやむをえません。ユーザーのデータがあるメッセージバックアップテープが使用される限り、そのユーザーをディレクトリから削除してはなりません。

リモートサイトフェイルオーバーについての質問

以下の質問を参考にして、リモートサイトフェイルオーバーの計画を立ててください。



前へ      目次      索引      次へ     


Copyright 2004 Sun Microsystems, Inc. All rights reserved.