第3回 MSCSによるファイル共有の実現から運用ノウハウまで:Windowsクラスタリング入門(2/4 ページ)
クラスタ(MSCS)によるファイル共有の設定手順、対応アプリケーションやサービスの紹介に加え、バックアップなどの運用ノウハウを解説する。
MSCSをサポートしているアプリケーション
共有フォルダの例では、手動でMSCSの提供するサービスを設定したが、MSCSをサポートしているEnterprise Server製品ではウィザードなどでMSCSを構成する手助けをしてくれる。
■Microsoft SQL Server
データベース・システムはフェイルオーバー・クラスタで最も広く利用されているアプリケーションだろう。SQL Serverは古くからMSCSをサポートしている。現在利用されていると思われるSQL Server 2005/2008では、フェイルオーバー・クラスタ上でインストールを実行すると、ウィザード形式で必要な情報を入力するだけで、いくつものリソースを手動で作成しなくてもSQL Serverのフェイルオーバー・クラスタによる可用性を提供可能となっている。
SQL Server 2005のフェイルオーバー・クラスタの作成
SQL Server 2005のセットアップ・ウィザードで、[SQL Server フェールオーバー クラスタの作成]のチェックを入れれば、クラスタの設定が自動的に完了する。
- SQL Server 2008 フェールオーバー クラスタリングの概要(マイクロソフト MSDN)
■Oracle Fail Safe
SQL Serverと同じく代表的なデータベース製品であるOracleもOracle Fail Safeという製品としてMSCSのサポートを行っている。Oracle Fail Safeでは、Oracle Fail Safe Managerをクラスタで管理するための専用のツールが用意されており、Oracleに適したリソース管理が可能となっている。
- Oracle Fail Safe(オラクル)
MSCS未サポートのアプリケーションの対応
MSCSに対応していないアプリケーションであっても、汎用アプリケーション、汎用サービス、汎用スクリプト(これらをここでは汎用リソースと呼ぶ)を利用することで、MSCS上で独自のアプリケーションなどを動作させることが可能だ。また、HKEY_LOCAL_MACHINE以下に限定されるが、固有のレジストリ情報をほかのノードへ複製することもできる。
ただし、汎用リソースでは、障害の検知の仕組みには制限がある。汎用リソースでは、専用のリソースDLLがないため、アプリケーションやサービス固有の障害検知の仕組みを提供できない。つまり、アプリケーションの障害そのものは検出できない。何らかの理由、例えばプロセスが停止するなどでアプリケーションが応答しなくなった場合のみ、クラスタ・ サービスがアプリケーションを再起動するか、フェイルオーバーするアクションを実施する。
■汎用サービスの作成手順
汎用サービスの作成手順を簡単に紹介する。今回はTelnetサービスをMSCS上で動作させてみる。
- [新しいリソース]ウィザードを起動する。
- [リソースの種類]で[汎用サービス]を選択する。
- [実行可能な所有者]ですべてのノードを選択する(デフォルト)。
- [依存関係]では何も選択せずに次へ進める。
- [汎用サービス パラメータ]ではサービス名を入力する。ここでいうサービス名は表示名ではないことに気を付ける必要がある。サービス名にはレジストリのHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servicesの下に表示されているキー名で確認するか、[サービス]のプロパティの「サービス名」に表示されている名前を指定する。
6. 「レジストリ レプリケーション」では何も指定しない。これで汎用サービスの作成が完了となる。
汎用サービスを構成する場合の注意点として、各ノードの該当サービス、今回の例の場合はTelnetサービスの[スタートアップの種類]を[手動]または[自動]の設定に変更しておく必要がある。サービスの起動ができない状態では、汎用リソースをオンラインにした途端に障害となる。
動作確認としては、サービスの管理やNET STOPコマンドでサービスを停止したり、タスクマネージャからプロセスを強制終了させたりすると、フェイルオーバーすることが確認できる。
参考までに汎用リソースに限ったことではないが、MSCSで実行するアプリケーションの選定に役立つ情報として下記のサイトを参照するとよいだろう。
- サーバー クラスタ上で実行するアプリケーションを選択する(マイクロソフト TechNet)
Copyright© Digital Advantage Corp. All Rights Reserved.