# Compaq OpenVMS
OpenVMS Cluster システム

前へ | 次へ | 目次 | 索引

## 2.3.6 例

3 台のコンピュータで構成されるクラスタがあり，各コンピュータの VOTES パラメータが 1 に設定され， EXPECTED_VOTES パラメータが 3 に設定されているとします。接続マネージャはクラスタ・クォーラム値を動的に計算して， 2 という値を求めます (つまり，(3 + 2)/2)。この例では， 3 台のコンピュータのうち，2 台のコンピュータでクォーラムが構成されるので，3 台目のコンピュータが存在しなくても，他の 2 台は稼動できます。1 台のコンピュータだけでクォーラムを満たすことはできません。したがって，3 台の OpenVMS Cluster コンピュータをパーティションに分割して， 2 つの独立したクラスタとして実行することはできません。

## 2.3.7 クォーラム・ディスク

クラスタ・システム管理者はディスクを クォーラム・ディスク として指定できます。クォーラム・ディスクは，クラスタのボーツの総数に 1 票を追加するための，仮想 クラスタ・メンバとして動作します。クォーラム・ディスクを設定することで，2 つのノードで構成されるクラスタの可用性を向上できます。このような構成では，クォーラム・ディスクまたは 1 台のノードで障害が発生しても，クォーラムを維持することができるため，操作を続行できます。

注意: 2 つのノードだけで構成される OpenVMS Cluster の場合は，クォーラム・ディスクを設定するようにしてください。3 つ以上のノードを含む構成では，クォーラム・ディスクは必ずしも必要ありません。

たとえば，多くのサテライト (ボーツ数は 0 ) と，サテライトをダウンライン・ロードする 2 つの非サテライト・システム (それぞれボーツ数が 1) から成る OpenVMS Cluster 構成について考えてみましょう。クォーラムは以下のように計算されます。

     (EXPECTED VOTES + 2)/2 = (2 + 2)/2 = 2

クォーラム・ディスクがないため，どちらか一方の非サテライト・システムがクラスタから削除されると，ボーツの総数が 1 になってしまうので，クラスタ・クォーラムを満たすことができません。クォーラムが復元されるまで，クラスタ全体で動作が実行されなくなります。

しかし，構成にクォーラム・ディスクが含まれており (クラスタのボーツの総数に 1 票を加算)，各ノードで EXPECTED_VOTES パラメータが 3 に設定されている場合，いずれか一方のノードがクラスタから削除されても，クォーラムはまだ 2 になります。この場合，クォーラムは以下のように計算されます。

     (EXPECTED VOTES + 2)/2 = (3 + 2)/2 = 2

規則: 各 OpenVMS Cluster システムには，クォーラム・ディスクを 1 つだけ含むことができます。少なくとも 1 台のコンピュータがクォーラム・ディスクに直接 (サービスを介してではなく) 接続されていなければなりません。

- クォーラム・ディスクに対して直接のアクティブ接続を保有するか，または直接接続の可能性を保有するコンピュータは， クォーラム・ディスク・ウォッチャとして有効に設定しなければなりません。

- ディスクに直接アクセスできないコンピュータは，クォーラム・ディスクによって加算されるボーツの状態情報に関して，クォーラム・ディスク・ウォッチャに依存しなければなりません。

関連項目: クォーラム・ディスクを有効にする方法についての詳細は， 第 8.2.4 項 を参照してください。クォーラム・ディスクの削除については， 第 8.3.2 項 を参照してください。

## 2.3.8 クォーラム・ディスク・ウォッチャ

コンピュータをクォーラム・ディスク・ウォッチャとして有効にするには，以下のいずれかの方法を使用します。

方法 | 手順
--- | ---
CLUSTER_CONFIG.COM プロシージャを実行する。 ( 第 8 章 を参照) | プロシージャを起動し，以下の操作を実行する。 CHANGE オプションを選択する。 CHANGE メニューから "Enable a quorum disk on the local computer" という項目を選択する。 プロンプトに対して，クォーラム・ディスクのデバイス名を指定する。 プロシージャは入力された情報を使用して，DISK_QUORUM および QDSKVOTES システム・パラメータの値を更新する。
OpenVMS インストール・プロシージャからクラスタにクォーラム・ディスクが含まれているかどうか質問されたら，YES と応答する。 ( 第 4 章 を参照) | インストール・プロシージャで，以下の操作を実行する。 プロシージャからクラスタにクォーラム・ディスクが含まれているかどうか質問されたら，Y と応答する。 プロンプトに対して，クォーラム・ディスクのデバイス名を指定する。 プロシージャは，入力された情報を使用して， DISK_QUORUM および QDSKVOTES システム・パラメータの値を更新する。
MODPARAMS または AGEN$ ファイルを編集する。( 第 8 章 を参照) | 以下のパラメータを変更する。 DISK_QUORUM: DISK_QUORUM システム・パラメータの値として，クォーラム・ディスク名を ASCII で指定する。 QDSKVOTES: QDSKVOTES パラメータの適切な値を設定する。このパラメータは，クォーラム・ディスクがクラスタのボーツの総数に貢献するボーツ数を指定する。クォーラム・ディスクが貢献するボーツ数は，クォーラム・ディスク・ウォッチャの QDSKVOTES パラメータの最小値に等しい。

ヒント: 1 つのクォーラム・ディスク・ウォッチャだけがクォーラム・ディスクに直接アクセスできる場合は，ディスクを削除し，そのボーツ数をノードに与えます。

## 2.3.9 クォーラムの指定の規則

クラスタのボーツの総数でカウントされるクォーラム・ディスクのボーツ数に関しては，以下の条件を満たさなければなりません。

- ウォッチャになることができるすべてのコンピュータで， DISK_QUORUM システム・パラメータの値と同じ 物理 デバイス名を指定しなければなりません。他のコンピュータ (DISK_QUORUM の値が空白値でなければなりません) は，通信相手の最初のクォーラム・ディスク・ウォッチャが指定した名前を認識します。

- 少なくとも 1 つのクォーラム・ディスク・ウォッチャが，クォーラム・ディスクに対して，直接のアクティブ接続を保有していなければなりません。

- ディスクのマスタ・ファイル・ディレクトリに， QUORUM.DAT という名前の正しいフォーマット・ファイルが格納されていなければなりません。 QUORUM.DAT ファイルは，クォーラム・ディスクを指定するシステムがクラスタで最初にブートされた後，自動的に作成されます。その後のリブートでは，このファイルが使用されます。
  注意: システム・パラメータ STARTUP_P1 が MIN に設定されている場合，ファイルは作成されません。

- 障害から回復することができるように，クォーラム・ディスクはすべてのディスク・ウォッチャでマウントしなければなりません。

- OpenVMS Cluster には，クォーラム・ディスクを 1 つしか含むことができません。

- クォーラム・ディスクがシャドウ・セットのメンバになることはできません。

ヒント: クォーラム・ディスクのボーツ数を両方のシステムからのボーツの総数より 1 だけ少なくなるように増加すれば (さらに EXPECTED_VOTES システム・パラメータの値を同じ数だけ増加すれば)，1 つのノードだけでクラスタをブートし，稼動させることができます。

# 2.4 状態遷移

OpenVMS Cluster の状態遷移は，コンピュータが OpenVMS Cluster システムに追加される場合やシステムから削除される場合に発生し，クラスタがクォーラム・ディスクの状態の変化を認識したときにも発生します。接続マネージャはこれらのイベントを制御し，クラスタ全体でデータの整合性を維持します。

状態遷移の期間とユーザ (アプリケーション) に与える影響は，状態遷移が発生した理由，システム構成，使用しているアプリケーションによって異なります。

## 2.4.1 メンバの追加

すべての遷移は 1 つ以上のフェーズを通過しますが，通過するフェーズの数は，OpenVMS Cluster にメンバを追加したために状態遷移が発生したのか，現在のメンバで障害が発生したのかに応じて異なります。

表 2-2 では，新しいメンバを追加することによって発生した状態遷移のフェーズを説明しています。

表 2-2 クラスタ・メンバの追加によって発生する状態遷移
フェーズ | 説明
--- | ---
新しいメンバの検出 | ブート・シーケンスの初期段階で，OpenVMS Cluster システムのメンバになりたいコンピュータは，クラスタへの追加を求めるメッセージを現在のメンバに送信する。メンバシップ要求を受信した最初のクラスタ・メンバは，新しいコンピュータの代言者として機能し，そのコンピュータをクラスタに含むようにクラスタの再構成を提案する。新しいコンピュータがブートされている間，アプリケーションに影響はない。 注意: ノードの EXPECTED_VOTES の値が，計算されたボーツ数より大きなクォーラムになるように再調整され，OpenVMS Cluster の動作が停止される場合は，接続マネージャは，そのコンピュータが OpenVMS Cluster システムに追加されることを許可しない。
再構成 | OpenVMS Cluster にコンピュータが追加されたために，構成が変化する場合は，現在のすべての OpenVMS Cluster メンバは，構成が変更されている間に新しいコンピュータとの通信を確立しなければならない。通信が確立された後，新しいコンピュータのクラスタへの追加が許可される。場合によっては，ロック・データベースが再構築される。

## 2.4.2 メンバの削除

表 2-3 では，現在の OpenVMS Cluster メンバの障害によって発生する状態遷移のフェーズを説明しています。

表 2-3 クラスタ・メンバの削除によって発生する状態遷移
原因 | 説明
--- | ---
障害の検出 | このフェーズの期間は，障害の原因と，障害がどのような方法で検出されたかに応じて異なる。 通常のクラスタ操作では，あるコンピュータから別のコンピュータに送信されたメッセージは，受信時に確認される。
条件 | 動作
--- | ---
OpenVMS Cluster 通信ソフトウェアによって指定された期間内に，メッセージの受信が確認されない。 | 修復を試みるフェーズが開始される。
クラスタ・メンバがシャットダウンされたか，または障害が発生した。 | オペレーティング・システムは，シャットダウンされているコンピュータから他のメンバにデータグラムを送信する。これらのデータグラムは，通信を切断し，リソースの共用を停止するというコンピュータの意図を伝える。障害検出フェーズと修復フェーズは実行されず，再構成フェーズが直ちに開始される。
修復の試行 | OpenVMS Cluster メンバに対する仮想サーキットが切断されると，パスを修復しようという試みが行われる。修復の試行は， PAPOLLINTERVAL システム・パラメータに指定された間隔で続行される (システム管理者は，それぞれの条件に適合するようにこのパラメータの値を調整できる)。修復できない場合は，修復できないほどパスが破壊されているものと解釈される。その場合，すべてのコンピュータが相互に通信し，通信できないコンピュータが OpenVMS Cluster から削除されるように， OpenVMS Cluster システムを再構成するための手順を実行しなければならない。
再構成 | クラスタ・メンバがシャットダウンされるか，または障害が発生すると，クラスタを再構成しなければならない。残りのコンピュータのいずれかがコーディネータとして機能し，他のすべてのクラスタ・メンバとの間でメッセージを交換して，メンバ数とボーツ数を最大に維持できるように，最適なクラスタ構成が判断される。このフェーズでは，すべてのユーザ (アプリケーション) の動作が停止される。このフェーズは通常 3 秒未満で終了するが，実際の時間は構成に応じて異なる。
OpenVMS Cluster システムの回復 | 回復には以下のステージが含まれるが，一部のステージは並列に実行できる。
ステージ | 動作
--- | ---
I/O の完了 | コンピュータがクラスタから削除されると， OpenVMS Cluster ソフトウェアは，状態遷移より前に開始されたすべての I/O 操作が，状態遷移の後で生成された I/O 操作より前に必ず完了するようにする。このステージは通常，アプリケーションにほとんど，あるいはまったく影響を与えない。
ロック・データベースの再構築 | ロック・データベースはすべてのメンバに分散しているため，データベースの一部を再構築しなければならないことがある。再構築は次の手順で実行される。
場合 | 動作
--- | ---
コンピュータが OpenVMS Cluster から削除される場合 | 必ず再構築される。
コンピュータが OpenVMS Cluster に追加される場合 | LOCKDIRWT システム・パラメータが 1 より大きい場合に再構築される。
警告: 同じモデルまたは同じ種類のコンピュータで， LOCKDIRWT システム・パラメータを異なる値に設定すると，分散ロック・マネージャはこのパラメータの値が大きい方のコンピュータを使用する可能性がある。この結果，そのコンピュータで過度にリソースが使用される可能性がある。
ディスク・マウントの確認 | このステージは，ボーツ・メンバで障害が発生した結果，クォーラムを満たすことができなくなった場合にだけ発生する。データの整合性を保護するために，クォーラムが復元されるまで，すべての I/O 動作は停止される。マウントの確認は，このフェーズで I/O を停止するために使用されるメカニズムである。
クォーラム・ディスクのボーツ数の確認 | コンピュータがクラスタから削除されるときに，そのコンピュータがシャットダウンされたこと，またはそのコンピュータで障害が発生したことを，他のメンバが判断できる場合，残りのメンバが実行するクォーラムの計算では，クォーラム・ディスクによって加算されるボーツ数がまったく遅延なく含まれる。しかし，クラスタから削除されるコンピュータがシャットダウンされたこと，または障害が発生したことをクォーラム・ウォッチャが判断できない場合 (たとえば，コンソールの停止，電源障害，通信障害が発生した場合)， QDSKINTERVAL システム・パラメータの値の 4 倍の期間 (秒数) だけ，ボーツ数は計算に含まれなくなる。この期間は，障害が発生したコンピュータがクォーラム・ディスクを使用していないことを判断できるだけの十分な時間である。
ディスクの再構築 | 障害が発生した後，コンピュータのリブートによって状態遷移が発生した場合，ディスクは不正にディスマウントされたものとしてマークされる。 関連項目: ディスクの再構築の詳細については， 第 6.5.5 項 と 第 6.5.6 項 を参照。
アプリケーションの回復 | 状態遷移がアプリケーション・ユーザに与える影響を評価する場合，アプリケーション回復フェーズにジャーナル・ファイルの再実行，回復ユニットのクリーンアップ，ユーザの再ログインなどの動作が含まれることを考慮する。

# 2.5 OpenVMS Cluster のメンバシップ

LAN で使用される OpenVMS Cluster システムでは，複数の独立した OpenVMS Cluster システムが同じ拡張 LAN に共存できるようにするためと，登録されていないコンピュータが不正にクラスタにアクセスできないようにするために，クラスタ・グループ番号とクラスタ・パスワードが使用されます。

前へ | 次へ | 目次 | 索引