Skip to content

MS_ActiveDirectoryBackup

nishi_74322014 edited this page Aug 4, 2026 · 1 revision

Active Directory(バックアップ)

概要

Active Directory、DC(ドメインコントローラー)の
バックアップ・リストアのポイントをサマリしました。

リストア問題のポイント

リストア問題が発生する理由

  • AD のバックアップ・リストアが問題になり易いのは、
    AD 自体がマルチマスタ分散システムであり
    マルチマスタ分散システムの仕組みに起因している。

  • このため、DC の全台リストアでは、この問題は発生しない。

  • また、DC 新規追加型のリストアでも、この問題は発生しない。
    このため、DC 新規追加型のリストアが推奨の復旧手順の一つとも言える。

  • Active Directory(レプリケーション)

リストアで発生する問題

分類 問題
復旧後にエラーが発生する FSMO が失われる/USN ロールバック/SID の重複/USN ジャーナル・ラップ
覚えの無いデータが発生する 残留オブジェクト(Lingering Object)の問題
バックアップにアクセスできない 認証が AD に依存している場合

リストア問題と対応

FSMOが失われる

  • 主に新規インストールによる復旧をした場合に発生する。
  • FSMO は特定の処理に利用されるため、それ以外の処理は継続できる。
    このため、発覚が遅れる事がある。

対処は Active Directory(操作マスタ・FSMO)seize(強制転送)を参照。

USNロールバック

  • 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 をリセットして安全に復旧する。 ただしこれは「スナップショットを日常の復旧手段にしてよい」という意味ではない。

SIDの重複

  • 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 ValuesRID Previous Pool / RID Pool を調整するが、 これは Microsoft サポートの指示下で行う操作である。

USNジャーナル・ラップ

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 以降にアップグレードできない。

残留オブジェクト(Lingering Object)

  • マルチマスタ分散システムでは、削除したオブジェクトがレプリケーションによって復元される。
    このため、オブジェクトの削除には、特別な仕組みが必要になる。

    • 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 スナップ・ショットの戻し操作

DC新規追加型のリストア

Active Directory の DC はマルチマスタ分散システムによって、
他の DC 上にデータを保全しているため、DC 新規追加型のリストアも可能。

通常この方式が推奨されるが、以下の考慮が必要な場合は、
Windows Server バックアップ等でのバックアップ・リストアが必要。

  • 全てのレプリカ上で健全なデータが亡くなる場合の考慮
  • 復旧時間(レプリケーション時間を含む)の時間短縮目的

補足: リストアには 2 種類あり、区別が重要である。

種別 内容
非権威(Non-authoritative)復元 復元後、他 DC から最新の変更を受け取る。通常はこちら
権威(Authoritative)復元 復元した内容を「正」として他 DC に押し付ける。ntdsutil で USN を加算

「誤って OU を消してしまった」場合に権威復元が要るが、 2008 R2 以降は AD ごみ箱を有効にしておけば 権威復元なしで復元できる(要フォレスト機能レベル 2008 R2 以上)。 ごみ箱は一度有効にすると無効化できないが、有効化を強く推奨する。

参考


Tags: インフラストラクチャ, Active Directory, バックアップ

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki

(未着手)

開発基盤部会 Wiki

移行管理: DONETODO

Clone this wiki locally