Serie „Migration zu Windows Server 2019“ – Übersichtsseite

Moin @all,

Ich arbeite mit einigen Windows Servern, die beim Schreiben dieser Zeilen noch mit Windows Server 2012R2 und 2016 laufen. Ich möchte alle Server auf Windows Server 2019 migrieren. Es besteht absolut keine technische Anforderung für dieses Projekt – es ist die Neugier auf Neues, die mich antreibt. Damals hatte ich auch schon einige Migrationen von 2012 auf 2016 aufgezeichnet und dokumentiert (die findet ihr alle im Blog). Nur dieses Mal soll es professioneller werden! Ich möchte daher die gesamte Migration aller Komponenten (AD,FS, HV, MX, ADFS, WAP, RDS, …) in einer Serie zusammengefasst vorstellen.

Der Prozess wird natürlich einige „Tage“ dauern, denn ich erledige die Migrationen und die gesamte Dokumentation in meiner Freizeit. Dieser Eintrag soll als Einstieg in die chronologisch sortierten Beiträge helfen  so könnt ihr den Überblick behalten und sehen, wenn es wieder etwas Neues gibt.

Das ist mein aktueller Migrationsstand:

ServerOSTypServicesDatumStand
2019-07-14Einleitung – eine Projektbeschreibung
2019-07-14Vorarbeiten – neue Gruppenrichtlinien und Anpassungen im WSUS
WS-HV2Win 2016Phys, GUIHV2019-08-06ersetzt durch WS-HV3
WS-MONWin 2016VM, GUIATA2019-08-15Inplace-aktualisiert und umbenannt in WS-ATA
WS-DPMWin 2016VM, GUIDPM 20162019-08-15neu installiert mit DPM 2019
WS-IPMWin 2012R2VM, GUIPRTG, SYSLOG2019-09-10mit PRTG und SYSLOG migriert auf WS-MON
WS-RDS1Win 2016VM, GUIRDSH2019-09-10als WS-RDS1 neu installiert mit HTML5-Webclient
WS-FS1Win 2012R2VM, GUIFS, DFSN, DFSR2019-11-17Migration der File- und Printserver mittels Wipe & Load mit DFSR und DFSN (WS-FS1 und WS-FS2)
WS-FS2Win 2012R2VM, GUIFS, DFSN, DFSR 2019-11-17Migration der File- und Printserver mittels Wipe & Load mit DFSR und DFSN (WS-FS1 und WS-FS2)
WS-HV1 Win 2016 Phys, GUI HV2019-11-28durch WS-HV4 ersetzt
WS-RA1Win 2016VM, GUIVPN, WAP, NPS2019-12-31WAP durch HAProxy ersetzt & Entfernung von ADFS (WS-RA1 und WS-RS2);
NPS mit Wipe&Load migriert (WS-RA1)
WS-RA2Win2016VM, GUIVPN, WAP 2019-12-31 WAP durch HAProxy ersetzt & Entfernung von ADFS (WS-RA1 und WS-RS2);
Server ersatzlos entfernt
WS-RDS3 Win 2016 Phys, GUI HV, FS, DFSN, DFSR 2020-01-01Dateidienste auf neuen WS-FS3 verschoben
2020-01-05Umbenennen der neuen Hyper-V-Server (WS-HV1 und WS-HV2)
2020-01-06Neuinstallation als WS-HV3
WS-MX1Win 2016VM, GUIMX 20162020-02-29Migration auf Exchange Server 2019 (Teil 1)
WS-MX2Win 2016VM, GUIMX 20162020-04-17Migration auf Exchange Server 2019 (Teil 2)
WS-PRINT1Win 2019VM, GUIPRINT2020-05-22neuer Server – Verschiebung der Druckservices von WS-FS1
2020-06-01Aktualisierung der VHDX-Basefile
WS-DC1Win 2016VM, GUIAD, DNS, DHCP, ADFS2020-06-02Wipe & Load Migration mit DHCP-Failover-Migration
WS-DC2Win 2016 VM, GUI AD, DNS, DHCP, ADFS 2020-06-08Wipe & Load Migration mit DHCP-Failover-Migration
WS-DC3Win 2016 VM, CoreAD, DNS, DHCP
WS-RDS2Win 2016 VM, GUI RDS
WS-CA1Win 2016 VM, CorePKI
WS-CM1Win 2016 VM, GUI WSUS, WDS

Meine Spezialscripte

In eigentlich allen Beiträgen meiner Migration werdet ihr einige meiner eigenen PowerShell-Scripte in Aktion erleben. Diese gehören natürlich nicht zum Betriebssystem-Standard. Daher mag deren Einsatz etwas abstrakt erscheinen. Aber ich habe die relevanten Scripte in meinem Blog veröffentlicht. Hier gibt es noch einmal die direkten Links:

NameBeschreibung
PowerShell gMSA-AdminDas Script erstellt und verwaltet Group Managed Service Accounts im Active Directory. Zusätzlich kann es diese durch PowerShell-Remoting auf Servern als Account für Services und ScheduledTasks konfigurieren – natürlich mit einer grafischen Oberfläche.
PowerShell PAM-AdminGUIMeine Infrastruktur habe ich mit einer sehr granularen Berechtigungsstruktur versehen, die ich mit Gruppenmitgliedschaften im Active Directory steuere. Meine Admin-Accounts sind KEINE Mitglieder in diesen Gruppen. Die Mitgliedschaft steuere ich temporär VOR der administrativen Tätigkeit – mit der grafischen Oberfläche dieses PowerShell-Scriptes.
PowerShell AD-SecurityScopesDie vielen Gruppen und die dazugehörigen Gruppenrichtlinien für meine granulare Berechtigungsstruktur erstelle ich natürlich nicht manuell… Auch hier kommt ein PowerShell-Script zum Einsatz.