Hallo migrationswillige Admins :),

heute möchte ich auch Aufzeigen wie ich die Migration auf Exchange Server 2016 vornehme. Mein Netzwerk ist wie folgt aufgebaut:

01 Serveraufbau Exchange Migration

Die meisten von euch werden diese Umgebung bereits kennen. Hier einige Fakten zur Ausgangsituation:

  • Exchange 2013 auf einem Server, keine DAG!
  • Exchange Server 2013 CU 10 (Pflicht für Koexistenz)
  • Single Namespace
  • Veröffentlichung mit WAP & ADFS
  • Öffentliche Ordner im Postfach für Öffentliche Ordner
  • SAN-Zertifikat bereits vorhanden!
  • MAPI over HTTP aktiviert (Outlook 2016 bevorzugt diese Verbindung)
  • Interner Name für Outlook Anywhere auf Alias gebunden (Bild 2)

Schritt 1- Exchange 2016 auf neuem Server Installieren

Da Windows Server 2016 (vNext) offiziell noch nicht als Unterstützes Betriebssystem gelistet ist, Installiere ich Exchange 2016 auf Windows Server 2012 R2.

Voraussetzungen installieren

Damit Exchange Server installiert werden kann, muss wie immer einiges an Vorarbeit geleistet werden.

  1. PowerShell auf dem Exchange öffnen und Features Installieren –>
    Install-WindowsFeature Rsat-ADDS,AS-HTTP-Activation, Desktop-Experience, NET-Framework-45-Features, RPC-over-HTTP-proxy, RSAT-Clustering, RSAT-Clustering-CmdInterface, RSAT-Clustering-Mgmt, RSAT-Clustering-PowerShell, Web-Mgmt-Console, WAS-Process-Model, Web-Asp-Net45, Web-Basic-Auth, Web-Client-Auth, Web-Digest-Auth, Web-Dir-Browsing, Web-Dyn-Compression, Web-Http-Errors, Web-Http-Logging, Web-Http-Redirect, Web-Http-Tracing, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Lgcy-Mgmt-Console, Web-Metabase, Web-Mgmt-Console, Web-Mgmt-Service, Web-Net-Ext45, Web-Request-Monitor, Web-Server, Web-Stat-Compression, Web-Static-Content, Web-Windows-Auth, Web-WMI, Windows-Identity-Foundation
  2. Auf dem DC’s und dem Exchange .Net 4.5.2 Installieren! (gibt es hier)
  3. Auf dem Exchange Server die Unified Communications Managed API 4.0 Runtime installieren

Exchange Server 2016 Installieren

Die Installation ist identisch mit der bereits aufgezeigten. Abgesehen von der vergabe des Organisationsnamen, da ja bereits ein Exchange Server in meiner Organisation existiert.

Exchange Server 2016: First Look & Installation

Nach der Installation das System neu starten!

Bei der Installation wird das Active Directory Schema aktualisiert. In größeren Umgebungen sollte die Aktualisierung des Schemas nicht am Installationstag stattfinden.

Die Office Web App Server sind nicht zwingend erforderlich! Ich habe diese in meinem Beitrag NICHT berücksichtigt!

Schritt 2 – Koexistenz konfigurieren

Da die Migration, im Regelfalle, nicht nach drei Stunden beendet ist, sondern sich über einen längeren Zeitraum hinzieht, muss nun einiges konfiguriert werden. Wer jedoch darauf tippt, dass, wie früher, erst der Namespace umgezogen werden muss, liegt falsch! Ross Smith hat im Eintrag zu Exchange Server 2016 folgendes geschrieben:

Coexistence with Exchange Server 2013

In Exchange Server 2013, the Client Access server role is simply an intelligent proxy that performs no processing/rendering of the content. That architectural tenet paid off in terms of forward coexistence. When you introduce Exchange Server 2016, you do not need to move the namespace. That’s right, the Exchange Server 2013 Client Access infrastructure can proxy the mailbox requests to the Exchange 2016 servers hosting the active database copy! For the first time ever, you get to decide when you move the namespace over to the new version. And not only that, you can even have load balancer pools contain a mix of Exchange Server 2013 and Exchange Server 2016. This means you can do a one-for-one swap in the load balancer pool – as you add Exchange 2016 servers, you can remove Exchange 2013 servers.

Das bedeutet für mich zunächst „nur“ Zertifikatskonfiguration auf meinem neuem Exchange Server 2016!

Zertifikate konfigurieren

  1. Auf vorhanden Exchange die EMS öffnen –>
    1. Get-ExchangeCertificate | ? {$_.Services -eq "IMAP, POP, IIS, SMTP"}
    2. $TB = (Get-ExchangeCertificate | ? {$_.Services -eq "IMAP, POP, IIS, SMTP"}).Thumbprint
    3. Export-ExchangeCertificate -Thumbprint $TB -Password (ConvertTo-SecureString -AsPlainText "Password1" -Force) -FileName \\dc\Transfer\EX_Zertifikat\EX_Zert_Export.pfx
    4. Import-ExchangeCertificate -Server APP2 -PrivateKeyExportable $true -Password (ConvertTo-SecureString -AsPlainText "Password1" -Force) -FileName \\dc\Transfer\EX_Zertifikat\EX_Zert_Export.pfx
    5. Enable-ExchangeCertificate -Services "SMTP,IMAP,POP,IIS" -Thumbprint $TB -Server App2
    6. Get-ExchangeCertificate -Server App2 | ? {$_.Services -eq "IMAP, POP, IIS, SMTP"}
  2. Damit ist das Zertifikat auch auf APP2 eingerichtet und konfiguriert.
 Mein SAN-Zertifikat hatte bereits alle Notwendigen DNS Einträge, auch den von APP2

Outlook Anywhere einrichten

Wie in Bild 2 bereits ersichtlich ist mein Outlook Anywhere für den Server APP1 bereits konfiguriert. Identische Konfiguration muss nun auch für APP2 vorgenommen werden.

  1. ECP auf Exchange 2016 öffnen –>
  2. Server –> Server –> APP2 –> Outlook Anywhere
  3. Internet-Hostnamen & Intranet Hostnamen eintragen (Bild 3)

Sendeconnector konfigurieren

Ich habe einen Sendeconnector (Name: Internet) eingerichtet. Dieser versendet über DNS-MX Einträge Damit ich ausgehenden Nachrichten nicht über den „alten“ Exchange Server 2013 route, bearbeite ich den Sendeconnector entsprechend:

  1. ECP auf Exchange 2013 öffnen –>
  2. Nachrichtenfluss –> Sendeconnectors –>
  3. Den Connector mit einem Doppelklick öffnen –> Bereichsdefinition
  4. Unterhalb von Quellserver den zweiten Exchange hinzufügen (Bild 4)
  5. Mit Speichern bestätigen
Sendeconnctors sind in der globalen Konfiguration gespeichert! Empfangsconnectoren müssen für jeden Server hinterlegt werden!!! Bitte prüft diese in eurer Organisation!

Virtuelle Verzeichnisse Konfigurieren

Bevor ich den ersten Test ausführe, müssen noch die Virtuellen Verzeichnisse angepasst werden. Das mache ich schnell über die ECP:

  1. ECP öffnen
  2. Server –> Virtuelle Verzeichnisse
  3. Auf den Schraubenschlüssel klicken –> Domäne für externen Zugriff Konfigurieren (Bild 5)
  4. Den neuen Exchange Server 2016 angeben und die öffentliche Domäne eintragen (Bild 6)
  5. Speichern
  6. OWA von APP2 überprüfen, der externe Domänenname ist eingetragen! (Bild 7)

Da bei dieser Aktion das MAPI-Verzeichnis nicht berücksichtigt wird, sollte ich dies ebenfalls anpassen. Generell gilt, alle Verzeichnisse so zu konfigurieren wie die des „alten“ Servers, da die Umgebung darauf eingerichtet ist!

  1. MAPI Verzeichnis auf APP2 bearbeiten:
    Set-MapiVirtualDirectory "APP2\mapi (Default Web Site)" -ExternalUrl https://mail.sichel-it.de/mapi
  2. ECP Authentifizierung anpassen – Identisch mit der Konfiguration des „alten“ Servers. Zunächst lasse ich mir die Konfiguration anzeigen, anschließend setze ich diese für den neuen Exchange (Bild 8):

    Get-EcpVirtualDirectory | fl *auth*,*id*
    Set-EcpVirtualDirectory "APP2\ecp (Default Web Site)" -AdfsAuthentication $true -BasicAuthentication $false -DigestAuthentication $false -FormsAuthentication $false -WindowsAuthentication $false
  3. Wie zuvor, nur für OWA (Bild 9)

    Get-OWAVirtualDirectory | fl *auth*,*id*
    Set-OWAVirtualDirectory "APP2\owa (Default Web Site)" -AdfsAuthentication $true -BasicAuthentication $false -DigestAuthentication $false -FormsAuthentication $false -WindowsAuthentication $false
  4. Anschließend noch die IIS-Dienste durchstarten und die Konfiguration überprüfen (Bild 10):

    iisreset /noforce

Postfach für Öffentliche Ordner migrieren

Falls Ihr ein Postfach für Öffentliche Ordner besitzt, wie ich, dann muss dieses Postfach auf den neuen Server Verschoben werden. Solltet Ihr von Exchange Server 2010 kommen, und noch eine Öffentliche Ordner Datenbank besitzen, folgt bitte der Beschreibung aus dem TechNet –> Verwenden der seriellen Migration zum Migrieren von öffentlichen Ordnern zu Exchange 2013 aus vorherigen Versionen

  1. Postfächer Verschieben: Get-Mailbox -PublicFolder | New-MoveRequest -TargetDatabase MBX02
  2. Überprüfung (Bild 11):
    Get-Mailbox -PublicFolder

Offline Adressbuch

Anders als in den Vorgänger-Migrationsszenarien (bspw. EX2003 –> EX2010) muss ich Adresslisten usw. nicht auf den neuen Server umziehen bzw. diese Upgraden! Ich kann hergehen und mein Standard Offline Adressbuch der neuen Datenbank zuweisen, ohne das ich es Upgraden muss o.ä. Identisches gilt auch für die Adresslisten.

  1. ECP öffnen
  2. Server –> Datenbanken –> Datenbank via doppelklick auswählen
  3. Clienteinstellungen –> OAB auswählen (Bild 12)

Damit sind alle notwendigen Schritte für einer Koexistenz ausgeführt worden. Ich kann nun beginnen die Benutzer in die neue Datenbank zu verschieben :)

 

Schritt 3 – Postfächer migrieren

Es ist soweit, ich kann nun erste Benutzer migrieren! Es gibt mehrere Wege zum Ziel, ich nutze die PowerShell :)

# Administratorkonto verschieben
New-MoveRequest Administrator -TargetDatabase MBX02
# Verschiebungsvorgang beobachten
Get-MoveRequestStatistics Administrator

Ich migriere alle Benutzer- /Raum- /Geräte- Postfächer auf den neuen Server (Bild 13):

Get-Mailbox  -Server app1 | New-MoveRequest -TargetDatabase MBX02 -BatchName "Alle Postfächer"
Get-MoveRequest -BatchName "Alle Postfächer" | Get-MoveRequestStatistics

Melde ich mich nun wie gewohnt im OWA an, kann ich auf die neue Oberfläche zugreifen (Bild14).

Mein Outlook 2016 hat sich auch wieder verbunden und ich kann auf alle Öffentlichen Ordner zugreifen (Bild 15).

Outlook Anywhere funktioniert weiterhin wie gewohnt, ohne Änderungen in der IT Infrastruktur vorzunehmen (oben erklärt) (Bild 16)

 

Schritt 4 – Exchange 2013 entfernen

Nun sind alle notwenigen Schritte ausgeführt worden, und ich kann den „alten“ Exchange entfernen. Bevor ich dies allerdings tun kann müssen einige vorarbeiten getätigt werden!

Vorarbeiten Exchange Deinstallation

Der „alte“ Exchange ist derzeit noch als CAS-Proxy im Einsatz. Bedeutet das alle Anfragen über den öffentlichen Namen noch an diesen Server gesendet werden. Sprich, der Namespace sollte umgezogen werden. Loadbalancer / Reverse-Proxy / WAP o.ä. sollten nun auf den neuen Server zeigen.

Ich habe in meiner Umgebung einen Web Application Proxy und muss daher dort tätig werden und die Regeln anpassen (Bild 17).

Anschließend natürlich noch das ADFS-Signing Zertifikat importiert und OWA & Co sind wieder funktionstüchtig, auch ohne den Exchange 2013 :)

Mailbox Datenbank löschen

Um den Exchange 2013 deinstallieren zu können muss die Datenbank gelöscht werden:

  1. EMS auf APP1 starten –>
  2. Verbleibenden Mailboxen anzeigen und ggf. Migrieren
    Get-Mailbox -Database MBX01
  3. Arbitration -Postfächer anzeigen lassen und migrieren (Bild 18):
    #Listet die entsprechenden Postfächer
    Get-Mailbox -Database MBX01 -Arbitration
    #Mirgriert diese
    Get-MailboxDatabase MBX01 |  Get-Mailbox -Arbitration | New-MoveRequest -TargetDatabase MBX02
  4. Postfachdatenbank löschen (Der Fehler im Bild beruht darauf, dass das löschen der HealthMailboxen nicht mit eingestellt ist –> Exchange 2013 & 2016 Datenbank löschen – HealthMailbox ) (Bild 19)
    Remove-MailboxDatabase MBX01

Sendeconnector

Der Sendeconnector muss erneut bearbeiten werden. Damit Exchange sauber entfernet werden kann, darf der zu entfernende Server nicht mehr hinterlegt sein!

Wie oben erklärt nur halt jetzt den Exchange 2013 entfernen (Bild 20)

Deinstallation

Über Programme und Funktionen kann nun der Server deinstalliert werden.

  1. Anmelden am Exchange 2013 (APP1, „alter“ Server)
  2. Systemsteuerung –> Programme und Funktionen
  3. Exchange Server 2013 auswählen und deinstallieren
  4. Exchange server wird entfernet (Bild 21)
  5. Analyse der Voraussetzungen sollte ohne Fehler abschließen (Bild 22)
  6. Exchange Server 2013 wird entfernet (Bid 23)
  7. Exchange Server 2013 wurde entfernt und erwartet einen Neustart (Bild 24)
  8. Get-ExchangeServer liefert auch das korrekte Ergebnis (Bild 25)
Diese Anleitung kann auch für die Migration von Exchange Server 2010 verwendet werden! Dabei ist jedoch zu bedenken das als erster CAS der Exchange 2016 antworten sollte, und nicht der CAS Exchange 2010. Dies bedeutet eine umfassenderer Planung, je nach Komplexität der Umgebung!

Für die Migration Exchange Server 2010 –> Exchange Server 2016 Empfehle ich euch die Artikelserie meines Blogger-Kollegen Frank  –> Howto: Migration von Exchange 2010 zu Exchange 2016

 

Damit ist es vollbracht :) Ich hoffe es hilft euch! Bei Fragen nutzt die Kommentarfunktion bitte teilen & liken nicht vergessen ! Danke

Andi