Update eines Exchange Servers
Versionsprüfung
Zunächst prüft man die aktuell installierte Version mit:
Get-ExchangeServer | ft Name,AdminDisplayVersion
Anhand der Build Nr. findet man >>>Hier bei Microsoft<<< die Version des aktuell installierten Cumulativen Updates (CU) heraus.
Meine Lieblingsseite, mit einer Übersicht und wertvollen Hinweisen zu den jeweils aktuellen Updates, der unterschiedlichen Exchange Versionen:
Updates Exchange Server 2010
Updates Exchange Server 2013
Updates Exchange Server 2016
Updates Exchange Server 2019
Installierte Sicherheitsupdates
Möchte man sehen, welche Sicherheitsupdates bereits installiert sind, geht das mit der Windows PowerShell:
(ich filtere hier nur die elend lange Liste der Sprachupdates heraus…)
Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*| where displayname -notlike "*language*" | select-object Displayname,DisplayVersion,InstallDate
Aus aktuellem Anlass
Wer seinen Exchange Serve 2016 noch nicht auf CU20 oder seinen Exchange Server 2019 noch nicht auf CU9 hat, sollte das jetzt schleunigst nachholen!
- Hafnium Hinweise…
- Hinweise zu Pwn2Own 2021
- 2021 Juli Update KB5004779 für Exchange Server 2016 CU20/CU21 – ersetzt KB5003435 (2021 Mai) und KB5001779 (2021 April)
—> ACHTUNG bei CU20 –> Schema Update mit den Sources vom CU21 nicht vergessen!!! - 2021 Juli Update KB5004780 für Exchange Server 2019 CU9/CU10 – ersetzt KB5003435 (2021 Mai) und KB5001779 (2021 April)
Vorbereitungen
Zur Planung, ein Update nimmt in Summe mittlerweile etwa 1h in Anspruch, ohne eventuelles Troubleshooting…
- ISO heruntergeladen und bei mir eingehängt auf F:
- Virenscanner aus!!!
- CMD (nicht die PowerShell!) als Administrator öffnen und in das Installationsverzeichnis wechseln (bei mir F:)
F:
Schema-, Forest-, Domain-Prep
In größeren AD Bereitstellungen empfehle ich immer 1 Tag VOR dem Update, das Schema, das AD und auch die Domain(s) für das Update vorzubereiten. So kann über Nacht alles repliziert werden und das Update läuft auch in großen Umgebungen gut durch. Achtung, wenn im Header „scheinbar“ das falsche CU beim Schema Update angezeigt wird! Das bedeutet nur, dass im verwendeten CU die Schema Update Dateien eines vorangegangenen CU enthalten sind. Diese werden hier für die Schema Vorbereitung verwendet und deshalb wird das „ältere“ CU angezeigt. Das eigentliche Update (siehe unten) sollte dann im Header das neue CU anzeigen.
- Vorbereiten des Schemas (Schema-Erweiterung) mit:
Setup.exe /IAcceptExchangeServerLicenseTerms /PrepareSchema
- Vorbereiten des AD mit:
Setup.exe /IAcceptExchangeServerLicenseTerms_DiagnosticDataOFF /PrepareAD /OrganizationName:"Name der Organisation"
Den Namen der Organisation findet man übrigens via Exchange Management Shell heraus:
get-organizationconfig | select name
- Vorbereiten einer Single Domain mit:
Setup.exe /IAcceptExchangeServerLicenseTerms_DiagnosticDataOFF /PrepareDomain
oder einer Multi-Domain Struktur mit:
Setup.exe /PrepareAllDomains /IAcceptExchangeServerLicenseTerms_DiagnosticDataOFF
oder einer einzelnen Domain, innerhalb einer Multidomain Struktur mit:
Setup.exe /PrepareDomain:germany.contoso.com /IAcceptExchangeServerLicenseTerms_DiagnosticDataOFF
Das Update im „Unattended Mode“
Schnell, übersichtlich, informativ, automatisch, also einfach besser…
- Update via CMD (nicht Powershell!) starten und dann einfach nur warten, manchmal lange warten und den Vorgang auf keinen Fall unterbrechen oder das CMD Fenster schließen!!!
Sollte die Installation auf einen Fehler laufen, wird dieser auch angezeigt!Setup.exe /IAcceptExchangeServerLicenseTerms_DiagnosticDataOFF /Mode:Upgrade
- Installation UM Language Pack nicht vergessen, falls Skype for Business und das Mailbox Feature genutzt wird! Dieses einfach wie gewohnt aus dem Explorer starten.
Prüfungen
Prüfungen nach dem Update mit der Exchange Management Shell…
- Dienste checken:
(hier sollte bei „RequiredServicesRunning“ immer „True“ stehen…Test-ServiceHealth
- Serverkomponenten checken:
(Es müssen nicht immer alle Komponenten aktiv sein!)Get-ExchangeServer | Get-ServerComponentState
- Datenbanken checken:
Wichtig hier: „Mounted“ und der Index State auf „Healthy“. Sollte der Index State nicht sofort passen („Failed“ oder „Suspended“), lohnt es sich mal 5 Minuten zu warten…get-MailboxDatabaseCopyStatus
- URL’s extern und intern checken (Hier gab es bei vergangenen Updates teilweise das Problem, dass diese leer waren!):
Get-ExchangeServer | Get-WebServicesVirtualDirectory | fl name, *url* Get-ExchangeServer | Get-ActiveSyncVirtualDirectory | fl name, *url* Get-ExchangeServer | Get-ECPVirtualDirectory | fl name, *url* Get-ExchangeServer | Get-OWAVirtualDirectory | fl name, *url* Get-ClientAccessService | fl *InternalUri*
- Prüfung Mailflow mit OWA Mailbox via Browser https://localhost/owa und Versand einer Email an einen ECHO Mailer bspw. echo@univie.ac.at oder aber an eine andere externe E-Mail Adresse…
- Sollte mal alles schief gehen, kann man >>>Hier bei Microsoft<<< nachsehen und das fehlgeschlagene Update eventuell reparieren…