何気に検証環境で作り捨てのActive Directory環境を作成する事が多いのでGistにメモ。
基本的にはServer Managerのウィザードが生成するスクリプトにちょっとだけ手を入れたものです。
ちなみに環境はWindows Server 2012 R2です。
GUIでドメインを作る手順について
ググれば色々なサイトがヒットしますが、すもけさんのActive Directory on AWS | シリーズ | Developers.IOあたりが分かりやすのではないかと思います。
新しくドメインを作るスクリプト
Add-WindowsFeature
でADDSの機能を追加してInstall-ADDSForest
でフォレスト+ドメインを新規に作成しています。
DNSは-InstallDns = $true
にすることでドメイン作成時にインストールされます。
ドメインコントローラーに昇格させるスクリプト
既存のドメインに新たにドメインコントローラーを追加する場合のスクリプトです。
Add-WindowsFeature
でADDSの機能を追加してInstall-ADDSDomainController
でドメインコントローラーに昇格させています。
ドメインに追加のドメインコントローラーを昇格させるスクリプト
ドメインコントローラーを降格させるスクリプト
Uninstall-ADDSDomainController
でドメインコントローラーを降格させ、再起動後Remove-WindowsFeature
でADDSおよびDNSの機能を削除します。
ドメインコントローラーを降格させる際はドメイン コントローラー降格手順 (Windows Server 2012) – Ask the Network & AD Support Teamにもある様にFSMOの役割がどのドメインコントローラーにあるかを確認してから降格させる必要がありますが、Uninstall-ADDSDomainController
の-DemoteOperationMasterRole=$true
とするとFSMOの役割を転送してから降格をしてくれる様です。
ちなみに、現在のFSMOの役割を確認するには、
> netdom query fsmo
コマンドを打つのが一番楽かと思います。
PowerShellだとGet-ADForestおよびGet-ADDomanコマンドレットで確認できます。
PowerShell DSCのxActiveDirectory Moduleについて
DSC Resource KitにActive Directoryを設定するためのxActiveDirectory Moduleなんてものもあります。
ただ、私のPowerShell DSC力が足りないのと、使い捨ての環境を作るにはちょっと面倒かなという感じで全然使っていません...
もう少しPowerShell DSC力を上げていかないといけないですね。