Data Protection Manager 2007 DPM データベースの バックアップとリストア
こんにちは。Windows テクノロジー サポートの服部です。
今日は、DPM 2007 をご利用いただいている皆様へ、DPM データ ベースのバックアップ/リストアについてご紹介したいと思います。
DPM データベース とは
まずは DPM データベース (DPMDB) についてご説明します。
DPM データベース (DPMDB.mdf:DPM データベースのファイル名です。) とは、DPM の設定および構成に関する情報を格納する SQL Server のデータベースです。DPM データベースには、保護対象の情報や、保護グループの設定、取得済みの回復ポイント、ジョブの失敗や成功の情報、DPM の全ての内部情報が格納されています。
DPM データベース取得の目的
DPM サーバーに何らかの障害が発生した結果、DPMDB に何らかの異常が発生し、破損したり消えてしまった場合、DPM の情報は何もかも失われてしまいます。DPM の記憶域プールのディスクが無事な場合も、DPMDB が無ければ使い物になりません。
先に記載しましたとおり、DPMDB が残っている場合、記憶域プールにある情報が使用できますが、記憶域プールの内容から DPM DB を作成するといったことはできないため DPMDB をバックアップしておくことを推奨しています。
つまり、DPMDB のバックアップは DPM サーバー自体のディザスタリカバリの一つとして不可欠な情報なのです。
もちろん、保護対象からバックアップしたデータ (レプリカ) は DPMDB には含まれない為、レプリカは別途バックアップしておくことをお勧めしておりますが、DPMDB のバックアップだけでも以下のような状況で役に立ちます。
- DPM サーバーに異常が発生し、システムが起動不可能になったがレプリカのストレージは無事、という場合に OS を再インストールして DPM を復旧したい。
- DPM の何かの設定を変更したら、DPM 2007 管理者コンソールがクラッシュしてしまうようになった。設定変更前の状態に戻したい。
- DPM の修正プログラム (ロールアップ プログラム) や Service Pack 適用を行ったが、適用前の状態に戻したい。(DPM では適用した修正プログラムや Service Pack はアンインストールして適用前の状態に戻すことが想定されていないため、元の状態に戻すことはできません。更新プログラムの適用中にトラブルが発生した場合に対処するためには DPMDB のバックアップが必要です。)
更新プログラム適用中に電源が落ちてしまい、DPM 2007 が起動不可能になった、等の状況に対して、DPM の修正プログラムを適用するなどの変更前の時点の DPM の状態に復旧するために有効です。(DPM 2007 を再インストール後に DPMDB のリストアを行うだけで OK です。)
DPM データ ベースの取得方法
バックアップを取得する方法は以下の 3 つの方法があります。
a. DPMBackup.exe コマンド
b. セカンダリ DPM サーバーを使用したプライマリ DPM サーバーのデータ ベースバックアップ
c. テープへのバックアップ
上記 3 つの方法の特徴をまとめます。
a) DPMBackup.exeコマンドを実行すると DPMDB を他のバックアップソフトでも取得可能な
“.bak” という形式のファイルで保存します。
b) プライマリ DPM サーバー(主体となってバックアップを実行しているサーバー)
とは別にセカンダリ DPMサーバーを構築する必要があります。セカンダリサーバーから
DPMDB を保護します。
-参考資料
Backing Up DPM by Using a Secondary DPM Server
https://technet.microsoft.com/ja-jp/library/bb795680(en-us).aspx
c) DPMDBの保存先はディスクまたはテープが考えられますが、
DPM 起動障害により、DPM サーバの再構築を行う場合は、テープにバックアップした
DPMDB のリストアを行っていただく必要があります。
テープへの保存については b. のセカンダリ DPM サーバーを使用する方法または
a. の形式で保存したファイルをテープへ保存可能な 3 rd パーティのバックアップ
アプリケーションを使用してバックアップする方法などが考えられます。
DPMDB のバックアップ ステップ バイ ステップ
今回は、前項に記載しました方法の中から DPMBackup.exe コマンドを使用したバックアップ手順について記載します。セカンダリ DPM やテープ ドライブをご用意いただけない環境においても、簡単に DPM の情報をバックアップすることが可能です。
手順:
----------------------------------
1. プライマリ DPM にログインし、 [DPM 管理シェル] を起動します。
2. 以下のコマンドを入力し、現在の DPM データベースのバックアップを作成します。
>dpmbackup -db
3. "C:\Program Files\Microsoft DPM\DPM\Volumes\ShadowCopy\Database Backups" 以下に
DPMDB.bak というファイルが作成されることをご確認下さい。
4. DPMDB.bak ファイルを保存します。別のストレージ (他のファイル サーバーの共有フォルダ、
外付けドライブ等) に保存いただくと安心です。
----------------------------------
リストア方法
次に、DPMDB を復旧する手順について記載します。手順の概要は以下の通りです。
手順概要:
----------------------------------
※ 手順 1 から 5 は、DPM 2007 のアンインストールから再インストールまでのご紹介となりますが、DPM サーバーの OS が起動出来ないという障害発生シナリオの場合は、同じホスト名で Windows Server の再構築を行い、ドメインに参加する必要がございます。Windows Server の復旧については、Windows Server のエディションや、適用されていたサービスパックや更新プログラムなど、以前と同等の状態にしていただく必要があります。(OS 自体のバックアップを Windows Server Backup や NTBackup、ないしは DPM System Recovery Tool にて取得いただいていると、復元もより容易になります。)
1. DPM データベースを復元する前にコントロールパネルのプログラムの追加と削除より
DPM 2007 をアンインストールします。
※必ず、アンインストール時に “ディスクベースの回復ポイントを保持する”を選択します。
2. マシンを再起動します。
3. "SQL Server Management Studio" より DPMDB を削除します。
=====================================
※ [管理ツール] – [サービス] から、”SQL Server Reporting Services” サービスを停止しておきます。
3-1. [スタート] メニューから [Microsoft SQL Server 2005] -> [SQL Server Management Studio] をクリックします。
3-2. <コンピュータ名>\MS$DPM2007$ を選択し、[Connect] を選択します。
3-3. 左ペインの “Databases” を展開し、”DPMDB” を右クリックして [Delete] を選択します。
=====================================
4. DPM 2007 をインストールします。DPM 2007 のインストールに続いて、Service Pack 1 やロールアップ パッケージ等、DPM データベースのバックアップ取得時と同じのものをインストールしておきます。
5. マシンを再起動します。
6. DPM サーバーで、ファイルを復元するフォルダ (復元先フォルダ) を作成します。
7. DPMDBを復元先フォルダに復元します。
8. DPMSync コマンドを使用して DPMDBをアタッチします。
(コマンド実行例:)
DPMSync –RestoreDB –DBLoc “復元先フォルダ\DPMDB.bak”
DPMSync コマンドは DPM サービスをオフラインにし、 SQL Server に DPMDBをアタッチします。
9. DPMSync –sync コマンドを実行します。
下図のような出力結果となります。
DPMSync –sync コマンドにより、マウント ポイント (DPM のレプリカや回復ポイント用ボリュームのマウント先) が以下のように復旧します。これにより、DPM 2007 からレプリカや回復ポイント用のボリュームにアクセス出来るようになるので、障害発生前に取得したバックアップからの回復や、バックアップの継続が可能となります。
※ DPMSync –sync 実行直後は、すべての保護グループに対して整合性が無い状態となりますので、[DPM 2007 管理者コンソール] を開き、各保護グループに対して整合性チェックを実行して下さい。
補足:
DPMDB をリストアした際に、以下の様なエラーが発生し、レポート機能が正常に動作しない場合がございます。
=====================================
レポートの処理中にエラーが発生しました。(rsProcessingAborted)
データ ソース 'DLS' への接続を作成できません。(rsErrorOpeningConnection)
Cannot open database "DPMDB" requested by the login. The login failed. Login failed for user <サーバー名>\DPMR$<サーバー名>.
=====================================
本エラーは DPMDB の再作成やリストアにより、レポート機能実施に必要なユーザー (<サーバー名>\DPMR$<サーバー名>) が新しく登録された DPMDB に対するアクセス権を保持していないためになります。
上記のエラーが発生した際には、以下の手順を実施し、 (<サーバー名>\DPMR$<サーバー名>) に対して、適切なアクセス権を付与していただくことで、レポート機能が正常に動作いたします。
手順:
----------------------------------
1. [Microsoft SQL Server Management Studio] を起動します。
2. 以下を右クリックし、[Properties] を選択します。
[Security] -> [Logins] -> [<サーバー名>\DPMDBReaders$<サーバー名>]
(※ <サーバー名>\DPMDBReaders$<サーバー名> はローカルに存在するグループとなり、ユーザー (<サーバー名>\DPMR$<サーバー名>) が所属しています。)
3. 左ペインより、[User Mapping] を選択します。
4. 右ペイン上部より、[Database] が DPMDB の項目にチェックを入れます。
5. 右ペイン下部より、[public] および [db_datareader] にチェックを入れます。
参考情報:
How to Recover DPM Databases
https://technet.microsoft.com/en-us/library/bb808944.aspx
Repairing DPM 2007
https://technet.microsoft.com/en-us/library/bb808769.aspx
Using DpmSync
https://technet.microsoft.com/en-us/library/bb808877.aspx
Backing Up DPM Databases to Tape
https://technet.microsoft.com/en-us/library/bb795710.aspx
Recovering DPM Servers
https://technet.microsoft.com/en-us/library/bb808991.aspx
どのぐらいの頻度でバックアップすべきか
最後に、DPMDB をどのぐらいの頻度でバックアップすべきか、という点を説明いたします。
レプリカ ボリュームと回復ポイント ボリュームが消失していないが、OS や DPM 2007 が起動不能になった、というシナリオについて、レプリカ ボリュームのみ再利用したい場合は、
保護グループの変更や、保護エージェントのインストールを行って保護対象を追加した、等の設定変更ごとに取得いただければ結構です。
一方で、回復ポイントも復旧したい場合は、DPMDB は回復ポイントを行った日ごとに取っていただく必要があります。
例を以下の通りご紹介します。
1. DPMDB のバックアップ (甲) を作成
2. 回復ポイント A を作成
3. 回復ポイント B を作成
4. DPMDB のバックアップ (乙) を作成
5. 回復ポイント C を作成
6. 回復ポイント D を作成
7. DPMDB のバックアップ (丙) を作成
(※ 1 から 7 の順番に時系列です。)
ここで DPM サーバーに障害が発生し、OS や DPM 2007 の起動が不可能になった際に DPMDB のバックアップ (甲) から DPM サーバーを復旧した場合、レプリカ ボリュームのみが再利用可能となります。
DPMDB のバックアップ (乙) をリストアした場合、レプリカ ボリュームと、回復ポイント ボリュームに残る 回復ポイント A, B は利用可能になりますが、回復ポイント C、D は復旧されません。
DPMDB のバックアップ (丙) をリストアした場合のみ、回復ポイント A,B,C,D とレプリカの全てが再利用可能となります。
つまり、回復ポイントも全て復旧したい、というケースにおいては DPMDB はかなり頻繁に取得いただく必要があります。
一般的な運用の指標として、DPMDB は DPM サーバーの全体的な障害 (記憶域プールも含めた全損) を想定してバックアップしますので、こういった場合、レプリカをテープやセカンダリ DPM から取得しておき、DPMDB とレプリカをリストアして DPM サーバーを復旧させます。この場合、回復ポイント ボリュームはいずれにせよ消失するため、DPMDB を頻繁にとるメリットはありません。
しかしながら、ニーズとして、回復ポイント ボリュームに障害が出ていない場合には、残存する回復ポイントも利用したいという場合には、DPMDB を頻繁にバックアップいただくことも選択肢の一つであるとお考え下さい。