前へ | 次へ | 目次 | 索引 |
この章では,Volume Shadowing for OpenVMS を紹介し,ボリューム・シャドウイング (ディスク・ミラーリングと呼ばれることもあります) でどのようにしてデータの高可用性が達成されるかを説明します。
1.1 概要
Volume Shadowing for OpenVMS は,データを複数のディスクに複製することで,アプリケーションやエンド・ユーザに対してデータの高可用性を提供します。同じデータが複数のディスク・ボリュームに記録されるので,1 つのディスクに障害が発生しても残りのディスクで入出力要求のサービスを継続することができます。
Volume Shadowing for OpenVMS では, RAID 1 (redundant arrays of independent disks) テクノロジを実装しているため, 1 台のディスク・デバイスに故障が発生してもシステムやアプリケーションの操作を中断させることはありません。複数のディスクにデータの複製が存在するため,媒体劣化や通信パスの故障,あるいはコントローラやデバイスの故障など,ストレージ・サブシステムの単一障害でシステム・ダウンが発生することはありません。
OpenVMS に対してディスク・クラス・デバイスと指定されたエンティティはシャドウ・セット内で使用できます。システム・ディスクを含む 1〜3 台の互換性のあるディスク・ボリュームをマウントして シャドウ・セット を構成することができます。互換性のあるディスク・ボリュームとは,同じ数の物理ブロックを備えたディスク・ボリュームのことです ( 第 1.3.2 項 参照 )。シャドウ・セット内の各々のディスクは,シャドウ・セットの メンバ です。Volume Shadowing for OpenVMSでは,シャドウ・セットのディスクを論理的に 1 つに結合し, 仮想ユニット と呼ばれる 1 つの仮想デバイスとして扱います。そのため,仮想ユニットとして扱われるシャドウ・セット内の複数のメンバは,アプリケーションやユーザからは,高度に可用性のある 1 つのディスクとして見えます。
本書ではディスクとデバイスという用語は,ディスク・ボリュームを指すために同じ意味で使われることに注意してください。ディスク・ボリュームは新しいファイル構造が構成されて使えるようになったディスクのことです。
アプリケーションとユーザは,シャドウ化されていないディスクに対する入出力操作と同じコマンドとプログラム言語の構文や機能を使って,シャドウ・セットのデータの読み書きを行います。システム管理者は,シャドウ化されていないディスクに対して使うコマンドやユーティリティと同一のものを使って,シャドウ・セットの管理や監視を行います。唯一の違いは,アクセスが仮想ユニットに対して行われ,個々のディスクに対して行われるのではないことです。
図 1-1 では,Volume Shadowing for OpenVMS が,仮想ユニットを通じて 3 つの別々のシャドウ・セット・メンバに,データを書き込む様子を示しています。
図 1-1 シャドウ・セットの構成要素
ボリューム・シャドウイングの別の利点は,データの修復に役立つことです。たとえば,1 つのシャドウ・セット・メンバのデータが読めなくなったときには,シャドウイング・ソフトウェアによって他のシャドウ・セット・メンバからデータを読むことができます。正しいデータがプロセスに返される前に,最初に読めなかったメンバに書き込みが行われます。
ボリューム・シャドウイングにより,ディスクを使うアプリケーションやシステムの双方に対し,ディスク・ボリュームの単一障害でシステムがダウンするというハードウェア上の問題が回避されることに注意してください。ただしボリューム・シャドウイングでは,ファイルを間違って削除したり,ソフトウェアの誤動作でディスク・ファイルが壊れるといったソフトウェアに起因する障害に対する保護は行えません。ボリューム・シャドウイングを行ったとしても,通常のバックアップやジャーナリングは必要です。 |
Volume Shadowing for OpenVMS は,ときにはフェーズ II シャドウイングとかホスト・ベースのシャドウイングと呼ばれます。フェーズ I シャドウイング ( コントローラ・ベースのシャドウイング ) は OpenVMS バージョン 6.2 から廃止されました。
1.2 ボリューム・シャドウイングの機能と操作
シャドウ・セットを作成し,各々のメンバのデータの整合性を確保するために使われる代表的なボリューム・シャドウイング操作は,マウント,コピー,補助付きコピー,ミニコピー (OpenVMS バージョン 7.3 から導入 ),マージ,ミニマージです。これらの操作を行っている間も,システムは読み込み書き込みの要求を処理し続けることができるため,高可用性が確保できます。
マージとミニマージ以外のすべてのボリューム・シャドウイング操作は,システム管理者の管理の下で行われます。マージとミニマージは,シャドウ・セット・メンバのデータ整合性に影響を与えるハードウェアやソフトウェア障害が発生したときに,ボリューム・シャドウイング・ソフトウェアによって自動的に開始されます。
システム管理者は SHADOWING システム・パラメータによってボリューム・シャドウイング機能を有効にします。システム管理者は SHADOW_MAX_COPY システム・パラメータによって,特定のノードで並列実行されるマージ操作とコピー操作の数を制御できます。ボリューム・シャドウイングで使われるこれらのシステム・パラメータや他のシステム・パラメータについては, 第 3.2 節 と 第 3.3 節 で説明します。
Volume Shadowing for OpenVMS を直接起動することはできません。その代わりに DCL コマンドの MOUNT と DISMOUNT で起動します。 MOUNT コマンドはボリューム・シャドウイング・ソフトウェアと連携してシャドウ・セットを作成します。 DISMOUNT コマンドはボリューム・シャドウイング・ソフトウェアと連携して,シャドウ・セット・メンバを削除し,シャドウ・セット全体を解除します。
HSJ や HSC のコントローラが構成時に存在している場合,ミニマージと補助付きコピーの操作をサポートするソフトウェアが組み込まれます。
OpenVMS は,$MOUNT,$DISMOU,$GETDVI というシステム・サービスで,シャドウ・セットを作成し管理するプログラミング・インタフェースも備えています。このプログラミング・インタフェースについては 第 5 章 で説明します。
表 1-1 にはボリューム・シャドウイングの主な機能と,それに対応する操作と操作に必要なソフトウェアを示します。これらの操作の詳細は, 第 4 章 , 第 6 章 , 第 7 章 で説明します。
機能 | 操作 | 使用するソフトウェア |
---|---|---|
シャドウ・セットを作成する | コピー | SHADOWING システム・パラメータが設定されているときに, MOUNT/SHADOW コマンドを実行すると,コピーが自動的に開始されます。 2 番目や 3 番目のメンバが追加されるときに,シャドウイング・ソフトウェアはコピー操作を開始します。 |
シャドウ・セットからメンバを削除する | ディスクのディスマウント | DISMOUNT コマンド |
シャドウ・セットを解除する | (仮想ユニット名を指定して) シャドウ・セットをディスマウントする | DISMOUNT コマンド |
ハードウェア障害が発生したときに,すべてのシャドウ・セット・メンバが同一のデータを保持していることを保証する | マージまたはミニマージ | シャドウイング・ソフトウェアは,ハードウェア障害やソフトウェア障害を検出すると,この操作を自動的に行います。構成に HSJ または HSC のコントローラが存在する場合は,ミニマージが実行されます。 |
ディスマウントされたシャドウ・セット・メンバをシャドウ・セットに戻す | コピー,補助付きコピー,またはミニコピー | MOUNT コマンドとシャドウイング・ソフトウェア。これらによりコピー (適切に構成されているときはミニコピー) が起動されます。 |
Volume Shadowing for OpenVMS は,特別なハードウェアを必要としません。ミニコピーを除くすべてのシャドウイング機能は, OpenVMS オペレーティング・システムを実行している Alpha および VAX コンピュータで実行できます。ミニコピー操作は, OpenVMS Alpha システム上でのみ実行可能です。ただし,OpenVMS VAX システムを,この機能を使用する OpenVMS Cluster システムのメンバにすることは可能です。
ボリューム・シャドウイングを実行するためには,少なくとも以下のハードウェアが必要です。
以下の項では,ハードウェア・サポートの概要を説明します。詳細は,最新の『Volume Shadowing for OpenVMS Software Product Description 27.29.xx』を参照してください。
1.3.1 メモリ要件
OpenVMS バージョン 7.3 からは,Volume Shadowing for OpenVMS を実行するためには,以下の追加メモリが必要になりました。
OpenVMS VAX システムでは,ノードごとに 5 KB のメモリが必要です。このメモリは Volume Shadowing for OpenVMS を実行しない場合でも必要です。
このメモリが利用できない場合は,ノードをブートすることができません。
このメモリは書き込みビットマップが作成可能になる前に必要になります。このメモリが利用できないと,マウントが失敗します (つまり,シャドウ・セットがノードにマウントされません)。MOUNT コマンドが失敗した場合,次のメッセージが表示されます。
%MOUNT-F-INSFMEM, insufficient dynamic memory |
たとえば,メンバごとに 200 GB のストレージがあるシャドウ・セットでは,クラスタ内の各々のノードの書き込みビットマップには,420 KB のメモリが必要になります。このメモリが利用できないノードでビットマップ書き込み要求が発生しても,書き込みビットマップは作成されません。
マスタ書き込みビットマップが作成されても,次にシャドウ・セットがマウントされる別のノードに十分なメモリが存在しない場合には,ローカル書き込みビットマップは作成されません。WBM_OPCOM_LVL システム・パラメータに 1( これがデフォルト ) または 2 が設定されていると,次の OPCOM メッセージが表示されます。
Unable to allocate local bitmap - running in degraded mode. |
ローカル・ビットマップを持たないノードからの書き込み要求は,最初にシャドウ・セットがマウントされたノードに登録されます。
これらの必要メモリ量は,累積する必要があります。たとえば,10 個のシャドウ・セットがマウントされているシステムで,各々のシャドウ・セットに 50 GB のメンバ・ディスクがある場合,追加で 1,119 KB のメモリが必要ですが,この計算は以下のとおりです。
24 KB: ノードごと (ボリューム・シャドウイングの使用に関係なく)
45 KB: (10 シャドウ・セット x 4.5 KB/システムにマウントされている装置)
1050 KB: (50 x 2.1 KB/ディスクの 1 GB x 10 シャドウ・セット)
1119 KB: 必要メモリ量の合計
シャドウ・セットを構成する物理ディスクの互換性要件は以下のとおりです。
OpenVMS バージョン 7.2( および修正キットの OpenVMS バージョン 7.1-2) から,物理ブロック数が同じであれば,タイプやジオメトリが異なるディスクでもサポートされるようになりました。 |
Volume Shadowing for OpenVMS は,広範囲のシステム構成でデータの高可用性を提供します。1 ノードのシステムから大規模な OpenVMS Cluster システムまでサポートしているので,データの高可用性を最も必要とするところに使用することができます。
シャドウ・セット・メンバの位置については, OpenVMS オペレーティング・システムや OpenVMS Cluster システムの SPD で定義されている正しいディスク構成であれば,制限がありません。
ディスク・ボリュームが,アクティブなシャドウ・セットのメンバとして既にマウントされている場合,そのディスク・ボリュームを別のノードのスタンドアロン・ディスクとしてマウントすることはできません。
1.4.1 シャドウ・セットの最大数
スタンドアロン・システムや OpenVMS Cluster システムの 2,または 3 メンバのシャドウ・セットでは,最大 500 台のディスクをマウントできます。スタンドアロン・システムや OpenVMS Cluster システムの 1 メンバのシャドウ・セットでは,最大 10,000 台のディスクをマウントできます。ディスマウントされたシャドウ・セット,使われていないシャドウ・セット,書き込みビットマップが割り当てられていないシャドウ・セットも,この総数には含まれます。これらの制限は,コントローラやディスクのタイプには無関係です。シャドウ・セットはパブリック・ボリュームとしてもプライベート・ボリュームとしてもマウントすることができます。
1.4.2 システム・ディスクのシャドウイング
データ・ディスクと同じようにシステム・ディスクもシャドウイングすることができます。したがって,シャドウイングされたディスクからブートするシステムでは,システム・ディスクの単一障害でシステムダウンになることはありません。システム・ディスクのシャドウイングは,複数のコンピュータがブートする共通システム・ディスクを持つ OpenVMS Cluster システムでは,特に重要です。 ボリューム・シャドウイングでは OpenVMS の分散ロック・マネージャを使うため,ロックが有効になる前にクォーラム・ディスクにアクセスしなければなりません。クォーラム・ディスクのシャドウイングはできないことに注意してください。
Alpha システムと VAX システムは,シャドウイングされたデータ・ディスクを共有することはできますが,システム・ディスクは別にする必要があります。 Alpha システムに 1 つと,VAX システムに 1 つです。
1.4.2.1 ミニコピーが使われた場合の,シャドウ化されたシステム・ディスクのダンプ・ファイルの取得
システムが OpenVMS Alpha バージョン 7.2-2 またはバージョン 7.3 のいずれかを実行しており,メンバをシャドウ・セットに戻すためにミニコピー操作を使う場合は,システム・ディスク・シャドウ・セットからダンプ・ファイル (SYSDUMP.DMP) にアクセスするための追加の手順を実行する必要があります。この項ではこの追加の手順について説明します。
以下の手順 2 で示す System Dump Analyzer (SDA) は,ダンプ・ファイルを解析する OpenVMS ユーティリティであり,『OpenVMS System Analysis Tools Manual』でその詳細が説明されています。
基本的なファイル・システムがクラッシュ・ダンプを書き込んだ場合,その書き込みは書き込みビットマップのデータ構造に記録されていません。そのため,以下の手順が必要になります。
コンソールには,クラッシュ・ダンプが書き込まれたデバイスが表示されます。デバイスのシャドウ・セット・メンバにはクラッシュ・ダンプ・ファイルのフル・コピーだけが含まれています。
$ SET DEVICE/READ_COST=nnn $allo_class$ddcu |
ダンプが書き込まれたメンバへの読み込みコストを小さな値に設定すると, SDA または SDA の COPY コマンドによって行われる読み込みがすべてそのメンバに対して行われます。/READ_COST に 1 を設定することをお勧めします。
シャドウ・セット・メンバの READ_COST の設定をデフォルトの値に戻すには,次のコマンドを実行します。
$ SET DEVICE /READ_COST=0 DSAnnnn |
1.4.3 バージョンが混在した OpenVMS Cluster システムでのミニコピーの使用
バージョンが混在した OpenVMS Cluster システムでミニコピー機能を使う場合は,クラスタ内の すべてのノード で,この機能を含むバージョンの OpenVMS を使う必要があります。ミニコピーをサポートするのは,OpenVMS Alpha バージョン 7.2-2, OpenVMS Alpha バージョン 7.3,OpenVMS Alpha バージョン 7.3-1 です。 OpenVMS VAX バージョン 7.3 は,限られたサポートを提供します。
1.4.4 アーキテクチャが混在した OpenVMS Cluster システムでのミニコピーの使用
アーキテクチャが混在した OpenVMS Cluster システムでミニコピー機能を使う場合は,すべての VAX システムの SHADOW_MAX_COPY システム・パラメータを 0 に設定することをお勧めします。この設定を行うことによって,Alpha 上でミニコピーを行おうとしたときに,VAX 上で実行されてしまうのを防ぐことができます。アーキテクチャが混在したクラスタでは,稀に,シャドウ・セットにメンバを追加するタスクが VAX システムに割り当てられることがあります。VAX システムではミニコピーを実行できないので,代わりにフル・コピーが実行されます。 SHADOW_MAX_COPY についての詳細は, 第 3.2 節 を参照してください。
1.4.5 シャドウ・セット,バウンド・ボリューム・セット,およびストライプ・セット
シャドウ・セットは,バウンド・ボリューム・セットやストライプ・セットの構成要素とすることができます。バウンド・ボリューム・セットは, MOUNT コマンドで /BIND 修飾子を指定することによって,ボリューム・セットにバインドされた 1 つまたは複数のディスク・ボリュームで構成されます。 第 1.5 節 では,複数の OpenVMS Cluster システムにまたがるシャドウイングについて説明しています。 第 9 章 では,ストライピングについての詳細を説明し, RAID (redundant arrays of independent disks) テクノロジとボリューム・シャドウイングの関係を説明しています。
1.5 OpenVMS Cluster システムにまたがるシャドウイング・ディスク
ホスト・ベースでボリューム・シャドウイングを実装すると,複数の物理コントローラに接続されたディスクを OpenVMS Cluster システムでシャドウイングすることができます。シャドウ・セットのすべてのメンバが同じコントローラに接続されていなければならないという制限はありません。コントローラが独立していると,コントローラの接続関係や OpenVMS Cluster システムでの位置とは無関係にシャドウ・セットの管理を行うことができ,データ可用性の強化や柔軟な構成が可能になります。
クラスタ全体のシャドウイングでは,メンバは OpenVMS Cluster システムのどこに位置することも可能で,サポートされている OpenVMS Cluster インターコネクトのいずれを経由しても MSCP サーバのサービスを受けることができます。 OpenVMS Cluster インターコネクトには,CI (computer interconnect),Ethernet (10/100 と Gigabit),ATM,DSSI (Digital Storage Systems Interconnect),および FDDI (Fiber Distributed Data Interface) などがあります。たとえば,FDDI と WAN サービスを使っている OpenVMS Cluster システムでは,数百 km 離すことが可能で,それによってシステムの可用性や耐災害性が向上します。
図 1-2 は,複数のノードに存在するローカル・アダプタに,シャドウ・セット・メンバが接続された状況を示しています。この図の中で,ディスク・ボリュームは,2 つのノード ATABOY と ATAGRL の各々にローカルに接続されています。MSCP サーバは Ethernet を経由したシャドウ・セット・メンバへのアクセスを可能にします。ディスク・ボリュームは,異なるノードにローカルに接続されていますが,同じシャドウ・セットに属しています。1 つのノードにローカルに接続されているメンバでも, MSCP サーバを経由することで,リモート・ノードからアクセスすることができます。
図 1-2 MSCP サーバを経由してアクセスされるシャドウ・セット
シャドウイング・ソフトウェアはシャドウ・セットを各ノードに分散させて保持し,シャドウ・セットを OpenVMS Cluster システムにマウントします。 OpenVMS Cluster 環境では,各ノードはシャドウ・セットを独立に作成し,維持します。各ノードにあるシャドウイング・ソフトウェアは,仮想ユニット名で表現される各々のシャドウ・セットを,それぞれの物理ユニットにマップします。シャドウ・セットは他のノードにはサービスされません。シャドウ・セットを複数のノードからアクセスする必要がある場合は,各々のノードに同じシャドウ・セットを作成します。シャドウイング・ソフトウェアは,複数のノードにマウントされたシャドウ・セットに対し,クラスタ単位のメンバ構成の一貫性を維持します。
OpenVMS Cluster システムにマウントされたシャドウ・セットを,クラスタ内のあるノードでマウントしたりディスマウントしても,システム内の別のノードで実行しているアプリケーションやユーザに対しては,何の影響もありません。たとえば,OpenVMS Cluster システムの 1 つのノードからシャドウ・セットをディスマウントしても,それをマウントしている別のノードでのシャドウ・セット操作を継続させることができます。
1.6 インストレーション
Volume Shadowing for OpenVMS は SIP (System Integrated Product) なので,オペレーティング・システムをインストールするときに同時にインストールされます。 Volume Shadowing には OpenVMS のベース・オペレーティング・システム・ライセンスとは別に独自のライセンスが必要です。ボリューム・シャドウイング・ソフトウェアを使うためには,このライセンスをインストールしなくてはなりません。シャドウ化されたシステム・ディスクからブートされるすべてのノードにシャドウイングのライセンスが必要で,有効になっていなくてはなりません。ご使用の OpenVMS のアップグレード/インストレーション・マニュアルの説明を参照してください。
Volume Shadowing for OpenVMS のライセンスの詳細は, 第 3.1 節 を参照してください。
前へ | 次へ | 目次 | 索引 |