-
Notifications
You must be signed in to change notification settings - Fork 0
MS_ActiveDirectoryBackup
- 戻る(ドメイン サービス (AD DS)、バックアップのいろいろ)
- Active Directory(バックアップ)
- Active Directory(移行)
- Active Directory(正常性の確認)
Active Directory、DC(ドメインコントローラー)の
バックアップ・リストアのポイントをサマリしました。
-
AD のバックアップ・リストアが問題になり易いのは、
AD 自体がマルチマスタ分散システムであり、
マルチマスタ分散システムの仕組みに起因している。 -
このため、DC の全台リストアでは、この問題は発生しない。
-
また、DC 新規追加型のリストアでも、この問題は発生しない。
このため、DC 新規追加型のリストアが推奨の復旧手順の一つとも言える。
| 分類 | 問題 |
|---|---|
| 復旧後にエラーが発生する | FSMO が失われる/USN ロールバック/SID の重複/USN ジャーナル・ラップ |
| 覚えの無いデータが発生する | 残留オブジェクト(Lingering Object)の問題 |
| バックアップにアクセスできない | 認証が AD に依存している場合 |
- 主に新規インストールによる復旧をした場合に発生する。
- FSMO は特定の処理に利用されるため、それ以外の処理は継続できる。
このため、発覚が遅れる事がある。
対処は Active Directory(操作マスタ・FSMO) の
seize(強制転送)を参照。
-
USN(Update Sequence Number)とは、オブジェクトのレプリケーションに使用される仕組み。
#実際は、InvocationID + USN が使用される。 -
このため安易に DC をリストアすると、
USN がレプリケーション・パートナーより若い値になり、
レプリケーションが実行されないという事態に陥る。
#この逆の現象が、残留オブジェクトの問題である。 -
正しいリストアでは、InvocationID がリセットされるためこの問題は起きない。
-
正しいリストア方法で無い場合、
- 手動での InvocationID リセットが必要になる。
-
repadmin /showreplコマンドを実行すると、その DC の InvocationID を確認できる。
補足: USN ロールバックの典型的な原因は 仮想マシンのスナップショットを戻すことである。 AD 対応でない方法で戻すと InvocationID が変わらないまま USN だけ巻き戻り、 パートナーからは「既に受け取った更新」と判断されて、 以後の変更が一切複製されなくなる(しかもエラーが目立たない)。
Windows Server 2012 以降は VM-Generation ID に対応しており、 ハイパーバイザ(Hyper-V 2012 以降等)がスナップショット復元を通知すると、 AD 側が自動的に InvocationID をリセットして安全に復旧する。 ただしこれは「スナップショットを日常の復旧手段にしてよい」という意味ではない。
-
AD オブジェクトの SID(セキュリティ識別子)は、ドメイン固有値 + RID で決定される。
RID は RID マスタという FSMO 役割が RID プールから DC に対しての割り当てを行う。 -
このため安易に DC をリストアすると、
RID がロールバックされ重複した SID を採番する事態に陥る。 -
余談: RID は大量オブジェクトの追加・削除を繰り返すと枯渇することがある。
移行メモ: 元ページはこの節の一部が 「xxxxxxxxxxされるため」等の伏せ字のままであった。 正しくは次のとおりである。
- 正しいリストア(AD 対応のリストア)では、 DC が保持していた RID プールが破棄され、RID マスタから再取得されるため、 重複は発生しない。
- 手動で対処する場合は、
dcdiag /test:ridmanagerで RID プールの状態を確認できる。- RID プールを強制的に無効化するには
HKLM\SYSTEM\CurrentControlSet\Services\NTDS\RID ValuesのRID Previous Pool/RID Poolを調整するが、 これは Microsoft サポートの指示下で行う操作である。
Windows Server 2003 まで。2008 以降は自動修復(だが遅い)。
-
FRS や DFSR は USN ジャーナルを使用してファイルをレプリケーションしている。
-
このため、FRS や DFSR のサービスを長期間停止していた場合、
USN ジャーナルが一周してしまい、更新するファイルが特定できない問題が発生する。
#短期間に大量のファイルを更新をした場合にも、同様の現象が発生する。 -
USN ジャーナルのサイズはレジストリに設定可能である。
-
HKLM\System\CCS\Services\NTFRS\Parameters\"Ntfs Journal size in MB"(REG_DWORD)
-
補足(最新化): FRS は Windows Server 2016 で完全に廃止された。 ドメインの機能レベルを 2008 以上にする際、 SYSVOL の複製は DFSR へ移行しておく必要がある (
dfsrmigコマンド)。移行が済んでいないと、 DC を 2016 以降にアップグレードできない。
-
マルチマスタ分散システムでは、削除したオブジェクトがレプリケーションによって復元される。
このため、オブジェクトの削除には、特別な仕組みが必要になる。- AD ではこれを削除フラグとガベージ・コレクトの仕組みで実現している。
- 削除フラグ(tombstone)を立てた後、
tombStoneLifetimeで設定された時間を過ぎると
ガベージ・コレクトされる。
-
このため安易に DC をリストアすると、
他の DC で既に完全に削除されたオブジェクトが復活してしまう。-
tombStoneLifetimeを超えていないイメージのリストアであれば、
削除したオブジェクトは後にガベージ・コレクトされる。 -
超えたDC のイメージのリストアであれば、
削除したオブジェクトはレプリケーションによって復活する。
若しくは長期間レプリケートに失敗した DC から復活することもある。
-
-
このため
tombStoneLifetimeの設定値以上古くならないように
バックアップ頻度、世代、破棄を計画するようにする。 -
2008 R2 以降でゴミ箱機能を使用している場合は、
同様にdeletedObjectLifetimeにも考慮が必要。
tombStoneLifetime の既定値
| OS | 既定値 |
|---|---|
| Windows Server 2003 RTM、R2 | 60 日 |
| Windows Server 2003 SP1 以降 | 180 日 |
| アップグレードの場合 | 以前の値が引き継がれる |
補足: ここが AD バックアップ設計の核心である。
tombStoneLifetimeを超えたバックアップは、事実上使えない。 「1 年前のバックアップがある」ことに意味は無く、 180 日以内(実務ではもっと短く)の世代を確実に保つ運用が要る。残留オブジェクトの検出・削除には
repadmin /removelingeringobjectsを使う。 予防としては、Strict Replication Consistencyを有効にしておくと、 残留オブジェクトを受け取った時点でレプリケーションが止まり、 静かな汚染の拡大を防げる。
バックアップメディアに AD のユーザだけアクセス許可を与えている場合、
全 DC が失われた場合、バックアップメディアにアクセスできなくなる。
補足: これは AD に限らず、認証基盤を含む災害復旧計画の一般的な落とし穴である。 復旧に必要な資格情報が、復旧対象のシステムに依存していないかを確認すること (ローカル アカウント や オフラインで保管した資格情報を用意する)。 DSRM(ディレクトリ サービス復元モード)のパスワードも同様に、 忘れられがちだが復旧時に必須である。
- システムへの理解が不可欠
- システムの扱うデータ/アプリケーションの動作/必要なアクセス権
- 手順書は可能な限り単純に
- シンプルな判断/切り分け基準(複雑なディシジョンは設けない)
- シンプルな復旧作業手順(複雑なカバレージは設けない)
- 復旧手順の可用性
- 復旧手順書へのアクセス/復旧作業者へのアクセス権
- DC 新規追加型のリストア
- Microsoft VSS サービス
- Windows Server バックアップ(2008 以降)
- その他 DC 対応のバックアップ・リストア用ソフト
- 2012 以降の Hyper-V スナップ・ショットの戻し操作
Active Directory の DC はマルチマスタ分散システムによって、
他の DC 上にデータを保全しているため、DC 新規追加型のリストアも可能。
通常この方式が推奨されるが、以下の考慮が必要な場合は、
Windows Server バックアップ等でのバックアップ・リストアが必要。
- 全てのレプリカ上で健全なデータが亡くなる場合の考慮
- 復旧時間(レプリケーション時間を含む)の時間短縮目的
補足: リストアには 2 種類あり、区別が重要である。
種別 内容 非権威(Non-authoritative)復元 復元後、他 DC から最新の変更を受け取る。通常はこちら 権威(Authoritative)復元 復元した内容を「正」として他 DC に押し付ける。 ntdsutilで USN を加算「誤って OU を消してしまった」場合に権威復元が要るが、 2008 R2 以降は AD ごみ箱を有効にしておけば 権威復元なしで復元できる(要フォレスト機能レベル 2008 R2 以上)。 ごみ箱は一度有効にすると無効化できないが、有効化を強く推奨する。
- ドメイン サービス (AD DS)
- バックアップのいろいろ
- Active Directory(レプリケーション)
- Active Directory(操作マスタ・FSMO)
- Active Directory(正常性の確認)
- AD DS のバックアップと回復 - Microsoft Learn
Tags: インフラストラクチャ, Active Directory, バックアップ
このWikiは「Open棟梁Project」,「OSSコンソーシアム 開発基盤部会」によって運営されています。