– Jan's Cloud – online Gedankenstütze ;)

2. Oktober 2015

Migration Exchange 2013 CU10 zu Exchange 2016 RTM

Filed under: Exchange — Schlagwörter: , , , , — Jan Mischo @ 20:26

Als erstes einmal die Spielregeln vorweg:

  • Der Exchange Server 2013 muss mindestens CU8 sein (Ein Exchange Server 2010 müsste mindestens SP3 RU9 haben) sollte aber generell immer auf aktuellem Patchlevel sein!
  • Die Domänencontroller müssen mindestens Windows Server 2008 sein
  • Die Domänen-Gesamtstrukturfunktionsebene muss mindestens 2008 sein.
  • Das Betriebssystem für den Exchange Server 2016 muss mindestens 2012 sein sowie die Server GUI aktiviert haben (Die Verwaltungstools laufen auch ab Windows 8.1 x64)
  • Windows Management Framework 4.0 (PowerShell 4.0) (Download für Windows Server 2012)
  • Mindestens .NET Framework 4.5.2
  • Outlook 2010 mit KB2965295 und neuer werden als Client unterstützt (Outlook 2007 lässt sich nicht mit einem Postfach auf Exchange 2016 verbinden!)

Als Vorbereitungsmaßnahme am alten Exchange 2013 empfiehlt es sich optional Mapi over HTTP zu aktivieren -> KLICK

Vorbereiten des Exchange 2016 und Download der Komponenten:

Install-WindowsFeature AS-HTTP-Activation, Desktop-Experience, NET-Framework-45-Features, RPC-over-HTTP-proxy, RSAT-ADDS, 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
if (!(Test-Path -Path C:\install)) { New-Item C:\install -ItemType Directory }
Invoke-WebRequest "http://download.microsoft.com/download/E/2/1/E21644B5-2DF2-47C2-91BD-63C560427900/NDP452-KB2901907-x86-x64-AllOS-ENU.exe" -Outfile C:\install\Dot_Net_Framework.exe
Invoke-WebRequest "http://download.microsoft.com/download/D/F/F/DFFB3570-3264-4E01-BB9B-0EFDA4F9354F/UcmaRuntimeSetup.exe" -Outfile C:\install\UcmaRuntimeSetup.exe
Invoke-WebRequest "http://download.microsoft.com/download/3/9/B/39B8DDA8-509C-4B9E-BCE9-4CD8CDC9A7DA/Exchange2016-x64.exe" -Outfile C:\install\Exchange2016-x64.exe
C:\install\Exchange-x64.exe /extract:C:\install\Exchange2016_Setup /u
Restart-Computer
Exchange 2016 Rollen installieren

Exchange 2016 Rollen installieren

 

 

 

 

Nach dem Neustart des Servers können dann das .NET Framework sowie die UCMARuntime installiert werden.

C:\install\UcmaRuntimeSetup.exe /passive /norestart
C:\install\Dot_Net_Framework.exe /q /log %temp%\Dot_Net_Framework.htm /promptresart

Active Directory vorab auf Exchange Server 2016 vorbereiten -> KLICK (In kleineren Umgebungen ohne separates AD-Team würde ich wie im verlinkten Artikel einfach den Setup Assistenten von Exchange 2016 die Vorbereitungen erledigen lassen.)

Jetzt erfolgt die Installation des neuen Exchange Server 2016 in 10 Klicks:

Exchange_2016_01

Exchange_2016_01

Exchange_2016_02

Exchange_2016_02

Exchange_2016_03

Exchange_2016_03

 

 

 

 

 

 

 

 

 

Exchange_2016_04

Exchange_2016_04

Exchange_2016_05

Exchange_2016_05

Exchange_2016_06

Exchange_2016_06

 

 

 

 

 

 

 

 

 

Exchange_2016_07

Exchange_2016_07

Exchange_2016_08

Exchange_2016_08

Exchange_2016_09

Exchange_2016_09

 

 

 

 

 

 

 

 

 

Exchange_2016_10

Exchange_2016_10

 

 

 

 

 

 

 

 

 

Alternativ zum Klicken einfach:

C:\install\Exchange2016_Setup\Setup.exe /mode:Install /role:Mailbox /TargetDir:"D:\Exchange Server" /IAcceptExchangeServerLicenseTerms

Nach der Installation des neuen Exchange-Servers kann mit der Konfiguration sowie der eigentlichen Migration begonnen werden.

Exchange 2016 Sendeconnector anpassen

Exchange 2016 Sendeconnector anpassen

Exchange 2016 Empfangsconnector anpassen

Exchange 2016 Empfangsconnector anpassen

Exchange 2016 Offline Address Book anpassen

Exchange 2016 Offline Address Book anpassen

 

 

 

 

 

 

Zeit in die Shell zu wechseln und die virtuellen Verzeichnisse sowie das Zertifikat anzupassen:

Get-EcpVirtualDirectory -Server <Exchange2016> | Set-EcpVirtualDirectory -InternalUrl 'https://owa.<domain.tld>/ecp' -ExternalUrl 'https://owa.<domain.tld>/ecp'
Get-WEbServicesVirtualDirectory -Server <Exchange2016> | Set-WEbServicesVirtualDirectory -InternalURL 'https://owa.<domain.tld>/EWS/Exchange.asmx' -ExternalURL 'https://owa.<domain.tld>/EWS/Exchange.asmx'
Get-ActiveSyncVirtualDirectory -Server <Exchange2016> | Set-ActiveSyncVirtualDirectory -InternalURL 'https://owa.<domain.tld>/Microsoft-Server-ActiveSync' -ExternalURL 'https://owa.<domain.tld>/Microsoft-Server-ActiveSync'
Get-OABVirtualDirectory -Server <Exchange2016> | Set-OABVirtualDirectory -InternalURL 'https://owa.<domain.tld>/oab' -ExternalURL 'https://owa.<domain.tld>/oab'
Get-OwaVirtualDirectory -Server <Exchange2016> | Set-OwaVirtualDirectory -InternalUrl 'https://owa.<domain.tld>/owa' -ExternalUrl 'https://owa.<domain.tld>/owa'
Get-PowerShellVirtualDirectory -Server <Exchange2016> | Set-PowerShellVirtualDirectory -InternalUrl 'https://owa.<domain.tld>/powershell' -ExternalURL 'https://owa.<domain.tld>/powershell'

Get-ClientAccessService -Identity <Exchange2016> | Set-ClientAccessService -AutodiscoverServiceInternalUri https://autodiscover.<domain.tld>/autodiscover/autodiscover.xml

Get-OutlookAnywhere -Server demoex2016 | Set-OutlookAnywhere -InternalHostname owa.<domain.tld> -ExternalHostname owa.<domain.tld> -ExternalClientsRequireSsl $true -DefaultAuthenticationMethod Negotiate -InternalClientsRequireSsl $true
Enable-ExchangeCertificate -Thumbprint &lt;Thumbprint&gt; -Services IIS, IMAP, POP, SMTP
Exchange 2016 virtuelle Verzeichnisse Zertifikat

Exchange 2016 virtuelle Verzeichnisse Zertifikat

 

 

 

 

 

 

Verschieben der Offline Address Book Generierung / Arbitration Mailboxen:

Get-Mailbox -Arbitration | where {$_.PersistedCapabilities -like "*oab*"} | ft Name,Servername,Database
Get-Mailbox -Arbitration | New-MoveRequest -TargetDatabase <Neue Exchange 2016 DB>
Get-MoveRequest | Get-MoveRequestStatistics
Exchange 2016 Move Arbitration

Exchange 2016 Move Arbitration

 

 

 

 

 

 

Verschieben der restlichen Postfächer:

Get-Mailbox | New-MoveRequest -TargetDatabase <Neue Exchange 2016 DB>
Get-MoveRequest | Get-MoveRequestStatistics

 

Exchange 2016 Move Postfacher

Exchange 2016 Move Postfacher

 

 

 

 

 

 

 

Verschieben der öffentlichen Ordner auf den neuen Exchange 2016 (sofern vorhanden):

New-MoveRequest -Identity <Name der PF Mailbox> -TargetDatabase <Exchange 2016 DB>
Get-MoveRequest | Get-MoveRequestStatistics
Exchange 2016 Move PublicFolder

Exchange 2016 Move PublicFolder

 

 

 

 

 

 

Nachdem die Migration durch ist und sich die User am neuen Exchange Server angemeldet haben, können die Verschiebeanforderungen entfernt werden:

Get-MoveRequest | Remove-MoveRequest

Jetzt kann mit der Deinstallation des Exchange 2013 begonnen werden. Mit 3 Klicks und einen Reboot ist die Deinstallation erledigt:

Exchange 2013 entfernen 01

Exchange 2013 entfernen 01

Exchange 2013 entfernen 02

Exchange 2013 entfernen 02

Exchange 2013 entfernen 03

Exchange 2013 entfernen 03

 

 

 

 

 

 

 

 

 

2 Comments »

  1. […] Migration von Exchange 2013 zu Exchange 2016 […]

    Pingback by Exchange 2016 ist verfügbar (RTM) - derTest - – derTest – — 6. Oktober 2015 @ 09:44

  2. […] Nach der Installation geht es ebenfalls ziemlich genau so weiter wie bei einer Migration von Exchange 2013 auf 2016: […]

    Pingback by Exchange Server 2019 Preview verfügbar - Jan's Cloud - — 1. August 2018 @ 16:43

RSS feed for comments on this post. TrackBack URL

Leave a comment

Powered by WordPress