Microsoft Exchange 2010 to 2016 Migrations Steps

      Comments Off on Microsoft Exchange 2010 to 2016 Migrations Steps

Exchange 2016 Pre-Requisites Installation

Open Elevated PowerShell Command

Install-WindowsFeature AS-HTTP-Activation, Server-Media-Foundation, 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, RSAT-ADDS

Microsoft .Net Framework 4.5.2. | https://www.microsoft.com/en-us/download/details.aspx?id=42642

Microsoft Unified Communications Managed API Core Runtime, version 4.0. | https://www.microsoft.com/en-us/download/details.aspx?id=34992

 

Preparation of Active Directory Domain and Forest

Run the following cmdlet to extend the AD schema

.\Setup /PrepareSchema /IAcceptExchangeServerLicenseTerms

To prepare the AD domain, run the following cmdlet

.\Setup /PrepareAD /IAcceptExchangeServerLicenseTerms

To prepare a domain, run the following cmdlet

.\Setup /PrepareDomain /IAcceptExchangeServerLicenseTerms

 

Installation of Exchange 2016

To install Exchange server 2016 using powershell, run the following cmdlet in elevated window.

.\setup /Mode:Install /Roles:Mailbox /IAcceptExchangeServerLicenseTerms

 

SET AUTODISCOVER URL for Exchange 2016

Set-ClientAccessService -Identity EXCHMBX01 -AutodiscoverServiceInternalURI   “https://autodiscover.mifarook.com/Autodiscover/Autodiscover.xml

get-clientaccessserver | set-clientaccessserver -AutodiscoverServiceInternalURI https://autodiscover.mifarook.com/Autodiscover/Autodiscover.xml

 

EXCHANGE VIRTUAL DIRECTORY CONFIGURATION SCRIPT

$Server = “EX2016MBX01”

$URL = “mail.mifarook.com”

Get-OWAVirtualDirectory -Server $Server | Set-OWAVirtualDirectory -InternalURL “https://$($URL)/owa” -ExternalURL   “https://$($URL)/owa

Get-ECPVirtualDirectory -Server $Server | Set-ECPVirtualDirectory -InternalURL “https://$($URL)/ecp” -ExternalURL   “https://$($URL)/ecp

Get-OABVirtualDirectory -Server $Server | Set-OABVirtualDirectory -InternalURL “https://$($URL)/oab” -ExternalURL   “https://$($URL)/oab

Get-ActiveSyncVirtualDirectory -Server $Server | Set-ActiveSyncVirtualDirectory -InternalURL “https://$($URL)/Microsoft-Server-ActiveSync” -ExternalURL “https://$($URL)/Microsoft-Server-ActiveSync

Get-WebServicesVirtualDirectory -Server $Server | Set-WebServicesVirtualDirectory -InternalURL “https://$($URL)/EWS/Exchange.asmx” -ExternalURL “https://$($URL)/EWS/Exchange.asmx

Get-MapiVirtualDirectory -Server $Server | Set-MapiVirtualDirectory -InternalURL “https://$($URL)/mapi” -ExternalURL https://$($URL)/mapi

 

Rename Default Database Name and Move Default Database Path to Desired Location

Set-MailboxDatabase “Mailbox Database 1969112686” -Name “MIF-DB01”

Set-MailboxDatabase “Mailbox Database 1023108591” -Name “MIF-DB02”

Move-DatabasePath MIF-DB01 -EdbFilePath F:\MIF-DB01-DB\MIF-DB01.edb -LogFolderPath I:\MIF-DB01-LOG

Move-DatabasePath MIF-DB02 -EdbFilePath G:\MIF-DB02-DB\MIF-DB02.edb -LogFolderPath J:\MIF-DB02-LOG

 

DAG Configurations

New-DatabaseAvailabilityGroup MIFDAG01 -WitnessServer MIFSVR01 -WitnessDirectory C:\FSW_MIFDAG01

Set-DatabaseAvailabilityGroup MIFDAG01 –FileSystem ReFS

Set-DatabaseAvailabilityGroup -Identity MIFDAG01 -DatacenterActivationMode DagOnly

Add-DatabaseAvailabilityGroupServer -Identity MIFDAG01 -MailboxServer EX2016MBX01

Add-DatabaseAvailabilityGroupServer -Identity MIFDAG01 -MailboxServer EX2016MBX02

Add-MailboxDatabaseCopy -Identity MIF-DB01 -MailboxServer EX2016MBX02

Add-MailboxDatabaseCopy -Identity MIF-DB02 -MailboxServer EX2016MBX01

 

Exchange 2010 Servers URL Update Script

$Server = “EX2010MBX01”

$HTTPS_FQDN = “mail.mifarook.com”

Get-OWAVirtualDirectory -Server $Server | Set-OWAVirtualDirectory -ExternalURL $null

Get-ECPVirtualDirectory -Server $Server | Set-ECPVirtualDirectory -ExternalURL $null

Get-OABVirtualDirectory -Server $Server | Set-OABVirtualDirectory -ExternalURL $null

Get-ActiveSyncVirtualDirectory -Server $Server | Set-ActiveSyncVirtualDirectory  -ExternalURL $null

Get-WebServicesVirtualDirectory -Server $Server | Set-WebServicesVirtualDirectory  -ExternalURL $null

Enable-OutlookAnywhere -Server $Server -ClientAuthenticationMethod Basic -SSLOffloading $False -ExternalHostName $HTTPS_FQDN -IISAuthenticationMethods NTLM, Basic

 

 

Once above steps configuration completed, then you can go ahead with Changes of mailflow to exchange 2016 as well client access to exchange 2016 from Firewall end then start mailbox migrations.