[トップページ] [FAQ 一覧]

対象:インスタンス

EC2インスタンスをディレクトリサービス復元モードで起動する






AWS インスタンスをディレクトリ サービス復元で起動


AWS EC2インスタンスはクラウドサービスであるためオンプレミスのようなサーバ起動前のキーボード操作は行えません。
(オンプレミスならサーバの前で[f8]を押してモードに入ることが可能です。)
よってディレクトリ サービス復元モード(Directory Service Restore Mode、以下DSRM)で起動するには工夫が必要です。
ダミーでインスタンスを起動し、EBSにアタッチして復元を編集することにより実現します。


なぜ msconfig からのDSRMモードでは駄目なのか


スナップショットからドメインコントローラを起動した場合、そのまま一度でも起動してしまうと他のドメインコントローラから見てUSNロールバックが発生してしまい複製処理が停止してしまいます。もしオンプレならネットワークケーブルを取り外して起動したり、起動時に[F8]を押してDSRMで起動することも可能です。
AWSはクラウドであるためこの処理が行えません。よって本手順によりDSRMで起動するモードに(他のインスタンスから)実行する必要があるのです。


概要




以下の流れで実現します。
(1)"DSRMで起動したいインスタンスと同じタイプのインスタンス"をダミーのインスタンスとして起動します。
(2)このインスタンスで対象のEBSをアタッチします。
(3)bcdedit でDSRMで起動するように設定を修正します。
(4)ダミーのインスタンスからEBSをデタッチします。
(5)元のインスタンスにアタッチします。


具体的手順



(1)AWS マネージメントコンソールを起動
(2)[サービス]→[EC2]
(3)[イメージ]→[AMI]
(4)対象と同じタイプのAMIを選択し起動。同じAZで起動する。
(5)[ELASTIC BLOCK STORE]→[ボリューム]
(6)"DSRM対象インスタンス"のボリュームを選択し[Detach Volume]を実施。(間違えないように注意)
(7)状態が "in-use" が"available"に変わる。
(8)上記のボリュームを選択した状態で[アクション][ボリュームのアタッチ]
(9)"ボリュームのアタッチ"ダイアログが表示されるので、ダミーインスタンスを選択。[アタッチ]を押す。
(10)[インスタンス]→[インスタンス]
(11)ダミーインスタンスを起動。マネージメントコンソールで「Windowsパスワードの取得」によりパスワードを取得
(12)起動が完了したらリモートデスクトップ経由でダミーインスタンスにログイン
(13)[コントロールパネル][コンピュータの管理][ディスク管理]
(14)アタッチしたディスクは"ディスク署名"が設定されていないためオフライン状態となっている。"オンライン"を実行する。
これで"DSRMとして起動したいブートディスクが" Dドライブとして表示されている。
環境によってはDではない可能性がある。以後はDドライブとして表示された想定で進める。

(15)以下のコマンドを実行する。【注意】D:\は実環境に合わせて変更すること。

ディレクトリサービス復元モードに変更する設定。

C:\>bcdedit /store D:\Boot\BCD /set {default} safeboot dsrepair



(16)
"The operation completed successfully." と表示されたら成功。
(17)Dドライブに関して、もしActiveの設定が解除されていたら、パーティションを Active としてマークする。(通常は"システムで予約済み500Mb")
(18)ダミーインスタンスをシャットダウンする。シャットダウンが完了するまで待つ。
(19)[ELASTIC BLOCK STORE]→[ボリューム]
(20)"DSRM対象インスタンス"のボリュームを選択し[Detach Volume]を実施。(間違えないように注意!)
(21)上記のボリュームを選択した状態で[アクション][ボリュームのアタッチ]
(22)"ボリュームのアタッチ"ダイアログが表示されるので、DSRM対象インスタンスを選択。ボリューム名は "/dev/sda1"など環境により設定する。[アタッチ]を押す。
(23)インスタンスを開始する。これで DSRMで起動されるはずである。
(24)ログインは <ローカルホスト名>\administraotr で行う。 <ドメイン名>\administrator では「ドメインが見つからない」というエラーとなる。


戻す


戻すにはmsconfig ツールを使用します。あるいは bcdedit を /deletevalue {default} safeboot オプションで実行します。

msconfig から ディレクトリサービス復元モードへ




bcdedit /deletevalue {default} safeboot



【注意】
デバイス名に誤りがある場合は以下のようなエラーが出力される。
Invalid value 'i-1234567890' for instanceid. Instance does not have a volume attached at root (/dev/sda1)

【超重要】本ページは2019/10/11に記載されました。情報が古くなっている可能性があります。








[ 一覧に戻る]


【注意事項】本ページの内容は個人的に調査した結果がであり内容が正しいことは保証されません。
またAWSサービスは常に改良、アップデートされており本ページの内容が古く誤った内容になる可能性もあります。変更になっても本ページが正しく更新されるとは限りません。
あくまでも参考程度でご覧ください。内容により発生したいかなる時間的損害、金銭的損害、その他の損害に関しても何人も保証しません。