Erstellen Sie eine Vagrant Windows Server 2012-Box mit Active Directory + Forest Breaking WinRM

Erstellen Sie eine Vagrant Windows Server 2012-Box mit Active Directory + Forest Breaking WinRM

Ich habe die Anweisungen befolgtdieser Blog-Beitragum eine Vagrant-Box mit Windows Server 2012 R2-Evaluierung zu erhalten. Dann habe ich versucht, Active Directory Domain Controller und einen Active Directory Forest (mit erster Domäne) mithilfe der Vagrant-Bereitstellungsfunktion zu installieren. PowerShell-Skripts stammen aus demselben Blog, sieheHier. Nach der Installation des AD-Forests – die einen Neustart erfordert – verliert Vagrant jedoch die WinRM-Verbindung mit dem folgenden Fehler und fährt nicht mit der Bereitstellung fort:

Error occurred: An authorization error occurred while connecting to WinRM.

User: vagrant
Endpoint: http://127.0.0.1:5985/wsman
Message: WinRM::WinRMAuthorizationError

Es scheint, dass die Installation des AD-Gesamtstruktursystems das Netzwerk/die Authentifizierung unterbricht, bis Windows neu gestartet wird. Die eigentliche Installation scheint erfolgreich zu sein. Das Problem ist jedoch, dass die Bereitstellung nicht vollständig durchgeführt wurde (ich habe ein Skript, das nach der Installation der Gesamtstruktur einen neuen AD-Benutzer hinzufügt).

Irgendwelche Ideen, wie man das beheben kann?

Vielleicht als Workaround: Ist es möglich, ein Skript einzurichten, das die AD-Gesamtstrukturinstallation beim Windows-Start ausführt, sodass kein Neustart erforderlich ist?

Antwort1

Ich hatte das gleiche Problem und habe gerade die Lösung gefunden. Fügen Sie diese zu Ihrer Maschinenkonfiguration hinzu.

cfg.winrm.transport = :plaintext
cfg.winrm.basic_auth_only = true

und starten Sie die Maschine dann neu, wenn Sie nach diesem Schritt weitere Bereitstellungen durchführen müssen.

Verwenden Sie in diesem Fall das Plugin vagrant-reload, um während der Bereitstellung einen Neustart durchzuführen. So

adfs.vm.provision "shell", path: "create-domain.ps1"
adfs.vm.provision "reload"
adfs.vm.provision "shell", path: "more-provisioning.ps1"

verwandte Informationen