• 検索結果がありません。

目次 この文書の製品名の表記について 4 1. 本検証の目的 5 2. テスト結果の要約 ゲストクラスタの構築と動作検証 MSCS SQL Server 2005 データの移行検証 検証の詳細 ゲストクラスタの構築と動作検証

N/A
N/A
Protected

Academic year: 2021

シェア "目次 この文書の製品名の表記について 4 1. 本検証の目的 5 2. テスト結果の要約 ゲストクラスタの構築と動作検証 MSCS SQL Server 2005 データの移行検証 検証の詳細 ゲストクラスタの構築と動作検証"

Copied!
30
0
0

読み込み中.... (全文を見る)

全文

(1)

1

Windows Server 2003 クラスタの

仮想化環境への移行について

(2)

2

この文書の製品名の表記について ··· 4

1. 本検証の目的 ··· 5

2. テスト結果の要約 ··· 6

2.1 ゲストクラスタの構築と動作検証 ... 6

2.2 MSCS SQL Server 2005 データの移行検証 ... 6

3. 検証の詳細 ··· 7

3.1 ゲストクラスタの構築と動作検証 ... 7

3.2 MSCS SQL Server 2005 データの移行検証 ... 7

4. 検証環境構成 ··· 9

5. 検証環境構成方法 ··· 11

5.1 検証環境構成図 ... 11

5.2 ホスト仮想化ソフトウェア ... 12

5.3 仮想マシン構成 ... 12

5.4 共有ストレージとの接続(ゲストのパススルー接続) ... 12

5.5 仮想マシンのソフトウェア構成 ... 13

6. CLUSTERPRO によるクラスタ環境構築手順 ··· 14

6.1 ハートビート用ディスク(RAW ディスク)設定 ... 14

6.2 データ用ディスク(NTFS フォーマット)設定 ... 14

6.3 インストール ... 15

6.4 クラスタ構築 ... 15

6.5 サービスリソースへの MS SQL Server 登録 ... 18

6.6 SQL スクリプト作成 ... 19

6.7 スクリプトリソース追加 ... 20

7. フェールオーバー動作検証の実施 ··· 21

7.1 フェールオーバーテストの結果 ... 21

目次

(3)

3

7.2 フェールオーバー動作検証の評価 ... 23

8. MSCS クラスタ上の SQL Server DB の移行検証 ··· 25

8.1 MSCS クラスタ DB 移行手順 ... 25

8.2 データベースファイルのコピー(MSCS 環境→CLUSTERPRO 共有

ディスク) ... 26

8.3 マスターデータベースの移動・起動前修正 ... 26

8.4 リソースの追加 ... 29

(4)

4

この文書の製品名の表記について

この文書中の製品名称とバージョンは略記して表記しています。 以下の表のように読み替えてください。

文章中の表記 名称

Windows Server 2008 R2 Windows Server 2008 R2 Enterprise Edition 64 ビット版 Windows Server 2003 R2 Windows Server 2003 R2 SP2 Enterprise Edition 32 ビッ

ト版

Hyper-V Hyper-V 2.0

ホスト Hyper-V のホストサーバー

ゲスト Hyper-V 上の仮想マシン

SQL Server SQL Server 2005 Standard SP3 32 ビット版 CLUSTERPRO CLUSTERPRO X 3.1 for Windows

ゲストクラスタ Hyper-V 上で動作する仮想マシンを使った CLUSTERPRO

によるフェールオーバークラスタ

MSCS Microsoft Cluster Service 。 WSFC(Windows Server Failover Cluster)と呼称変更になったが、本文中は MSCS に統一

(5)

5

1. 本検証の目的

Windows Server では、Microsoft Cluster Service (MSCS)を使用することでサーバークラスタリング が実現できます。しかし、Windows Server 2008 R2 Hyper-V 上での MSCS の構築では共有ディスク

としてiSCSI 接続のストレージのみサポートされるため、既存の MSCS クラスタを Hyper-V 上へ移

行するためには、iSCSI 接続のストレージへの変更が必要となります。またゲストクラスタでサポー トされるゲストOS は Windows Server 2008 以降に限られます。

NEC のクラスタ環境構築ソフトである CLUSTERPRO は Hyper-V のゲスト OS 同士のクラスタ構成 (ゲストクラスタ)をサポートしており、その場合、iSCSI 接続に加えて Fibre Channel (FC) 接続ス

トレージも共有ディスクとして使用が可能です。また。その場合のゲストOS として Windows Server

2003 もサポートされます。

本検証では、CLUSTERPRO と FC 接続ストレージを使用して、Windows Server 2008 R2 Hyper-V

環境上にWindows Server 2003 のゲストクラスタを構築し、様々な障害を発生させた際にフェールオ

ーバーが正常に実行されるかどうかを検証しました。

また、Windows Server 2003 MSCS で構築された SQL Server 2005 データベースのフェールオーバ

ークラスタをHyper-V 上へ移行することを想定して、MSCS を CLUSTERPRO へ置き換えた環境へ

(6)

6

2. テスト結果の要約

2.1 ゲストクラスタの構築と動作検証

Windows Server 2008 R2 Hyper-V + CLUSTERPRO の環境上に Windows Server 2003 ゲストクラ スタを構築し、正常にフェールオーバークラスタが動作することを確認しました。

2.2 MSCS SQL Server 2005 データの移行検証

既存のWindows Server 2003 MSCS 上に作成されていた SQL Server2005 のデータベースの情報が、 問題無くWindows Server 2008 R2 Hyper-V + CLUSTERPRO 上の環境へ移行できることを確認しま

した。また、システムデータベースに格納されるSQL Server2005 のユーザー情報も移行できること

(7)

7

3. 検証の詳細

3.1 ゲストクラスタの構築と動作検証

Windows Server 2008 R2 Hyper-V 2.0 を使用して MSCS でゲストクラスタ環境を構築する場合、 iSCSI 接続の共有ストレージが必要ですが、本検証ではゲスト OS の Windows Server 2003 R2 に CLUSTERPRO を導入して、FC 接続の共有ストレージにゲストからパススルー接続した構成でフェ ールオーバー動作について検証しました。 フェールオーバーを実行させるための障害は以下の通りです。 1. ゲスト、ホストを強制終了 2. ゲスト、ホスト上でブルースクリーンを発生 3. SQL Server 2005 のプロセスを停止 4. ゲスト、ホストで各NIC を無効化 5. ホストのFC ケーブルの断線(引き抜き)

3.2 MSCS SQL Server 2005 データの移行検証

MSCS環境のSQL Server 2005は、共有ストレージにシステムデータベースとユーザーデータベースが 配置します。一方、CLUSTERPRO環境では、システムデータベースはサーバのローカルディスクに 別々に配置し、ユーザーデータベースは共有ストレージに配置してユーザーデータベースのみ共有し ます。 MSCS環境からCLUSTERPRO環境への移行は以下の作業を行いました。 1. MSCS環境でのシステムデータベースの起動設定変更 2. CLUSTERPROの各サーバローカルディスクへのシステムデータベースの配置(ファイル のコピー) 3. 共有ストレージへのユーザーデータベース配置(ファイルのコピー) 4. 各サーバへ配置したシステムデータベースの起動設定変更

(8)

8

その後、以下の検証を行いMSCS 環境で作成したデータが継承されているかを確認しました。

1. MSCS 環境で作成したユーザーでユーザーデータベースにアクセス可能かを確認

2. SQL Server リソースを別ノードに移動し、MSCS 環境で作成したユーザーでユーザーデー

(9)

9

4. 検証環境構成

Node 1(Hyper-V ホスト)

ハードウェア NEC Express5800/R120b-2

CPU:Intel Xeon X5690(3.47GHz/6Core) x 2

メモリ:24GB(4GB PC3L-10600R DDR3 ECC SDRAM x 6) HDD:SAS 15krpm 73.2GB x 6(RAID5)

RAID カード:LSI MegaRAID SAS 9264-8i

NIC: Intel 82576 Gigabit Dual Port Network Connection x 2 HBA: Emulex LPe12002-E

ソフトウェア Windows Server 2008 R2 Enterprise Edition 64 ビット版 Hyper-V 2.0

Node 2(Hyper-V ホスト)

ハードウェア NEC Express5800/R120b-2

CPU:Intel Xeon X5690(3.47GHz/6Core) x 2

メモリ:24GB(4GB PC3L-10600R DDR3 ECC SDRAM x 6) HDD:SAS 15krpm 73.2GB x 5(RAID5)

RAID カード:LSI MegaRAID SAS 9264-8i

NIC: Intel 82576 Gigait Dual Port Network Connection x 2 HBA: Emulex LPe12002-E

ソフトウェア Windows Server 2008 R2 Enterprise Edition 64 ビット版 Hyper-V 2.0

(10)

10

ゲスト(CLUSTERPRO ゲストクラスタノード)

VM 設定 vCPU:1 メモリ:1GB HDD:40GB NIC: 仮想 NIC x 2

ソフトウェア Windows Server 2003 R2 SP2 Enterprise Edition 32 ビ ッ ト 版 CLUSTERPRO X3.1 for Windows

SQL Server 2005 Standard SP3 32 ビット版 (2005.90.4035)

FC 接続ストレージ

ハードウェア NEC iStorage D3-10 FC-SAN 4Gb/s RAID 10 HDD:SAS 15krpm 300GB x 24 ソフトウェア (iStorage Manager)

検証作業用クライアント

ハードウェア NEC VersaPro J VJ22F/AG-X

ソフトウェア Windows XP

上記は今回の検証環境の記載であり、本文書は上記以外のベンダーのハードウェアでもご利用いただ ける内容です。

(11)

11

5. 検証環境構成方法

5.1 検証環境構成図

検証環境は、以下の図のように構成されています。 図:検証環境構成図 仮想マシンの仮想NIC(vNIC)と物理マシンの物理 NIC は 1 対 1 で接続されています。赤い点線は 接続経路を表した補助線です。Node 2 も同様に仮想ネットワーク接続が設定されています。 FC にはゲストから直接接続しています。 CLUSTERPRO は、仮想マシンにインストールされているアプリケーションが FC にアクセスしよう とする際、フィルタドライバを介してFC への接続を制御します。

(12)

12

5.2 ホスト仮想化ソフトウェア

通常手順でHyper-V ホストに Windows Server 2008 R2 および Hyper-V のインストールを行いまし た。

5.3 仮想マシン構成

仮想マシンは以下の構成で作成しました。仮想マシンは2 つの Hyper-V ホスト上にそれぞれ 1 つずつ 作成しました。 vCPU 数 1 メモリ容量 1GB HDD 40GB 共有ストレージ 100GB(内、2GB の区画をハートビート用領域として使用。ただし、 実質24MB 程度で十分) FC ストレージをパススルー方式で接続

仮想NIC サーバーサービス用(Heartbeat 兼用)、Heartbeat 専用、合計 2 つの

仮想NIC を作成し、別々にホスト側物理 NIC に接続

5.4 共有ストレージとの接続(ゲストのパススルー接続)

ゲストOS の Windows Server 2003 R2 から共有ストレージへの接続は、Hyper-V2.0 のパススルー機

能を使用してFC 接続ストレージと接続しています。 1. ホストでHyper-V マネージャーを起動します 2. ゲストの仮想マシンを選択して設定をクリックします 3. 仮想マシンの設定ダイアログよりSCSI コントローラーを選択し、新しいハードドライブの追加 ボタンをクリックします 4. 追加するハードドライブの設定へ移り、物理ハードディスクにチェックを入れます 5. 物理ハードディスクのドロップダウンリストよりFC 接続のディスクを選択します 6. 別のディスクを追加する場合は3-5 を繰り返します

(13)

13 7. 全てのディスクを追加したらOK ボタンをクリックして、仮想ハード設定ダイアログを終了しま す

5.5 仮想マシンのソフトウェア構成

仮想マシンのソフトウェアは以下の手順で構成を行いました。 1.ゲスト OS インストール(各仮想マシン) 2.CLUSTERPRO インストール(各仮想マシン) 3.CLUSTERPRO ゲストクラスタ構築(クライアントより設定) 4.データベースサーバーインストール(各仮想マシン) 5.CLUSTERPRO ゲストクラスタへデータベースサーバーを登録(クライアントより設定) 概要については、以下となります。

5.6 ゲスト OS

通常手順で仮想マシンにWindows Server 2003 R2 のインストールを行いました。インストール後に 統合サービスを導入しました。

5.7 CLUSTERPRO ゲストクラスタ

本検証では、ゲストOS の Windows Server 2003 R2 間を CLUSTERPRO でクラスタを構成していま す。 ノード間通信は、サーバーサービス用(Heartbeat 兼用)と Heartbeat 専用の 2 つのネットワークと、 共有ストレージのハートビート用領域を使用するように設定しました。※設定手順については後述。

5.8 データベースサーバー

各仮想マシンへSQL Server 2005 のインストールを行いました。インストール完了後、SQL Server 2005 SP3 に更新しました。

(14)

14

6. CLUSTERPRO によるクラスタ環境構築手順

6.1 ハートビート用ディスク(RAW ディスク)設定

1. 仮想ゲストよりスタートボタン-管理-ディスクの管理を選択します 2. デバイス名を右クリックしてディスクの初期化を選択して初期化します 3. 領域を右クリックして新しいパーティションをクリックします 4. パーティションウィザードが起動します、[次へ]をクリックします 5. パーティションの種類を選択します、デフォルト設定で[次へ]をクリック 6. パーティションサイズの設定を行います、サイズを2GB に設定して[次へ]をクリックします 7. ドライブ文字の設定へ移ります、ドライブ名をE:に設定して[次へ]をクリックします 8. パーティションのフォーマット設定へ移ります、パーティションをフォーマットしないにチェッ クを入れて[次へ]をクリックします 9. パーティションの確認へ移ります、問題ないようなら完了をクリックして終了します

6.2 データ用ディスク(NTFS フォーマット)設定

1. 仮想ゲストよりスタートボタン-を押しマイコンピュータを右クリック、管理-ディスクの管理を 選択します 2. ハートビート用領域の隣の領域を右クリックして新しいパーティションをクリックします 3. パーティションウィザードが起動します、[次へ]をクリックします 4. パーティションの種類を選択、デフォルト設定で[次へ]をクリックします 5. パーティションサイズの設定となります、デフォルト設定で[次へ]をクリックします 6. ドライブ文字の設定へ移ります、ドライブ名をF:に設定して[次へ]をクリックします 7. パーティションのフォーマット設定へ移ります、フォーマットを NTFS にチェックを入れて[次 へ]をクリックします 8. パーティションの確認へ移ります、問題ないようなら完了をクリックしてフォーマットを行い終 了します

(15)

15

6.3 インストール

CLUSTERPRO のインストール・ライセンス登録については製品版に付属もしくは公開されているド キュメントをご参照ください

6.4 クラスタ構築

6.4.1 クラスタ生成ウィザード起動

1. クライアントよりweb ブラウザを起動します、ノード 1 の 29003 ポートを指定して接続します 2. Java の署名確認ダイアログが表示されるので許可をクリックして続行します 3. Web Manager が起動します、クラスタが未構築なのでクラスタ生成ウィザードの開始を促すダ イアログが表示されるので、[クラスタ生成ウィザードを開始する]をクリックしてクラスタ生成 ウィザードを開始します 4. クラスタ生成ウィザードが起動します、クラスタ名と管理IP アドレスを設定して[次へ]をクリッ クしてサーバ・ネットワーク・ハートビート設定へ移ります

6.4.2 サーバ・ネットワーク・ハートビート設定

1. クラスタとして構成するサーバの設定となります、追加ボタンをクリックします 2. サーバ追加ダイアログが表示されます、ゲストの IP アドレス、もしくはゲストマシン名を入力 し[OK]をクリックしてゲストを追加します 3. ゲストを全て追加したら、[次へ]をクリックします 4. インタコネクトの設定へ移ります、デフォルト設定で[次へ]をクリックします

(16)

16 5. NP 解決設定へ移ります、追加ボタンをクリックします 6. 種別のカーソルをクリックしてリストを表示しPing を選択します 7. Ping ターゲットで Ping に使用する IP アドレスを指定します 8. 各サーバのカーソルをクリックして使用する・しないを選択します 9. 追加ボタンをクリックします 10. 種別のカーソルをクリックしてリストを表示し DISK を選択します 11. 各ゲストのハートビート領域のドライブを選択します 12. [次へ]をクリックしてグループリソースの設定へ移ります

6.4.3 グループリソースの設定

1. グループリソースの設定となります、追加をクリックしてグループリソースの設定を行います 2. グループの定義へ移ります、グループ名を入力して[次へ]をクリックします 3. 起動可能サーバ一覧の設定へ移ります、デフォルト設定で[次へ]をクリックします 4. グループ属性の設定へ移ります、デフォルト設定で[次へ]をクリックします 5. グループリソース内のリソース設定へ移ります、追加ボタンをクリックします 6. ディスクリソースをリストより選択して、[次へ]をクリックします 7. 依存関係の設定へ移ります、デフォルト設定で[次へ]をクリックします 8. 復旧動作の設定へ移ります、デフォルト設定で[次へ]をクリックします 9. リソースの定義へ移ります、サーバを選択して[追加]をクリックします 10. ドライブ選択ポップアップが表示されます、接続ボタンをクリックします 11. ドライブ一覧が表示されるのでリソースに登録するドライブを選択して OK をクリックします 12. リソースの定義へ戻るので[完了]をクリックします 13. グループリソース内のリソース追加へ戻ります、[追加]ボタンをクリックします 14. フローティング IP リソースをリストより選択してリソース名を入力し[次へ]をクリックします 15. 依存関係の設定へ移ります、デフォルト設定で[次へ]をクリックします 16. 復旧動作の設定へ移ります、デフォルト設定で[次へ]をクリックします 17. フローティング IP アドレスの設定へ移ります、フローティング IP アドレスを設定して、[完了] をクリックします 18. リソースの定義が終了したら[完了]をクリックします

(17)

17 19. グループリソースの一覧表示が表示されます、問題が無いようであれば[次へ]をクリックしてモ ニタリソースの設定へ移ります

6.4.4 モニタリソースの設定

1. モニタリソースの設定へ移ります、[追加]ボタンをクリックします 2. ディスクRW 監視をリストより選択して、モニタリソース名を入力して[次へ]をクリックします 3. 監視(共通)設定へ移ります、監視タイミングを[常時]にチェックを入れ[次へ]をクリックします 4. 監視(固有)設定へ移ります、監視ファイル名をドライブ名(OS がインストールされているド ライブ)&パス付きで入力 I/O サイズはデフォルト、ストール異常検出動作は「意図的なストッ プエラーの発生」を設定し[次へ]をクリックします 5. 回復動作の設定へ移ります、回復動作のリストボタンをクリックしてリストを表示します 6. 表示されたリストより「最終動作のみ実行」を選択します 7. 回復対象の右にある参照ボタンをクリックして表示されるクラスタのツリーの一番上にある [LocalServer]を選択します 8. 最終動作のリストボタンよりリストを表示します 9. 表示されたリストより「意図的なストップエラーの発生」を選択します 10. [完了]ボタンをクリックします 11. モニタリソースの一覧へ戻ります、完了ボタンをクリック、モニタリソース異常時の回復動作を 抑制する機能を無効にしますかというダイアログが表示されるので、[はい]をクリックします

6.4.5 設定反映・クラスタ起動

1. クラスタ管理画面へ戻るのでツールバーの設定の反映ボタンをクリックします 2. 未設定のディスク情報があります自動設定しますか?と聞かれるので[OK]をクリックします 3. 「未設定の HBA 情報があります自動設定しますか?」と聞かれるので[OK]をクリックします 4. 「変更の反映のためにマネージャ再起動を行いますか?」と聞かれるので[OK]をクリックします 5. 反映に成功した場合、再起動の確認ダイアログが表示されます、[了解]をクリックして再起動し ます 6. Web Manager のプルダウンメニューから[操作モード]を選択して切り替えます

(18)

18 7. ツールバーのサービスよりクラスタ開始をクリックして確認画面で[OK]をクリックします

6.5 サービスリソースへの MS SQL Server 登録

以後の手順は、クラスタ作成後に共有ディスクに下記設定でデータベースを作成して行っております。 データベース名:bench データベース作成箇所:F:¥sql¥data 1. Web Manager のプルダウンメニューより[設定モード]を選択します 2. グループリソースを右クリックして[リソースの追加]を選択します 3. [サービスリソース]をリストより選択して、[次へ]をクリックします 4. 依存関係の設定へ移ります、[既存の依存関係に従う]のチェックを外します 5. リソース一覧が表示されます、[ディスクリソース]を選択して追加をクリックします 6. [次へ]をクリックします 7. 復旧動作の設定へ移ります、デフォルトで[次へ]をクリックします 8. サービスの定義へ移ります、接続をクリックするとサービス一覧ドロップダウンリストに表示さ れますのでリストより[SQL SERVER(MSSQLSERVER) ] を選択します 9. [完了]をクリックします 10. モニタリソースを選択します、サービス監視リソースが追加されているので右クリックして[プロ パティ]をクリックします 11. [回復動作]タブをクリックして回復動作でリストより、[回復対象に対してフェールオーバー実行] を選択し、[OK]をクリックして終了します

(19)

19

6.6 SQL スクリプト作成

事前にNode1 Node2 の C:¥mssql¥ディレクトリに以下の内容で SQL スクリプトを作成してあるもの とします

act.sql

EXEC SP_ATTACH_DB 'bench',

@FILENAME1='F:¥SQL¥DATA¥bench.MDF', @FILENAME2='F:¥SQL¥DATA¥bench_log.LDF'

deact.sql

ALTER DATABASE bench SET OFFLINE WITH ROLLBACK IMMEDIATE EXEC SP_DETACH_DB 'bench',TRUE

(20)

20

6.7 スクリプトリソース追加

1. グループリソースを右クリックしてリソースの追加を選択します 2. スクリプトリソースをリストより選択して、[次へ]をクリックします 3. 依存関係の設定へ移ります、既存の依存関係に従うのチェックを外します 4. リソース一覧が表示されます、ディスクリソースを選択して追加をクリックします 5. サービスリソースを選択して追加をクリックします 6. [次へ]をクリックします 7. 復旧動作の設定へ移ります、デフォルト設定のままで[次へ]をクリックします 8. スクリプトの編集へ移ります、[Start script]を選択し編集ボタンをクリックします 9. エディタが起動します、スクリプトで %CLP_SERVER% が ”OTHER”

%CLP_EVENT% が ”START” または “FAILOVER” の場合、以下を実行するように編集し保存します osql /Usa /P /i c:¥mssql¥act.sql /o c:¥mssql¥act.log

10. スクリプトの編集へ戻ります、[Stop script]を選択し編集ボタンをクリックします 11. エディタが起動します、スクリプトで

%CLP_SERVER% が ”OTHER”

%CLP_EVENT% が ”START” または “FAILOVER” の場合、以下を実行するように編集・保存します

osql /Usa /P /i c:¥mssql¥deact.sql /o c:¥mssql¥deact.log

終了後、[完了]をクリックします

(21)

21

7. フェールオーバー動作検証の実施

構築したゲストクラスタ環境において、以下のテストを行い、フェールオーバーが実行されるかどう かの確認を行いました。 カテゴリ テスト内容 1 サーバ障害 ゲストOS の強制終了 2 ホストOS の強制終了 3 OS 障害 ゲストOS でブルースクリーンを発生 4 ホストOS でブルースクリーンを発生 5 プロセス障害 SQL Server 2005 のプロセスを停止 6 ネットワーク障害 (Production) ゲストOS で仮想 NIC の無効化 7 ホストOS で物理 NIC の無効化 8 ネットワーク障害 (Heartbeat) ゲストOS で仮想 NIC の無効化 9 ホストOS で物理 NIC の無効化 10 ストレージ障害 ホストに接続されているFC ケーブルの引き抜き

7.1 フェールオーバーテストの結果

フェールオーバーテストの結果は以下のようになりました。 テスト項目 結果 1 ゲストOS の強制終了 フェールオーバー後、業務継続 2 ホストOS の強制終了 フェールオーバー後、業務継続 3 ゲストOS でブルースクリーンを発生 フェールオーバー後、業務継続 4 ホストOS でブルースクリーンを発生 フェールオーバー後、業務継続 5 SQL Server 2005 のプロセスを停止 フェールオーバー後、業務継続 6 ゲストOS で Production NW の無効化 フェールオーバー後、業務継続 7 ホストOS で Production NW の無効化 フェールオーバー後、業務継続 *IP 監視リソースの設定が必要 8 ゲストOS で Heartbeat NW の無効化 システムに影響なく、業務継続

(22)

22

9 ホストOS で Heartbeat NW の無効化 システムに影響なく、業務継続

(23)

23

7.2 フェールオーバー動作検証の評価

Hyper-V 上に構築した Windows Server 2003 R2 による CLUSTERPRO 環境において、障害発生時

にSQL Server のフェールオーバーが正常に実行されることが確認できました。 ただし、以下の2 つの留意点があります。

7.2.1 テスト 7 ホスト OS で Production NW の無効化

ホストOS 上でサーバーサービス用の Production ネットワークに接続された物理 NIC を無効にした 場合、クライアントからはSQL Server に接続することはできませんが、ゲスト OS からは障害発生箇 所が特定できず、Heartbeat 用のネットワークは疎通可能なため、このままではクラスタ障害として は検知できません。 クラスタ障害を検知するには、以下の手順でCLUSTERPRO のモニタリソースに IP 監視リソースを 追加します。これにより監視対象のIP アドレスと通信が出来なくなった際にフェールオーバーが行わ れます。 1. モニタリソースを右クリック 2. モニタリソース追加ウィザードが起動、監視リソースにIP 監視を設定して次へをクリック 3. 監視(共通)設定へ移る、監視サーバにノード2 を選択して、次へをクリック 4. 監視(固有)設定へ移る、追加ボタンをクリックして DNS・ゲートウェイ等の常時稼働してい るサーバのIP アドレスを入力して OK をクリック 5. 回復動作の設定へ移る、回復動作のリストボタンをクリックしてリストを表示 6. 表示されたリストより「最終動作のみ実行」を選択 7. 回復対象の右にある参照ボタンをクリックしてグループリソースを選択 8. 最終動作のリストボタンよりリストを表示 9. 表示されたリストより「意図的なストップエラーの発生」を選択 (目的に応じて「何もしない」を選択する場合もある) 10. 完了ボタンをクリック

(24)

24

7.2.2 テスト 8、9 ゲスト OS、ホスト OS で Heartbeat NW の無

効化

Heartbeat ネットワークが疎通できない場合でも、代わりに Production ネットワークでノード間の 生存確認が行なえるため、クラスタ障害とはなりません。そのため、フェールオーバーも実行されま せん。

(25)

25

8. MSCS クラスタ上の SQL Server DB の移行検証

MSCS 上にインストールされている SQL Server は共有ディスク上にシステムデータベースとユーザ ーデータベースが配置されており、フェールオーバー時にも SQL Server のユーザー情報は保持され ます。しかしCLUSTERPRO の場合、ユーザーデータベースのみが共有されているため、別サーバへ SQL Server のデータベースがフェールオーバーした際にユーザー情報の不整合が発生する場合があ ります、これを避けるために以下の手順で各サーバにシステムデータベースを移行してユーザー情報 の不整合が発生しないことを確認しました。

8.1 MSCS クラスタ DB 移行手順

以後の作業は環境が以下の設定となっているものとして手順を進めていきます MSCS ユーザーデータベース:mscsbench を作成 CLUSTERPRO 環境 システムデータベース格納ディレクトリ

C:¥Program Files¥Microsoft SQL Server¥MSSQL.1¥MSSQL¥Data

ユーザーデータベース格納ディレクトリ F:¥sql¥data

※mscsbench は事前に Management Studio か sqlcmd で論理名とデータベースファイル名・データ ベースログファイル名を取得しておきます

(26)

26

8.2 データベースファイルのコピー(MSCS 環境→CLUSTERPRO 共

有ディスク)

1. スタート-管理-クラスタアドミニストレータでクラスタアドミニストレータを起動します 2. リソースにSQL サーバリソースを右クリックしてオフラインをクリックします 3. SQL サーバリソースオフラインになったら、エクスプローラーでデータベースファイルのあるフ ォルダを開きます 4. データベースファイルとデータベースログファイルを CLUSTERPRO のユーザーデータベース 格納ディレクトリへコピーします

8.3 マスターデータベースの移動・起動前修正

1. CLUSTERPRO の Web Manager を起動します

2. グループリソースのSQL Server サービスリソースを右クリックしてサービスを停止します 3. MSCS 環境より以下のファイルをシステムデータベース格納ディレクトリにコピーします マスターデータベースファイルmaster.mdf マスターデータベースログファイル mastlog.ldf リソースデータベースファイルmssqlsystemresource.mdf リソースデータベースログファイル mssqlsystemresource.ldf 4. スタートボタンよりコマンドプロンプトを起動します 5. 以下コマンドを入力してSQL Server をシングルユーザーモードで起動します

規定のインスタンスの場合:NET START MSSQLSERVER /f /T3608

(27)

27

6. sqlcmd コマンドか SQL Server Management Studio を使用して以下のステートメントを実行し てリソースデータベースの設定を行います

ALTER DATABASE mssqlsystemresource

MODIFY FILE (NAME=data, FILENAME= 'C:¥Program Files¥Microsoft SQL Server¥MSSQL.1¥MSSQL¥Data¥mssqlsystemresource.mdf');

GO

ALTER DATABASE mssqlsystemresource

MODIFY FILE (NAME=log, FILENAME= 'C:¥Program Files¥Microsoft SQL Server¥MSSQL.1¥MSSQL¥Data¥mssqlsystemresource.ldf');

GO

ALTER DATABASE model

MODIFY FILE (NAME=modeldev, FILENAME= 'C:¥Program Files¥Microsoft SQL Server¥MSSQL.1¥MSSQL¥Data¥model.mdf');

GO

ALTER DATABASE model

MODIFY FILE (NAME=modellog, FILENAME= 'C:¥Program Files¥Microsoft SQL Server¥MSSQL.1¥MSSQL¥Data¥modellog.ldf');

GO

ALTER DATABASE msdb

MODIFY FILE (NAME=MSDBData, FILENAME= 'C:¥Program Files¥Microsoft SQL Server¥MSSQL.1¥MSSQL¥Data¥msdbdata.mdf');

GO

ALTER DATABASE msdb

MODIFY FILE (NAME=MSDBLog, FILENAME= 'C:¥Program Files¥Microsoft SQL Server¥MSSQL.1¥MSSQL¥Data¥msdblog.ldf');

GO

ALTER DATABASE tempdb

MODIFY FILE (NAME=tempdev, FILENAME= 'C:¥Program Files¥Microsoft SQL Server¥MSSQL.1¥MSSQL¥Data¥tempdb.mdf');

(28)

28

GO

ALTER DATABASE tempdb

MODIFY FILE (NAME=templog, FILENAME= 'C:¥Program Files¥Microsoft SQL Server¥MSSQL.1¥MSSQL¥Data¥templog.ldf');

GO

ユーザーデータベースも以下の設定に従って設定を行います

ALTER DATABASE mscsbench

MODIFY FILE (NAME=mscsbench, FILENAME= 'F:¥sql¥data¥mscsbench.mdf'); GO

ALTER DATABASE mscsbench

MODIFY FILE (NAME=mscsbench_log, FILENAME=

'F:¥sql¥data¥mscsbench_log.ldf'); GO

7. 設定終了後、以下コマンドを入力してSQL Server を終了します

規定のインスタンスの場合:NET STOP MSSQLSERVER

名前付きインスタンスの場合:NET STOP MSSQL$instancename

8. グループリソースを右クリックして移動をクリックします、移動先選択ダイアログが表示される

ので別のノードを選択して[OK]をクリックします

(29)

29

8.4 リソースの追加

1. Node1 および Node2 の C:¥mssql にスクリプトリソースで使用する sql スクリプトを作成します actmscsbench.sql

EXEC SP_ATTACH_DB 'mscsbench',

@FILENAME1='F:¥SQL¥DATA¥mscsbench.MDF', @FILENAME2='F:¥SQL¥DATA¥mscsbench_log.LDF'

deactmscsbench.sql

ALTER DATABASE mscsbench SET OFFLINE WITH ROLLBACK IMMEDIATE EXEC SP_DETACH_DB 'mscsbench',TRUE

2. Web Manager のプルダウンメニューより[設定モード]に変更します 3. グループリソースのスクリプトリソースを右クリックして[プロパティ]を選択します 4. プロパティ設定ウィンドウが開きます[詳細]タブをクリックしてスクリプトの編集へ移ります、 [Start script]を選択し編集ボタンをクリックします 5. エディタが起動します、スクリプトで %CLP_SERVER% が ”OTHER”

%CLP_EVENT% が ”START” または “FAILOVER” の場合、以下を実行するように編集し保存します

osql /Usa /P /i c:¥mssql¥actmscsbench.sql /o c:¥mssql¥actmscsbench.log

6. スクリプトの編集へ戻ります、[Stop script]を選択し編集ボタンをクリックします

7. エディタが起動します、スクリプトで

%CLP_SERVER% が ”OTHER”

%CLP_EVENT% が ”START” または “FAILOVER” の場合、以下を実行するように編集・保存します

osql /Usa /P /i c:¥mssql¥deactmscsbench.sql /o c:¥mssql¥deactmscsbench.log 終了後、[完了]をクリックします

(30)

30

© 2012 Microsoft Corporation. All rights reserved. 本書の情報は、発行日までに取り上げられている問題点に関 する現在のマイクロソフトの見解を表しており、予告なしに変更される場合があります。本書とその内容は、何 ら保証のない現状有姿のまま提供されるものであり、マイクロソフトの提案または確約としないものとします。 マイクロソフトは、提示されている情報の正確性を保証できません。マイクロソフトは、本書の情報について、 明示的、暗黙的、または法的な保証を一切いたしません。 本書における他社製品の記述は、ユーザーの便宜のために提供されているものです。このような参照はマイクロ ソフトによる保証またはサポートを示すものではありません。マイクロソフトはその正確性を保証できず、製品 は変更される場合があります。また、その記述は、詳細なものではなく、理解を促進するために主な機能を簡略 に説明したものです。これらの製品の正式な説明については、各製造元に問い合わせてください。

参照

関連したドキュメント

1外観検査は、全 〔外観検査〕 1「品質管理報告 1推進管10本を1 数について行う。 1日本下水道協会「認定標章」の表示が

製品開発者は、 JPCERT/CC から脆弱性関連情報を受け取ったら、ソフトウエア 製品への影響を調査し、脆弱性検証を行い、その結果を

3.5 今回工認モデルの妥当性検証 今回工認モデルの妥当性検証として,過去の地震観測記録でベンチマーキングした別の

FSIS が実施する HACCP の検証には、基本的検証と HACCP 運用に関する検証から構 成されている。基本的検証では、危害分析などの

紀陽インターネット FB へのログイン時の認証方式としてご導入いただいている「電子証明書」の新規

※証明書のご利用は、証明書取得時に Windows ログオンを行っていた Windows アカウントでのみ 可能となります。それ以外の

さらに, 会計監査人が独立の立場を保持し, かつ, 適正な監査を実施してい るかを監視及び検証するとともに,

検証の実施(第 3 章).. 東京都環境局