こんにちは SCSK 野口です。
前回は、高可用性システムの土台となるADドメインの構築と、
WSFC(Windows Server Failover Clustering)の初期設定までをご紹介しました。
いよいよ後編では、本命となる「DataKeeper」をインストールし、
共有ディスクを使用しない「SANレス・クラスター」を完成させていきます。
インストールの手順から、ジョブの作成、そして実際の動作テストまでを詳しくレポートします!
はじめに
今回の検証環境について
本編は、前編での「ADドメイン参加」および「WSFCの機能インストール」が
完了していることを前提に進めていきます。
- OS: Windows Server 2019 Standard Evaluation
- ノード: WIN2019N01, WIN2019N02(同一ドメインに参加済み)
- ADサーバ: WIN2019AD(DNS/ドメインコントローラー)
- ディスク: 各ノードに OS用(C:) と データレプリケーション用(E:) を用意
- クォーラム: ファイル共有マジョリティ(ADサーバ上の共有フォルダを使用)

前編のおさらいだけど、レプリケーション対象にするEドライブのサイズは、
両方のサーバで1バイトの狂いもなくピッタリ合わせてあるよ!
DataKeeperの構築
DataKeeperのインストールとライセンス適用
いよいよ、DataKeeperをインストールしてデータの同期設定を行っていきます。
本作業は、クラスターを構成する 1号機・2号機の両方 で実施します。
1. インストーラーの実行
両方のノードでセットアッププログラム(例:DK-10.0.2-Setup)を起動します。

2. セットアップの開始
ウィザードが起動したら、[Next] をクリックします。

3. 使用許諾契約の確認
内容を確認し、[Yes] をクリックします。

4. インストールコンポーネントの選択
両方にチェックが入っていることを確認し、[Next] をクリックします。

5. インストール先の指定
デフォルト設定のまま、[Next] をクリックします。

6. システム構成変更の確認
ファイアウォールの例外設定やサービスの設定変更を確認し、[はい] をクリックします。

7. サービスアカウントの設定
DataKeeper サービスを動かすためのアカウントを指定します。
[Domain or Server account] を確認し、[Next] をクリックします。

8. アカウント情報の入力
DataKeeperの実行権限を持つドメインユーザー
(例:Administratorなど)のパスワードを入力し、[Next] をクリックします。
※ パスワードは全ノードで共通である必要があります。

9. ビットマップファイルの作成通知
保存先に関する通知を確認し、[OK] をクリックします。

10. ライセンスの登録
インストール完了後、ライセンスマネージャーが自動起動。
[ライセンスをファイルからインストール] をクリックします。

11. ライセンスファイルの選択
[ライセンスファイル選択] をクリックし、用意していたライセンスファイル(.lic)を選択します。

12. 適用結果の確認
ライセンスが正しく認識されたことを確認し、[OK] をクリックします。

13. インストールの完了と再起動
DataKeeperのサービスを有効にするにはOSの再起動が必要なため、
[Yes, I want to restart my computer now.] を選択し、[Finish] をクリックします。


仮想メモリ(ページングファイル)の設定に抜け漏れがあると、
『4. インストールコンポーネントの選択』の後に警告のポップアップが出るよ!
もし表示されたら、事前の設定内容をもう一度確認してみてね!
ジョブの作成とWSFCへのリソース登録
ここからは「DataKeeper 管理コンソール」を使用し、DataKeeper 特有の構成設定を行います。
まず、ミラーリングを行うノード同士を管理コンソール上で「接続(Connect)」させます。
この準備が完了した後、実際の同期設定である「ジョブの作成」へと進んでいきます。
1. DataKeeper 管理コンソールの起動
スタートメニューから [DataKeeper] をクリックします。

2. サーバーへの接続を開始
右側の操作メニュー、または中央の Jobs セクションにある [Connect to Server] をクリックします。

3. 1台目のノード(Node01)を接続
[Server] 欄に 1 台目のサーバー名(例:WIN2019N01)を入力し、[Connect] をクリックします。

4. 接続完了の確認
「Successfully connected to…」を確認し、[OK] をクリック。

5. 2台目のノード(Node02)を接続
再度 [Connect to Server] をクリックします。
2 台目のサーバー名(例:WIN2019N02)を入力し、 [Connect] をクリックします。

6. 接続完了の確認
1台目と同様に接続を確認し、 [OK] をクリックします。
これで両方のノードが管理下に入り、ジョブを作成する準備が整いました。
7. ジョブ作成ウィザードの起動
右側の操作メニューから [Create Job] をクリックします。

8. ジョブ名の入力
[Job name] に任意の名前(例:Job-E)を入力し、[Create Job] をクリックします。

9. ソース(送信元)の選択
データを送る側のサーバー情報を設定し、[Next] をクリックします。
・Server: 1台目のノード(例:WIN2019N01)
・IP address: 送信に使用するIPアドレス
・Volume: ミラーリングしたいドライブ(例:Eドライブ)

10. ターゲット(送信先)の選択
データを受け取る側のサーバー情報を設定し、[Next] をクリックします。
・Server: 2台目のノード(例:WIN2019N02)
・IP address: 受信に使用するIPアドレス
・Volume: 送信元と同じドライブ(例:Eドライブ)

11. オプション設定
ミラーリングの方式を設定し、[Done] をクリックします。
・圧縮設定: 今回は [None](なし)
・同期方式: 同一LAN内での構成のため [Synchronous](同期)

12. ミラー作成の進行
ミラーリングの作成処理が開始されます。処理完了後に画面が変わるので、それまで待ちます。
13. ミラーの作成とWSFCへの登録
画面が変わると、「このボリュームをWSFCの利用可能記憶域に登録しますか?」
という確認メッセージが表示されます。ここでは必ず [はい] をクリックします。

14. ジョブ作成完了の確認
左ペインに、作成したジョブ(例:Job-E)が表示され、
Job state が「Mirroring(緑のチェック)」になっていることを確認します。

15. WSFC側の確認
フェイルオーバー クラスター マネージャーを開きます。
DataKeeper Volume が『オンライン』になっていれば、
WSFC の『利用可能記憶域』として正常に登録されています。

「13. ミラーの作成とWSFCへの登録」で『はい』を押すだけで、
WSFC側がDataKeeperを共有ディスクとして認識してくれるんだ!
WSFCの設定
役割とリソース追加(サービス用IP/記憶域)
続いて、クラスター上で実際に業務サービスを動かすための「役割」を作成し、
DataKeeperのディスクやサービス用IPアドレスを紐づけていきます。
1. 役割の構成
フェイルオーバー クラスター マネージャーの左ペインで「役割」を選択し、
右側の操作メニューから [役割の構成…] をクリックします。
ウィザードに従い、空の役割(例:新しい役割)を作成します。

2. 役割の作成完了
「新しい役割」が作成され、一覧に表示されていることを確認します。

3. 記憶域の追加
作成した役割を右クリックし、[記憶域の追加] をクリックします。

4. 追加するディスクの選択
[利用可能なディスク] の一覧に[DataKeeper Volume E] が表示されていることを確認します。

5. ディスクの確定
チェックボックスにチェックを入れ、[OK] をクリックします。

6. 記憶域の確認
役割の下部に、DataKeeperのボリュームが正常に追加されたことを確認します。

7. クライアント アクセス ポイントの追加
役割を右クリックし、[リソースの追加] >[クライアント アクセス ポイント] をクリックします。

8. ネットワーク名とIPアドレスの設定
任意のネットワーク名(例:Data-Service)と、業務で使用するサービス用の
仮想IPアドレス(例:192.168.56.102)を入力し、[次へ] をクリックします。

9. 設定内容の確認
内容に間違いがないか確認し、[次へ] をクリックします。

10. リソースの作成完了
「新しいリソースが正常に作成され、構成されました。」と表示されたら、[完了] をクリックします。

11. リソースの状態確認
役割の中に「サーバー名」と「記憶域」の両方が揃ったことを確認します。
この時点ではまだオフライン状態です。

12. リソースの起動
追加されたリソース(サーバー名)を右クリックし、[オンラインにする] をクリックします。

13. 全リソースのオンライン確認
ネットワーク名、IPアドレス、DataKeeper Volumeのすべてが
「オンライン」状態になったことを確認します。


これで業務用のIPアドレス(102番)と名前が準備できたね!
管理用の101番とは別にサービス専用の窓口を作るのがWSFCの基本だよ。
依存関係の追加
リソースが正しい順番で起動するように、「依存関係」を設定します。
共有ディスクの代わりに DataKeeper を使用している本環境では、
ディスクがオンラインになった後に IP アドレスが起動するように制御する必要があります。
1. リソースのプロパティを開く
役割の中にある「IP アドレス」を右クリックし、[プロパティ] をクリックします。

2. 依存関係タブの選択
プロパティ画面の上部にある [依存関係] タブをクリックします

3. 依存関係の挿入
[挿入(I)] ボタンをクリックします。

4. 依存リソースの選択
追加された行のドロップダウンリストから、[DataKeeper Volume E] を選択します。

5. 設定の適用
依存関係にディスクが指定されたことを確認し、[OK] をクリックします。

6. 依存関係レポートの表示
正しく設定できたか確認するため、役割(新しい役割)を右クリックして
[依存関係レポートの表示(V)] をクリックします。

7. レポートの確認
ブラウザで依存関係レポートが表示されます。
「ネットワーク名」→「IP アドレス」→「DataKeeper Volume E」という
順に矢印がつながっていることを確認します。


このレポートでは、右側に行くほど『親(基盤)』になるんだ。
DataKeeper Volume が一番最初に起動するように設定するのが、
SANレスクラスターを安定させるコツだよ!
クォーラム監視の設定
続いて、クラスターの安定稼働に欠かせない「クォーラム(多数決)」の設定変更を行います。
前編で作成した共有フォルダを「監視役」として指定する手順です。
1. クォーラム構成ウィザードの起動
クラスター名を右クリックし、
[他のアクション] > [クラスター クォーラム設定の構成…] をクリックします。

2. クォーラム構成オプションの選択
[クォーラム監視を選択する] を選択し、[次へ] をクリックします。

3. クォーラム監視の選択
[ファイル共有監視を構成する] を選択し、[次へ] をクリックします。

4. ファイル共有監視の構成
作成した共有フォルダのパス(例:\\WIN2019AD\Quorum)を入力し、[次へ] をクリックします。

5. 概要
設定内容を確認し、[完了] をクリックします。

6. 設定後の確認
画面中央の「クラスター コア リソース」にファイル共有監視が追加され、
オンラインであることを確認します。


「監視役」となる共有フォルダを登録することで、
片方のサーバーが止まってもサービスを継続できるよ。
これでクラスターが正常に判断を下せる準備が整ったね!
動作テスト
スイッチオーバー
はじめの動作テストとして、意図的にノードを切り替える
「スイッチオーバー」を実施し、リソースが正常に移動することを確認します。
1. 役割の移動
フェイルオーバー クラスター マネージャーで、[新しい役割] を右クリックし、
[移動] > [ノードの選択…] をクリックします。

2. 移動先ノードの選択
移動先のノード(例:WIN2019N02)を選択し、[OK] をクリックします。

3. 移動後の状態確認
「所有者ノード」が2号機に切り替わり、
すべてのリソースが「オンライン」になったことを確認します。

4. 旧稼働系(1号機)のディスク確認
1号機側でエクスプローラーを開きます。待機系になった1号機では、
Eドライブ(DataKeeperボリューム)がロックされ、
アクセスできない状態(場所が利用できません)になるのが正しい挙動です。

5. 新稼働系(2号機)のディスク確認
次に、2号機側でエクスプローラーを開きます。こちらではEドライブが
正しくマウントされ、ドライブの容量が表示されていることを確認します。

6. データの確認
Eドライブの中身にアクセスし、1号機で作成していた
ファイルやフォルダがそのまま参照できることを確認します。

7. スイッチオーバー前のIP確認(1号機)
切り替え前は、1号機に管理用IP(101番)とサービス用IP(102番)の両方が割り当たっています。

8. スイッチオーバー前のIP確認(2号機)
2号機には、自身の物理IPのみが割り当たっています。

9. スイッチオーバー後のIP確認(1号機)
スイッチオーバー後、1号機からはサービス用IP(102番)が消えていることを確認します。

10. スイッチオーバー後のIP確認(2号機)
2号機にサービス用IP(102番)が新しく追加されていることを確認します。


サービス用IP(102番)がノード間をしっかり移動しているのが確認できたね!DataKeeperによってEドライブのデータも2号機へ引き継がれているから、
これでスイッチオーバー成功だよ。
フェイルオーバー
予期せぬシャットダウンが発生した際、クラスターが自動で切り替わるかを確認します。
1. 稼働系ノードのシャットダウン
現在稼働しているノード(例:2号機)をシャットダウンし、OSが突然落ちた状態を再現します。

2. フェイルオーバーの確認
待機系だった1号機でクラスターマネージャーを確認します。
所有者ノードが1号機へ自動的に切り替わり、
すべてのリソースが「オンライン」になっていれば成功です。

3. DataKeeperのミラー状態確認(再同期待ち)
シャットダウンした2号機を再度起動させた後、DataKeeper 管理コンソールを確認します。
停止中に発生したデータの差分を埋めるため、
Job state が「Resync pending(再同期待ち)」と表示されます。

4. 再同期の開始
そのまましばらく待つと、自動的にデータの同期処理が開始されます。

5. データの再同期中
Job state が「Resyncing」となり、1号機で更新されたデータが2号機へコピーされます。

6. ミラーリング状態への復帰
同期が完了し、Job state が「Mirroring(緑のチェック)」に戻ったことを確認します。

7. フェイルオーバー前のIP確認(1号機)
2号機が正常に稼働していた時点では、1号機にはサービス用IP(102番)は割り当たっていません。

8. フェイルオーバー後のIP確認(1号機)
フェイルオーバー後の1号機で ipconfig を確認します。
サービス用IP(102番)が自動で引き継がれ、1号機で業務が継続できていることがわかります。


予期せぬ故障が起きても、WSFCが自動で切り替えてくれるから安心だね!
2号機を立ち上げた後のDataKeeperの再同期も全自動で進むから、
復旧の手間がとっても楽になるわよ。
まとめ
これで「WSFC × DataKeeper」によるSANレス・クラスターの全工程が完了しました。
物理的な共有ストレージを導入することなく、ソフトウェアの力でデータの高可用性を実現できるDataKeeperは、クラウド環境やコストを抑えたい現場で非常に強力な武器になります。
実際に構築してみると、DataKeeperがWSFCのストレージリソースとしてシームレスに統合されるため、
運用面でも「共有ディスクがある構成」と変わらない操作感で扱えるのが非常に便利だと感じました。
今回のレポートが、これから高可用性システムを構築される皆様の参考になれば幸いです。
・ライセンス適用後は必ずOSを再起動してサービスを有効化する。
・仮想メモリの設定など、DataKeeper特有の前提条件をしっかりクリアしておく。


