Table of Contents

Installing Exchange 2016

Before we start

Before you start there are a few things to be aware of:

Exchange Server 2016 can be installed on Windows Server 2012 and Windows Server 2012 R2. Exchange 2016 CU3 or later can also be installed on Windows Server 2016. For either version of Windows Server the Standard or Datacenter edition can be used to run Exchange Server 2016. Exchange itself does not rely on any specific features of either the Standard or Datacenter editions.

Note that a full server installation with GUI (referred to as Desktop Experience in Windows Server 2016) is required for Exchange Server 2016, it can’t be installed on a Core mode installation of Windows Server.

There are three possible installations of Exchange Server 2016 that you can perform:

Mailbox server role (this is the only mandatory server role) Edge Transport server role (this is optional, and can’t co-exist with the Mailbox server role on the same Windows Server) Management Tools (for admin workstations or servers) Note that installing the Edge Transport server role on Windows Server 2016 is not supported.

The requirements for each installation type are different, so let’s look at each of them in turn.

Installing prerequisites

Installing Pre-Requisites for an Exchange Server 2016 Mailbox Server

For an Exchange Server 2016 Mailbox server installation open an elevated (run as administrator) PowerShell console and run the following command to install the operating system roles and features.

Windows Server 2012 and 2012 R2

Install-WindowsFeature 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, RSAT-ADDS

A restart is required after the roles and features have finished installing. If you’d prefer that the server restarts itself automatically simply append -Restart to the command.

After the restart download and install (in order):

  1. A supported version of .NET Framework. Make sure you check the supportability matrix for more details as there are minimum and maximum supported versions that vary depending on the build of Exchange 2016 you’re installing.

The server is now ready to install the Exchange Server 2016 Mailbox server role.

Windows Server 2016

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

Next, install the following (in order):

Installing Pre-Requisites for an Exchange Server 2016 Edge Transport Server

For an Exchange Server 2016 Edge Transport server the pre-requisites installation is a little simpler than for a Mailbox server. Open an elevated PowerShell console and run the following command.

Install-WindowsFeature ADLDS

When that has completed download and install (in order):

  1. A supported version of .NET Framework (check the supportability matrix for more details)

The server is now ready to install the Exchange Server 2016 Edge Transport role.

Installing Pre-Requisites for the Exchange Server 2016 Management Tools

Exchange Server 2016 uses a web-based administrative interface called the Exchange Admin Center, similar to Exchange Server 2013. There is nothing required to be installed on a workstation or server other than a web browser to access the Exchange Admin Center.

However if you want the Exchange Management Shell to be installed on a management workstation (Windows 8.1 or later) or server (Windows Server 2012 R2 or later) then the requirements are .NET Framework 4.5.2, and then the following Windows features:

Enable-WindowsOptionalFeature -Online -FeatureName IIS-ManagementScriptingTools,IIS-ManagementScriptingTools,IIS-IIS6ManagementCompatibility,IIS-LegacySnapIn,IIS-ManagementConsole,IIS-Metabase,IIS-WebServerManagementTools,IIS-WebServerRole

Preparing Active Directory

A new installation of Exchange Server 2016 involves applying an Active Directory schema update, as do most Exchange Server cumulative updates, as well as preparing the Active Directory domains where Exchange Server 2016 and any mail-enabled objects will be located. In an Active Directory forest with a single domain this can all be performed as one task.

The Active Directory schema update will automatically apply when you run Exchange Server 2016 setup on the first server in your environment. A Windows Server 2012 R2 server with the Exchange Server 2016 Mailbox server role pre-requisites installed doesn’t quite meet the requirements (you’ll need to add the RSAT-ADDS feature as shown below). A domain controller will have RSAT-ADDS installed already, but may also need the .NET Framework version shown below to be installed first.

Whether you’re running the schema update from an Exchange server or a separate server (some organizations do it as a separate task due to change control reasons, or because of different teams having different administrative responsibilities in the environment) then the following requirements apply:

Install-WindowsFeature RSAT-ADDS
(Get-ADForest).SchemaMaster

Now we’re ready to run the Active Directory schema update and and preparation.

If you’ve already got Exchange Server running in your environment you can check the current Exchange schema version before applying the update, so that you can see what the before and after version numbers are.

In PowerShell run the following one-liner

"Exchange Schema Version = " + ([ADSI]("LDAP://CN=ms-Exch-Schema-Version-Pt," + ([ADSI]"LDAP://RootDSE").schemaNamingContext)).rangeUpper
Exchange Schema Version =

Note, in my example above there is no existing Exchange server installed, hence no Exchange schema version to report.

Extract the Exchange Server 2016 setup files into a folder, open a command prompt window, and then navigate to the location where the Exchange setup files were extracted.

To apply only the schema update run the following command:

C:\Admin\ex2016>setup /PrepareSchema /IAcceptExchangeServerLicenseTerms
 
Welcome to Microsoft Exchange Server 2016 Unattended Setup
Copying Files...
File copy complete.
Setup will now collect additional information needed for
installation.
 
 
Performing Microsoft Exchange Server Prerequisite Check
 
    Prerequisite Analysis                                     COMPLETED
 
Configuring Microsoft Exchange Server
 
    Extending Active Directory schema                         COMPLETED
 
The Exchange Server setup operation completed successfully.

After applying the schema update we can check the version number again.

"Exchange Schema Version = " + ([ADSI]("LDAP://CN=ms-Exch-Schema-Version-Pt," + ([ADSI]"LDAP://RootDSE").schemaNamingContext)).rangeUpper
Exchange Schema Version = 15317

To prepare Active Directory run one of the following commands. Note this will also apply the schema update if you did not perform that step already.

If you do not already have an Exchange organization you’ll need to provide a name for the organization now, for example:

C:\Admin\ex2016>setup /PrepareAD /OrganizationName:"Exchange Lab" /IAcceptExchangeServerLicenseTerms

If you’re installing Exchange Server 2016 into an existing Exchange organization you do not need to specify the organization name, for example:

C:\Admin\ex2016>setup /PrepareAD /IAcceptExchangeServerLicenseTerms

Remember, you can’t change the Exchange organization name later, so choose a name you’ll be happy to live with forever. Also, after installing Exchange Server 2016 as a new organization you will not be able to install any earlier versions of Exchange into the same organization.

C:\Admin\ex2016>setup /PrepareAD /OrganizationName:"Exchange Lab" /IAcceptExchan
geServerLicenseTerms

Welcome to Microsoft Exchange Server 2016 Unattended Setup
Copying Files...
File copy complete.
Setup will now collect additional information needed for
installation.


Performing Microsoft Exchange Server Prerequisite Check

    Prerequisite Analysis                                     COMPLETED
 Setup will prepare the organization for Exchange Server 2016 by using 'Setup /P
repareAD'. No Exchange Server 2007 roles have been detected in this topology. Af
ter this operation, you will not be able to install any Exchange Server 2007 rol
es.
 For more information, visit: http://technet.microsoft.com/library(EXCHG.150)/ms
.exch.setupreadiness.NoE12ServerWarning.aspx

 Setup will prepare the organization for Exchange Server 2016 by using 'Setup /P
repareAD'. No Exchange Server 2010 roles have been detected in this topology. Af
ter this operation, you will not be able to install any Exchange Server 2010 rol
es.
 For more information, visit: http://technet.microsoft.com/library(EXCHG.150)/ms
.exch.setupreadiness.NoE14ServerWarning.aspx


Configuring Microsoft Exchange Server

    Organization Preparation                                  COMPLETED

The Exchange Server setup operation completed successfully.

If you have additional domains in your forest that you need to prepare (any domain that will host an Exchange server or mail-enabled objects) follow the guidance on TechNet here.

Installing the Exchange Server 2016 Mailbox Server Role

The Mailbox server role contains all of the components required to run an Exchange Server 2016 server. There is also an Edge Transport role, but that is not a mandatory role and is not covered in this tutorial.

After installing the Exchange Server 2016 pre-requisites on a server you can install the Exchange Server 2016 Mailbox server role by running the following command from an elevated command prompt.

C:\Admin\ex2016>setup /Mode:Install /Role:Mailbox /IAcceptExchangeServerLicenseTerms
 
Welcome to Microsoft Exchange Server 2016 Unattended Setup
Copying Files...
File copy complete.
Setup will now collect additional information needed for
installation.
 
Languages
Management tools
Mailbox role: Transport service
Mailbox role: Client Access service
Mailbox role: Unified Messaging service
Mailbox role: Mailbox service
Mailbox role: Front End Transport service
Mailbox role: Client Access Front End service
 
Performing Microsoft Exchange Server Prerequisite Check
 
    Configuring Prerequisites                                 COMPLETED
    Prerequisite Analysis                                     COMPLETED
 
Configuring Microsoft Exchange Server
 
    Preparing Setup                                           COMPLETED
    Stopping Services                                         COMPLETED
    Copying Exchange Files                                    COMPLETED
    Language Files                                            COMPLETED
    Restoring Services                                        COMPLETED
    Language Configuration                                    COMPLETED
    Exchange Management Tools                                 COMPLETED
    Mailbox role: Transport service                           COMPLETED
    Mailbox role: Client Access service                       COMPLETED
    Mailbox role: Unified Messaging service                   COMPLETED
    Mailbox role: Mailbox service                             COMPLETED
    Mailbox role: Front End Transport service                 COMPLETED
    Mailbox role: Client Access Front End service             COMPLETED
    Finalizing Setup                                          COMPLETED
 
The Exchange Server setup operation completed successfully.
Setup has made changes to operating system settings that require a reboot to
take effect. Please reboot this server prior to placing it into production.

If ECP opens in an undesired language, add mkt variable to the url with the value en-us

https://server-name/ecp?mkt=en-us