Installing Exchange Server 2016 on Windows Server 2016

Installing Exchange Server 2016 on Windows Server 2016 only

First make sure your existing Exchange 2013 Servers are patched to at least CU10, if you have any.
Install Exchange 2016 CU3 and above for Windows Server 2016, in my example here I have installed Exchange 2016 CU6 which is the current latest build

Disk requirements depend on your own environment and requirements! I have sized up my own environment to come up with the below:

Disk requirements:
40GB OS Disk (NTFS),
30GB Exchange install disk (NTFS),
50GB Exchange database (ReFS),
20GB Exchange logs (ReFS)

For ReFS file systems, disable integrity bit:
Get-Disk 1 | New-Partition -Size 50GB -DriveLetter F | Format-Volume -FileSystem REFS -NewFileSystemLabel Exchange_Database -SetIntegrityStreams $false
and
Get-Disk 1 | New-Partition -Size 20GB -DriveLetter G | Format-Volume -FileSystem REFS -NewFileSystemLabel Exchange_Logs -SetIntegrityStreams $false

After installation you will need to move the mailbox database and logs locations to their respective drives. Exchange Setup will install everything into the Exchange install location you specify during installation!

Post-deployment of Windows Server 2012 R2:
Install VMWare Tools
Configure a static IP
Name and join the server to the domain
Prepare and format the additional disks
Apply Windows Updates
Enable Remote Desktop (optional)

Install the Windows Feature prerequisites

Powershell:
C:\> Install-WindowsFeature 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

Download and install these components first:
Microsoft Knowledge Base article KB3206632
https://go.microsoft.com/fwlink/p/?linkid=837748

Unified Communications Managed API (UCMA) 4.0
https://go.microsoft.com/fwlink/p/?linkId=258269

Add Antivirus Exclusions to Windows Defender (Powershell)
Source: https://technet.microsoft.com/en-us/library/bb332342(v=exchg.160).aspx

Folder Exclusions:
Set-MpPreference -ExclusionPath $env:SystemRoot"\Cluster",$env:ExchangeInstallPath"ClientAccess\OAB",$env:ExchangeInstallPath"FIP-FS",$env:ExchangeInstallPath"GroupMetrics",$env:ExchangeInstallPath"Logging",$env:ExchangeInstallPath"Mailbox",$env:ExchangeInstallPath"TransportRoles\Data\Adam",$env:ExchangeInstallPath"TransportRoles\Data\IpFilter",$env:ExchangeInstallPath"TransportRoles\Data\Queue",$env:ExchangeInstallPath"TransportRoles\Data\SenderReputation",$env:ExchangeInstallPath"TransportRoles\Data\Temp",$env:ExchangeInstallPath"TransportRoles\Logs",$env:ExchangeInstallPath"TransportRoles\Pickup",$env:ExchangeInstallPath"TransportRoles\Replay",$env:ExchangeInstallPath"UnifiedMessaging\Grammars",$env:ExchangeInstallPath"UnifiedMessaging\Prompts",$env:ExchangeInstallPath"UnifiedMessaging\Temp",$env:ExchangeInstallPath"UnifiedMessaging\Voicemail",$env:ExchangeInstallPath"Working\OleConverter",$env:SystemDrive"\inetpub\temp\IIS Temporary Compressed Files",$env:SystemRoot"\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files",$env:SystemRoot"\System32\Inetsrv"

Process Exclusions:
Set-MpPreference -ExclusionProcess "ComplianceAuditService.exe","Dsamain.exe","EdgeTransport.exe","fms.exe","hostcontrollerservice.exe","inetinfo.exe","Microsoft.Exchange.AntispamUpdateSvc.exe","Microsoft.Exchange.ContentFilter.Wrapper.exe","Microsoft.Exchange.Diagnostics.Service.exe","Microsoft.Exchange.Directory.TopologyService.exe","Microsoft.Exchange.EdgeCredentialSvc.exe","Microsoft.Exchange.EdgeSyncSvc.exe","Microsoft.Exchange.Imap4.exe","Microsoft.Exchange.Imap4service.exe","Microsoft.Exchange.Notifications.Broker.exe","Microsoft.Exchange.Pop3.exe","Microsoft.Exchange.Pop3service.exe","Microsoft.Exchange.ProtectedServiceHost.exe","Microsoft.Exchange.RPCClientAccess.Service.exe","Microsoft.Exchange.Search.Service.exe","Microsoft.Exchange.Servicehost.exe","Microsoft.Exchange.Store.Service.exe","Microsoft.Exchange.Store.Worker.exe","Microsoft.Exchange.UM.CallRouter.exe","MSExchangeCompliance.exe","MSExchangeDagMgmt.exe","MSExchangeDelivery.exe","MSExchangeFrontendTransport.exe","MSExchangeHMHost.exe","MSExchangeHMWorker.exe","MSExchangeMailboxAssistants.exe","MSExchangeMailboxReplication.exe","MSExchangeRepl.exe","MSExchangeSubmission.exe","MSExchangeTransport.exe","MSExchangeTransportLogSearch.exe","MSExchangeThrottling.exe","Noderunner.exe","OleConverter.exe","ParserServer.exe","Powershell.exe","ScanEngineTest.exe","ScanningProcess.exe","UmService.exe","UmWorkerProcess.exe","UpdateService.exe","W3wp.exe","wsbexchange.exe"

Extension Exclusions:

Set-MpPreference -ExclusionExtension ".config",".chk",".edb",".jfm",".jrs",".log",".que",".dsc",".txt",".cfg",".grxml",".lzx"

Prepare Active Directory for Exchange 2016

Note: Perform this step on a DC in the same site and domain as the schema master FSMO role (Run netdom query fsmo in CMD to find out where the Schema Master FSMO role is), with an Administrative account that has both Enterprise Admin and Schema Admin privileges.
Update Active Directory Schema to the new 2016 attributes:
Setup.exe /PrepareSchema /IAcceptExchangeServerLicenseTerms

Note: Perform this step on a DC in the same site and domain as the Schema Master, and with Enterprise Admin group credentials.
Prepare the existing Exchange Organisation for 2016:
Setup.exe /PrepareAD /IAcceptExchangeServerLicenseTerms

Note: This command prepares all domains in your forest and requires Enterprise Admin credentials.
Prepare all domains:
Setup.exe /PrepareAllDomains /IAcceptExchangeServerLicenseTerms
Or
Note: This command prepares a single domain and requires Domain Admin credentials for the specified domain. Run this in each domain you want to host Exchange on.
Prepare individual domains:
Setup.exe /PrepareDomain:<FQDN of Domain> /IAcceptExchangeServerLicenseTerms

Installing Exchange 2016:
Installing via the GUI:

1) Launch SETUP.EXE from the iso:
2) Click next at the Check for Updates prompt, click next again after the check.
3) Click next on the Introduction page and Accept the License Agreement and click next again.
4) Choose Use recommended settings, click next.
5) Select Mailbox role and Automatically install Windows Server roles and features that are required to install Exchange Server
6) Select the Installation Space and Location (In my case it's the Exchange Install, E drive). Click next.
7) Select Yes for malware scanning, click next.
8) If the readiness check is successful, click Install otherwise troubleshoot the cause and click Retry. Exchange will now install.
9) Click Finish and reboot.
10) Once rebooted use the URL https://servername/ecp to administer the new server.

Or, alternatively install via Powershell:

1) CD to the iso from Powershell
2) Run this command: Setup.exe /Mode:Install /Role:Mailbox /TargetDir:"E:\Exchange Server\V15" /InstallWindowsComponents /IAcceptExchangeServerLicenseTerms
3) You will see the progress via the Powershell, once completed you should see an output which shows you all the installation steps and the status (COMPLETED or FAILED).

comments powered by Disqus