はじめに
Windows Serverで高可用性と言えばフェールオーバークラスタ―(WSFC)で、そのWSFCがワークグループでも構築できることを知り、AzureのVM上でも使えるかなと思って検証を行ってみました。
結論:
ワークグループのWSFC自身は構築できました。ただ、現時点で、ワークグループのWSFCはサポートされるシナリオが限られていて、積極的に使っていく機能とまでは行かないようです。
https://blogs.msdn.microsoft.com/clustering/2015/08/17/workgroup-and-multi-domain-clusters-in-windows-server-2016/
とはいえ、気になるものは試してみたいので、今回はとりあえず作ってみることを優先し、サポート云々は気にせずに作業を進めました。
事前準備
・OSはWindows Server 2016 Datacenter
・WSFC用サーバーx2台
・DNSサーバーx1台(名前解決のため)
・WSFC用サーバーが同じ可用性セットにあること
・日本語化(Azure VMはデフォルト英語システムとなっています)
・同じユーザー名、パスワードのローカルユーザーが各WSFC用サーバーに作成されていること
・上記で作成されたユーザーはローカル管理者グループに所属していること
・WSFC用サーバーにFailover Clustering 機能が追加されていること
構築内容
① ワークグループサーバーにWSFCを組むための要件に従い、各WSFC用サーバーに同じDNSサフィックスを付けます。
② DNSサーバーにて、名前解決のための登録を行います。ここでは、ドメインサフィックスと同じ名前のゾーンを作成し、WSFC用サーバーのAレコードを登録します。
③ WSFC用サーバーのどちらか1台で「フェールオーバークラスターマネージャー」を開き、クラスターを作成します。作業手順は以下の通りです。
左ペインの「フェールオーバークラスターマネージャー」を右クリックし、「クラスターの作成」をクリックします。
サーバー名を入力して「追加」ボタンをクリックし、「次へ」をクリックします。
ここは検証を実施するため、「はい」にチェックを入れて、「次へ」をクリックします。
「すべてのテストを実行する」にチェックを入れて、「次へ」をクリックします。
ここからクラスターの作成に進みます。
クラスター名を入力して、「次へ」をクリックします。
「クラスターの作成ウィザードを正常に完了しました。」が表示されることを確認したら、「完了」をクリックします。
④ クラスター設定
Azure上のVMでクラスターを構築する場合、クラスターのIPアドレスを静的に指定します。これで、Azureから自動的に振り出されるIPとの重複を回避できます。クラスターのIPアドレス設定手順は以下の通りです。
上記図の通りにクラスターのIPアドレスを設定します。
クラスターへのIPアドレス設定が終わったら、クラスターをオンラインにします。
⑤ クラスターのIPアドレスを設定したら、DNSサーバー上にもクラスターのIPアドレスを登録します。
同じサフィックス名の前方参照ゾーンの空白のところで右クリックし、「新しいホスト」をクリックします。
クラスター名とIPアドレスを入力して、「追加」をクリックします。
⑥ 以上の設定で、クラスターを作成することはできます。ただし、クラスターログには以下のエラーが吐かれます。これはスタンドアロンのDNSサーバーにDNS更新ができないことが原因です。
このエラーについては、NICのTCP/IPプロパティの「この接続のアドレスをDNSに登録する」のチェックを外すことで、回避できます。設定箇所は以下の図をご参照ください。
⑦ 設定完了後、Azureポータルにて 一旦VMの割り当てを解除(停止作業) → 起動を実施する必要があります。
以上の手順で、Azure上のVMでワークグループ WSFCを組むことができました。
追記、ワークグループでWSFCの構築はできたものの、Azure VM上のIISとAzureロードバランサーによるクラスターへ正常にアクセス及びフェールオーバーを試そうとしましたが、ドメインなしの環境では「クライアントアクセスポイント」が作成できないため、そこまで進めることもできませんでした。
残念でした。。。
せっかくなのでドメイン環境でも検証をしてみようと思います。