ADサーバのバックアップをAMIから復旧するとどうなるか検証してみた
環境構築
AWS上にドメインコントローラーを2台作成しました。
(検証なので、単一サブネットでパブリックに丸出しという暴挙です。)
- HARAADSV01(AD1号機)10.0.1.10/24
- HARAADSV02(AD2号機)10.0.1.20/24
ざっくり構成図
各操作マスタは1号機(HARAADSV01)が担っている状態です。
dcdiag /v
Role Schema Owner = CN=NTDS Settings,CN=HARAADSV01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=local
Role Domain Owner = CN=NTDS Settings,CN=HARAADSV01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=local
Role PDC Owner = CN=NTDS Settings,CN=HARAADSV01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=local
Role Rid Owner = CN=NTDS Settings,CN=HARAADSV01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=local
Role Infrastructure Update Owner = CN=NTDS Settings,CN=HARAADSV01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=local
検証の流れ
- バックアップとしてAMIバックアップを作成
- AD1号機が不慮の事故で亡くなったと想定(=シャットダウンする)
- AD2号機にOUとユーザを追加
- AD1号機をAMIバックアップから復旧
- AD2号機に追加されたOUとユーザが1号機に追加されるかを確認する
バックアップとしてAMIバックアップを作成
AWSコンソールからAMIバックアップを作成します。
※インスタンスは止めずに再起動もしないで作成します。(運用しているADサーバを想定)
AMIが利用可能になりました。(利用可能になるまで5分ほどかかります)
AD1号機が不慮の事故で亡くなったと想定
AD1号機をシャットダウンします。
AWSコンソール側からも停止が確認できました。
AD2号機にOUとユーザを追加
AD1号機が停止後にOUとユーザを追加しました。
AD1号機をAMIバックアップから復旧
EC2メニューから「インスタンスの起動」を選択します。
自分のAMIから作成したバックアップを選択します。
正常にインスタンスが起動できます。
※VPCやサブネットは停止したインスタンスと同様に設定を行いました。
※EC2ではIPは基本的に変更ができないため、停止中のインスタンスに割り当たっているIPはリストアしたインスタンスに割り振ることができません(停止中のインスタンスを削除する必要があります。)
AD2号機に追加されたOUとユーザが1号機に追加されるかを確認する
リストアしたAD1号機に入って、OUとユーザを確認するも反映されていない。
「
AD1号機のIPが変更されていて、名前解決ができていません。DNSの設定を変更します。
※10.0.1.10は停止しています。
優先DNSをリストア後のAD1号機のIPに変更します。
リストア後のAD1号機でDNSの更新を行います。
ipconfig /registerdns
サーバを再起動し、OUとユーザが正常に同期されたことを確認できました。
検証のまとめ「ADサーバのバックアップをAMIから復旧するとどうなるか?」
感想
インスタンスのプライベートIPアドレスが付け替えできないことによる設定調整が必要であることがポイントだと思いました。
ドメインコントローラーとしては復旧するものの2号機がDNSサーバを見失うので、リストア後の1号機を正しく名前解決できる状態にしないと2号機からの同期が正常に動作しません。
※クライアント端末の優先DNS設定も変更が必要ですね。
既存インスタンスを削除して、IPを引き継ぐパターンもありますが、念のため残しておきたいことが多いと思うので、上記対応が基本的にはいいのかなと思います。
別方法としては2号機をFSMO(操作マスタ)に上書きして、3号機をドメイン追加する方法でもいいのかなと思います。(ntdsutilコマンドを使用する)
環境構築の備忘録
ドメインコントローラーの2台目追加で少しハマりました。
pingも通って、nslookupでもtest.localが名前解決できているのに、なぜかドメイン昇格時の「既存のドメインにドメインコントローラーを追加する」ができませんでした。。。
WORKGROUP環境からドメイン参加させるとすんなり行ったので、今後の検証環境を作る際も同様の手順でやろうと思いました。
Discussion