フェールオーバー クラスタリングをインストールする前に

更新 : 2007 年 9 月 15 日

Microsoft SQL Server 2005 フェールオーバー クラスタをインストールする前に、SQL Server 2005 を実行するハードウェアとオペレーティング システムを選択する必要があります。また、Microsoft Cluster Service (MSCS) を構成し、ネットワーク、セキュリティ、およびフェールオーバー クラスタで実行するその他のソフトウェアに関する考慮事項を見直す必要があります。

インストール前のチェックリスト

フェールオーバー クラスタのインストール プロセスを開始する前に、次の項目を確認します。

ハードウェア ソリューションの確認

  • "Designed for Microsoft Windows" 製品 - Windows カタログおよび HCL」に記載されているハードウェアを使用してください。クラスタ ソリューション カテゴリに、使用できるハードウェア システムが表示されます。
    ms189910.note(ja-jp,SQL.90).gif重要 :
    各クラスタ コンポーネントを 1 つのコンポーネントにまとめても、フェールオーバー クラスタリングとして承認されるシステムにはなりません。クラスタ用として購入され、クラスタ ソリューション カテゴリの一覧に表示されているシステムだけが承認されます。Microsoft Windows Catalog and Windows Hardware Compatibility List を確認する場合は、カテゴリに "Cluster" を指定します。他のカテゴリは、すべて OEM 向けです。詳細については、「サーバー クラスタに対するマイクロソフトのサポート ポリシーとハードウェア互換性リスト」を参照してください。
  • ストレージ エリア ネットワーク (SAN) にフェールオーバー サーバー クラスタを実装する場合、特別なハードウェア互換性テストが必要です。Microsoft Windows Catalog and Hardware Compatibility List の Cluster/Multi-cluster Device カテゴリにすべてのハードウェア ソリューションが表示されます。詳細については、サポート技術情報の資料「同一の SAN デバイスに接続された複数のクラスタに関するサポート」を参照してください。
  • クラスタ ソリューションに地理的に分散したクラスタ ノードが含まれている場合は、ネットワークの待機時間や共有ディスクのサポートなどの項目も確認する必要があります。完全なソリューションは、Geographic Cluster Hardware Compatibility List にあります。詳細については、サポート技術情報の資料「地理的に分散したサイトでの Windows クラスタリング」を参照してください。
  • SAN 構成は、Microsoft Windows 2000 Advanced Server および Microsoft Windows 2000 Datacenter Server でもサポートされます。Windows Catalog and Hardware Compatibility List には、SAN に対応したストレージ デバイス セットが一覧表示されます。このデバイス セットは、複数の MSCS クラスタが接続されている SAN ストレージ装置としてサポートされています。一連の Windows サーバーとクラスタを SAN 構造上に配置しても、Microsoft のサポートを受けることが可能です。これは、この一覧に示されているデバイスと、Microsoft Windows Catalog and Hardware Compatibility List のクラスタ カテゴリで定義されている完全なクラスタ構成とを照合することによって行います。詳細については、サポート技術情報の資料「Windows Datacenter プログラムおよび Windows 2000 Datacenter Server」を参照してください。
  • SQL Server 2005 フェールオーバー クラスタを iSCSI (Internet Small Computer System Interface) テクノロジのコンポーネント上に配置する場合は、慎重に行ってください。詳細については、サポート技術情報の資料「iSCSI テクノロジ コンポーネント上の SQL Server 2000 のサポート」を参照してください。
  • 詳細については、サポート技術情報の資料「SQL Server フェールオーバー クラスタのマイクロソフト サポート ポリシー」を参照してください。
  • クォーラム ディスク リソースの共有を検討します。サーバー クラスタでは、クォーラム ディスクにサーバー クラスタ構成のマスタ コピーが格納されます。クォーラム ディスクは、クラスタ ノード間のすべてのネットワーク通信が失敗した場合の決定機構としても使用されます。共有クラスタ ディスク アレイ上の物理ディスクをクォーラム ディスクにできるかどうかは、実装するサーバー クラスタの種類によって決まります。クラスタ ディスク全体をクォーラム ディスクとして使用するように予約するのが最善の方法ですが、この方法ではクォーラム リソース以外のリソースがこのクォーラム ディスクにアクセスできない場合があります。
    ただし、クォーラム リソースと他のリソースで同一のディスクを共有した場合、2 つの選択肢のうちのいずれかを選択しなければなりません。つまり、リソースで障害が発生した際にグループに影響を与えないようにそのリソースを構成するか、グループが他のリソースで発生した障害の影響を受けることを許容するかどうかを選択する必要があります。前者の場合には、リソースのフェールオーバー サポートが失われます。後者の場合には、クォーラム リソースと障害が発生したリソースの両方が含まれている残りのグループと共に、クォーラム リソースのフェールオーバーが行われます。その結果、グループのフェールオーバー中は、クラスタ全体がオフラインになります。
    適切なクォーラム ドライブ構成の詳細については、サポート技術情報の資料「クォーラム ドライブの構成について」を参照してください。
  • 元のインストール ファイルおよびクラスタが異なる複数のドメインに分散している場合に SQL Server 2005 フェールオーバー クラスタをインストールするには、クラスタのプライマリ ノードにインストール ファイルをコピーしておき、プライマリ ノードからインストールを開始します。

オペレーティング システムの設定の確認

  • オペレーティング システムが適切にインストールされており、フェールオーバー クラスタリングをサポートするように設定されていることを確認します。サポートされるオペレーティング システムの詳細については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。
  • Windows Server 2003 で Windows 暗号化サービス プロバイダ (CSP) を有効にします。CSP サービスが停止しているか無効になっているクラスタ ノードが存在する場合、SQL Server セットアップが Windows ロゴ プログラムの要件に関するエラー メッセージを表示して失敗します。
  • リモート インストールおよびクラスタ インストールに対応するすべてのオペレーティング システムで、タスク スケジューラ サービスを有効にします。タスク スケジューラが無効である場合、エラー 1058 が発生して SQL Server セットアップが失敗します。詳細については、「Windows タスク スケジューラ サービスを有効にする方法」を参照してください。
  • SQL Server 2005 ではマウント ポイントがサポートされます。可能な SQL Server のクラスタ化インストールは、使用可能なドライブ文字数以下に制限されます。オペレーティング システムに使用されているドライブ文字が 1 つだけの場合、1 フェールオーバー クラスタあたりの SQL Server の最大インスタンス数は 25 になります。
    マウントされたボリューム、つまりマウント ポイントを使用すると、1 つのドライブ文字を使用して多数のディスクまたはボリュームを参照できます。通常のディスクやボリュームを参照するドライブ文字 D: を使用している場合、ドライブ文字 D: の下のディレクトリとして、新しいディスクまたはボリュームを接続するか "マウント" できます。この場合、新しいディスクまたはボリューム自体にドライブ文字は必要ありません。
    SQL Server 2005 フェールオーバー クラスタリングについてのマウント ポイントの特別な考慮事項は次のとおりです。
    • SQL Server のセットアップでは、マウントされたドライブの基本ドライブがドライブ文字と関連付けられている必要があります。フェールオーバー クラスタのインストールでは、この基本ドライブをクラスタ化されるドライブにする必要があります。
    • ドライブ文字を持つ基本ドライブは、フェールオーバー クラスタ インスタンス間で共有できません。フェールオーバー クラスタには、通常、このような制約がありますが、スタンドアロンのサーバーや複数インスタンスのサーバーにはこのような制約はありません。
    • 基本ドライブとマウントされたディスクやボリュームの両方がリソース グループのリソースとしてすべて表示されるようにするには、フェールオーバー クラスタのセットアップ時に特に注意が必要です。これは、SQL Server セットアップでは自動的に行われません。また、SQL Server では CREATE/ALTER DATABASE の実行中にもこのチェックが行われません。
    • マウントされるディスクやボリュームは、ドライブ文字を持つ適切な基本ドライブの下にマウントされます。マウントされるドライブは、親ドライブに依存するように設定されます。

Microsoft Cluster Service の構成

  • Microsoft Cluster Server (MSCS) を、サーバー クラスタの少なくとも 1 つのノード上に構成する必要があります。MSCS がサポートされるのは、MSCS ソフトウェアとの互換性テストが済んだハードウェア構成に MSCS がインストールされている場合だけです。MSCS と共に SQL Server 2005 Enterprise Edition または Standard Edition も実行する必要があります。SQL Server 2005 Enterprise Edition では、8 ノードまでのフェールオーバー クラスタがサポートされています。SQL Server 2005 Standard Edition では、2 ノードのフェールオーバー クラスタがサポートされています。
    MSCS を Windows Server 2003 にインストールおよび構成する方法の詳細については、「サーバー クラスタ」を参照してください。
    Windows 2000 オペレーティング システムにおける MSCS のインストールと構成に関する詳細については、「クラスタ サービスのインストール」を参照してください。
  • SQL Server サービスのリソース DLL は、MSCS クラスタ マネージャが SQL Server リソースの可用性をチェックするために使用する 2 つの関数をエクスポートします。簡単なチェックを行う LooksAlive は、Windows NT サービス コントロール マネージャを使用してサービスのステータスを照会します。より厳密なチェックを行う IsAlive は、ユーザー プローブとして SQL Server に接続し、単純なクエリを実行します。既定では、LooksAlive は 5 秒おきに、IsAlive は 60 秒おきに実行されます。LooksAliveIsAlive のポーリング間隔は、MSCS クラスタ アドミニストレータで、SQL Server リソースの [詳細設定] タブから変更できるほか、cluster.exe コマンド プロンプト ユーティリティで変更することもできます。
  • MSCS では、IsAlive チェックを使用して、フェールオーバー クラスタ インスタンスが実行されていることを確認できる必要があります。そのため、信頼関係接続を使用して、サーバーに接続する必要があります。既定では、クラスタ サービスを実行するように構成されたアカウントがクラスタ内のすべてのノードの管理者であり、BUILTIN\Administrators グループは SQL Server へログインする権限を持っています。これらの設定が変更されるのは、クラスタ ノードで権限を変更する場合だけです。
  • BUILTIN\Administrators アカウントを削除する場合は、IsAlive チェックを行えるように、Cluster Service を実行しているアカウントが SQL Server にログインできるようにします。ログインできないと、IsAlive チェックが失敗します。定期的に "SELECT @@servername" を実行できるように、MSCS Cluster Service アカウントには、少なくとも SQL Server への public 権限が必要です。既定では、クラスタ サービスを実行するように構成されたアカウントがクラスタ内のすべてのノードの管理者であり、BUILTIN\Administrators グループは SQL Server へログインする権限を持っています。これらの設定が変更されるのは、クラスタ ノードで権限を変更する場合だけです。
    BUILTIN\Administrators アカウントを削除する場合は、IsAlive チェックを行えるように、Cluster Service を実行しているアカウントが SQL Server にログインできるようにします。ログインできないと、IsAlive チェックが失敗します。定期的に @@servername を実行できるように、MSCS Cluster Service アカウントには、少なくとも SQL Server への public 権限が必要です。
  • MSCS をインストールする際は、MSCS へのログオンと SQL Server へのログオンに異なるサービス アカウントを使用することが非常に重要です。そうしないと、そのクラスタのコマンドを使用して、クラスタ サービスのパスワードを変更できません。
  • MSCS を使用しているときは、他のノードがオンラインになる前に、特定の 1 つのノードで共有の SCSI バスを制御する必要があります。これに失敗すると、アプリケーションのフェールオーバーがオンラインの保留状態になり、別のノードにフェールオーバーできないか、完全に失敗する原因になることがあります。クラスタ システムで専用のインストール プロセスを使用できる場合は、その専用プロセスを使用する必要があります。

Microsoft 分散トランザクション コーディネータのインストール

  • フェールオーバー クラスタに SQL Server 2005 をインストールする前に、Microsoft 分散トランザクション コーディネータ (MSDTC) クラスタ リソースを作成する必要があるかどうかを判断します。データベース エンジンだけをインストールする場合、MSDTC クラスタ リソースは必要ありません。データベース エンジンおよび SSIS、Notification Services、またはワークステーション コンポーネントをインストールする場合は、MSDTC のインストールが必要です。この要件は、Windows 2000 と Windows Server 2003 の両方のオペレーティング システムに当てはまります。
    MSDTC トランザクション マネージャ、MSDTC プロキシ、およびコンポーネント サービス管理ツールは、Windows ベースのサーバー クラスタの各ノードにインストールされます。クラスタでは、Microsoft Cluster Services (MSCS) が Windows ベースのサーバー クラスタのセットアップの一部として使用されます。
    MSCS を実行している Windows Server 2003 オペレーティング システムで MSDTC を手動で構成するには、サポート技術情報の資料「Windows 2003 クラスタで Microsoft 分散トランザクション コーディネータを構成する方法」および「Windows Server 2003 でネットワーク DTC アクセスを有効にする方法」を参照してください。
    複数のクラスタ化されたアプリケーション間で可用性を確保するため、MSDTC にはそれ独自のリソース グループとリソースを設定することを強くお勧めします。独自のリソース グループを持つように MSDTC を構成できない場合は、代わりにクラスタ グループとクォーラム ドライブを使用することをお勧めします。

Microsoft 分散トランザクション コーディネータの構成

  • オペレーティング システムをインストールしてクラスタを構成した後で、クラスタ アドミニストレータを使用して、クラスタ内で機能するように MSDTC を構成する必要があります。MSDTC のクラスタ化に失敗しても SQL Server セットアップは中断しませんが、MSDTC が適切に構成されていない場合は SQL Server のアプリケーション機能に影響が生じる可能性があります。
    クラスタ内の任意のノードで実行されているどのプロセスでも、MSDTC を使用できます。これらのプロセスが MSDTC プロキシを呼び出すだけで、MSDTC プロキシによって、クラスタ全体を制御している MSDTC トランザクション マネージャに自動的に MSDTC 呼び出しが転送されます。
    MSDTC トランザクション マネージャを実行しているノードが失敗すると、クラスタ内の別のノードで MSDTC トランザクション マネージャが自動的に再起動されます。新しく再起動された MSDTC トランザクション マネージャは、共有クラスタ ディスク上の MSDTC ログ ファイルを読み取り、保留されているトランザクションや最近完了したトランザクションの結果を確認します。
    リソース マネージャが MS DTC トランザクション マネージャに再接続し、復旧を行って、保留中のトランザクションの結果を確認します。アプリケーションでは MSDTC に再接続することで、新しいトランザクションを開始できるようになります。
    たとえば、MSDTC トランザクション マネージャがシステム B でアクティブであるとします。システム A のアプリケーション プログラムとリソース マネージャにより、MSDTC プロキシが呼び出されます。システム A の MSDTC プロキシにより、すべての MSDTC 呼び出しがシステム B の MSDTC トランザクション マネージャに転送されます。
    システム B が失敗すると、システム A の MSDTC トランザクション マネージャに引き継がれます。その MSDTC トランザクション マネージャは、共有クラスタ ディスク上の MSDTC ログ ファイル全体を読み取り、復旧を実行した後、クラスタ全体のトランザクション マネージャとして機能します。

その他のソフトウェアに関する注意点

  • すべてのクラスタ ノードが一意になるように構成します。構成要素は、COM+、ディスク ドライブ文字、管理者グループのユーザーなどです。
  • クラスタ相互接続 (実行状態) が適切に構成されていることを確認します。詳細については、サポート技術情報の資料「クラスタ サーバーでのプライベート "ハートビート" の推奨構成」を参照してください。
  • すべてのノードでシステム ログを消去し、そのシステム ログを再確認します。続行する前に、そのログにエラー メッセージが記録されていないことを確認します。
  • SQL Server の前のバージョンとサイド バイ サイドでインストールされている SQL Server 2005 の場合、SQL Server 2005 サービスは、グローバル ドメイン グループのみで検出されたアカウントを使用する必要があります。さらに、SQL Server 2005 サービスによって使用されるアカウントは、ローカルの Administrators グループに表示されないようにする必要があります。このガイドラインに沿っていない場合、予期しないセキュリティ動作を招くことになります。
  • 複数のディスク ドライブで構成される Windows 2000 クラスタ グループに SQL Server 2005 をインストールし、いずれかのドライブにデータを保存するように選択すると、SQL Server リソースはそのドライブにのみ依存するように設定されます。この場合、別のディスク リソースや新しいディスク リソースにデータまたはログを格納するには、新しいディスクに SQL Server リソースへの依存関係を追加する必要があります。詳細については、「SQL Server 2005 リソースに依存関係を追加する方法」を参照してください。
  • Microsoft Windows 2000、または Windows Server 2003 のドメイン コントローラが存在していない環境に Windows 2000 または Windows Server 2003 のクラスタ ノードを配置している場合は、「Windows 2000 および Windows Server 2003 クラスタ ノードをドメイン コントローラとして構成する」を参照してください。
  • 暗号化を使用するには、SQL Server フェールオーバー クラスタ内のすべてのノードに、MSCS クラスタの完全修飾 DNS 名を使用してサーバー証明書をインストールします。たとえば、"Test1.DomainName.com" と "Test2.DomainName.com" という名前のノード、および "Virtsql" という名前の SQL Server フェールオーバー クラスタ インスタンスが存在する 2 ノード クラスタでは、"Virtsql.DomainName.com" の証明書を入手し、test1 ノードと test2 ノードにその証明書をインストールする必要があります。その後、SQL Server 構成マネージャで [プロトコルの暗号化を設定する] チェック ボックスをオンにすれば、フェールオーバー クラスタの暗号化を構成できます。
    ms189910.note(ja-jp,SQL.90).gif重要 :
    [プロトコル暗号化を設定する] チェック ボックスは、フェールオーバー クラスタ インスタンスに参加しているすべてのノードに証明書をインストールした後でオンにしてください。
  • ウイルス対策プログラムが MSCS クラスタにインストールされていないことを確認します。詳細については、サポート技術情報の資料「ウイルス対策ソフトウェアによりクラスタ サービスの問題が発生することがある」を参照してください。
  • SQL Server 2005 は、Windows Server 2003 ターミナル サーバーではサポートされません。詳細については、サポート技術情報の資料「SQL Server 2000 は、Windows Server 2003 ターミナル サーバーのアプリケーション サーバーでサポートされていません」を参照してください。
  • SQL Server をインストールするディスクが圧縮されていないことを確認します。圧縮されたドライブに SQL Server をインストールしようとすると、SQL Server セットアップが失敗します。
  • フェールオーバー クラスタ インストールのクラスタ グループに名前を付けるときは、次の文字を使用しないでください。
    • 小なり演算子 (<)
    • 大なり演算子 (>)
    • 二重引用符 (")
    • 単一引用符 (")
    • アンパサンド (&)
      既存のクラスタ グループ名に、サポート外の文字が含まれていないかも確認してください。

ネットワークに関する注意点

  • すべてのプライベート ネットワーク カードの NetBIOS が無効になっていることを確認してから、SQL Server セットアップを開始します。
  • SQL Server のネットワーク名と IP アドレスは、ファイル共有などの、フェールオーバー クラスタリング以外の目的に使用しないでください。ファイル共有リソースを作成する場合、異なる一意なネットワーク名と IP アドレスをそのリソースに使用する必要があります。
    ms189910.note(ja-jp,SQL.90).gif重要 :
    データ ドライブでファイルを共有すると、SQL Server の動作とパフォーマンスに影響することがあるので、共有しないことをお勧めします。
  • SQL Server 2005 でクラスタ内の名前付きパイプと TCP/IP Sockets over TCP/IP の両方がサポートされる場合でも、クラスタ化された構成では TCP/IP ソケットを使用することをお勧めします。

その他の注意点

  • フェールオーバー クラスタを作成するには、サービスとしてログオンする権限、およびフェールオーバー クラスタ インスタンスのすべてのノード上にあるオペレーティング システムの一部として機能する権限を持つ、ローカルな管理者である必要があります。
  • SQL Server フェールオーバー クラスタをインストールまたは更新する前に、インストール中に SQL Server コンポーネントを使用する可能性のあるすべてのアプリケーションとサービスを無効にします。ただしディスク リソースはオンラインのままにします。
  • SQL Server 2005 フェールオーバー クラスタの一部としてインストールされるクラスタ化サービス用のドメイン グループを作成します。SQL Server サービス、SQL Server エージェント サービス、Analysis Services サービス、およびフルテキスト検索サービスは、グルーバルまたはローカルのドメイン グループのメンバであるドメイン アカウントとして実行する必要があります。必要に応じて、既存のドメイン グループの名前をドメイン管理者に問い合わせるか、フェールオーバー クラスタのドメイン グループを作成するよう依頼してください。詳細については、「クラスタ化サービス用ドメイン グループ」を参照してください。
  • SQL Server フェールオーバー クラスタリングは、クラスタ ノードがドメイン コントローラの場合はサポートされません。
  • ドメイン ネーム サービス (DNS) または Windows インターネット ネーム サービス (WINS) を構成します。DNS サーバーまたは WINS サーバーは、SQL Server フェールオーバー クラスタがインストールされる環境で実行されている必要があります。SQL Server セットアップでは、ダイナミック ドメイン ネーム サービス (DDNS) で SQL Server IP インターフェイスの仮想参照を登録する必要があります。動的登録を完了できないと、セットアップが失敗し、インストールがロールバックされます。動的登録を使用できない場合は、サーバーを事前に DNS に登録しておく必要があります。
  • Windows クラスタリングでは ISA Server はサポートされていないため、SQL Server フェールオーバー クラスタでもサポートされません。
  • SQL Server インストールのセキュリティに関する注意点」の内容を確認します。
  • システム構成チェッカーの検査パラメータ」の内容を確認します。
  • 使用予定の SQL Server のツール、機能、およびコンポーネントがフェールオーバー クラスタリングでサポートされているかどうかを確認します。詳細については、「フェールオーバー クラスタリング」を参照してください。
  • 高可用性を実現するために、フェールオーバー クラスタの監視方法と保守方法を検討します。詳細については、「フェールオーバー クラスタのメンテナンス」および「フェールオーバー クラスタリングでの SQL Server ツールの使用」を参照してください。
  • 先にすべてのフェールオーバー クラスタ ノードに Microsoft .NET Framework Version 2.0 をインストールしてから SQL Server セットアップを実行すると、SQL Server 2005 フェールオーバー クラスタのインストールにかかる時間を短縮できます。

参照

概念

フェールオーバー クラスタのインストール

その他の技術情報

SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア
システム構成チェッカーの検査パラメータ
SQL Server インストールのセキュリティに関する注意点

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2006 年 12 月 12 日

変更内容 :
  • フェールオーバー クラスタ インスタンスをインストールまたは更新する前に、SQL Server をオフラインにする推奨記述を追加。
  • サイド バイ サイド構成のサービス アカウントに対するセキュリティ ガイドラインを追加。
  • ドメイン グループに関するセクションの内容を更新し、ドメイン アカウントはグローバルまたはローカルのドメイン グループのメンバである必要があることを追記。
  • MSDTC のインストールに関する推奨事項を更新。

2007 年 9 月 15 日

変更内容 :
  • LooksAliveIsAlive のポーリング間隔の変更に関する内容を追加。
  • クラスタ グループ名に使用できない文字としてアンパサンド (&) を追加。