続いては全損時に備えたバックアップの取得です。
全損時に備えたバックアップとしてはクラスターの構成情報のバックアップだけでなく、共有ディスクのバックアップも
取得する必要があります。
共有ディスクのバックアップについていろいろと検証してみたところ、バックアップの設定に少し癖がありそうでした。
■共有ディスクのバックアップ取得の注意点
Windows バックアップで共有ディスクを選択することは可能ですが、バックアップのスケジューリング時に共有ディスクを
選択できるのは、設定時にディスクを所有しているノードだけになります。
上記の図のような状態になっている場合、共有ディスクのバックアップのスケジューリングを設定できるのは、[NODE-1] だけになります。
[NODE-2] に関しては、ディスクの所有者でないため、バックアップの取得対象として設定できません。
そのため、バックアップを設定したノードから共有ディスクがフェールオーバー等で移動すると以下の図のようなバックアップ取得となります。
このとき、Windows Server バックアップの GUI でスケジューリングをしていた場合 [NODE-1] で、スケジュールが実行されると
共有ディスクのバックアップは、[見つからないボリューム] として対象のボリュームのバックアップだけスキップされます。
# Windows Server バックアップの GUI でスケジューリング設定した [wbadmin] は [-template] というオプションで実行されます。
? このオプションで実行されているバックアップの場合、存在しないボリュームのバックアップはスキップされます。
? 
?
この存在しないボリュームがスキップされるという動作ですが、wbadmin を [-template] のオプションで設定しているバックアップでないと、
存在しないボリュームのバックアップが実行されると一部のボリュームだけスキップされるという動作はされず、バックアップ全体がエラーとなってしまいます。
?
?
■ディスクを所有しているノードを意識しないでバックアップを取得する方法
昨日まででここまでは検証ができていたのですが、ディスクを所有しているノードを意識しないでバックアップをスケジューリングする方法が
思い浮かばずに悶々としていましたのですが、ものすごい単純な方法で解決ができることについ先ほど気づきました。
以下の手順で、バックアップのスケジュールを設定すればよかったんですね。
- [NODE-1] が共有ディスクの所有者になるようにクラスタのリソースを移動
- [NODE-1] で [Windows Server バックアップ] を起動
- [Windows Server バックアップ] の GUI の [バックアップ スケジュール] を実行
- [サーバー全体] または、共有ディスクも含めてバックアップを取得するように設定
GUI からスケジュールを設定すると、タスクスケジューラには、[wbadmin.exe] を [templateId] というオプションで実行されるタスクが登録されます。
- [NODE-2] が共有ディスクの所有者になるようにクラスタのリソースを移動
- [NODE-2] で [Windows Server バックアップ] を起動
- [Windows Server バックアップ] の GUI の [バックアップ スケジュール] を実行
- [サーバー全体] または、共有ディスクも含めてバックアップを取得するように設定
この方法でバックアップのスケジューリングをすると、共有ディスクを所有しているノードを意識せずにバックアップが取得できるようになります。
[NODE-1] が共有ディスクを所有している場合の動作
[NODE-2] が共有ディスクを所有している場合の動作
?
気づいてみたら単純な方法ですね。
各ノードが共有ディスクを所有している状態でバックアップを設定すればよかったんですよね。
この方法でクラスターが全損した場合もリストアできる状態のバックアップを取得することができます。
次の投稿ではサーバー、共有ディスクが全損した状態からのバックアップのリストアまとめてみたいと思います。