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.