EXCHANGE 2010 TO EXCHANGE 2016 MIGRATION – PART 2

Exchange 2010 to Exchange 2016 Migration

Introduction

In Part 1 of this blog series, we talked about planning of Exchange 2010 server upgrade to Exchange 2016 Server. In this blog series, we are going to deploy Exchange 2016 Server in coexistence with Exchange 2010 Server in same active directory site. As we do not need a legacy namespace for Exchange 2016 Server by design, I am going to use the same namespace that we are using on Exchange Server 2010 i.e. mail.msexperttalk.com. Exchange 2010 to Exchange 2016 migration – part 2 blog post is focused on completing the pre-requisites for Exchange 2016 server and deploying your first Exchange 2016 production Server in coexistence with Exchange 2010 Server.

I highly recommend to use Microsoft Exchange sizing calculator to calculate the hardware requirements of Exchange 2016 Server. Latest version of Exchange sizing calculator can be downloaded from TechNet Gallery.

Preparing for Exchange 2016 Server Installation

Exchange 2016 server installation can be done using GUI or command line. In this blog article, we will install Exchange 2016 server using a command line interface. For step by step instructions of installing and configuring Exchange 2016, you can download ebook from TechNet Gallery. To install the Exchange 2016 server pre-requisites, run the following powershell cmdlet on windows server 2012 R2 machine where you’re planning to install Exchange server 2016.

Install-WindowsFeature RSAT-ADDS

EXCHANGE 2010 TO EXCHANGE 2016 MIGRATION – PART 2

Once the RSAT-ADDS feature is installed, run the following cmdlet to install other required pre-requisites for Exchange server 2016. This process requires a system reboot.

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

EXCHANGE 2010 TO EXCHANGE 2016 MIGRATION – PART 2

Once the server is rebooted, Install .Net Framework 4.5.2 and Microsoft Unified Communications Managed API Core Runtime, version 4.0. If you have all the latest updates installed on windows server 2012 R2, you will get a message that .Net framework 4.5.2 or higher version is already installed. Proceed with the installation on Microsoft Unified Communications Managed API Core runtime version 4.0.

EXCHANGE 2010 TO EXCHANGE 2016 MIGRATION – PART 2 EXCHANGE 2010 TO EXCHANGE 2016 MIGRATION – PART 2 EXCHANGE 2010 TO EXCHANGE 2016 MIGRATION – PART 2

Next step is to prepare your active directory forest for Exchange server 2016 installation. Active Directory preparation requires to extend the AD schema for Exchange 2016 server and prepare AD domain where you would like to deploy Exchange 2016 server. Once you extend the AD with Exchange 2016 Server attributes, you cannot install Exchange 2013 server in your messaging organization. If you plan to install Exchange 2013 Server later on, then first extend the AD with Exchange 2013 server and then extend the for Exchange 2016 server.

The process of extending the AD schema is irreversible and it’s highly recommended to perform a full backup of active directory before extending the schema.

To extend the AD schema for Exchange Server 2016, perform the following steps.

  • Login to Exchange server 2016 server with an admin account that is a member of Enterprise Admin and Schema Admin group.
  • Launch the command prompt with elevated rights and change the directory to Exchange server 2016 where you have extracted the setup files.
  • Run the following cmdlet to extend the AD schema

.\Setup /PrepareSchema /IAcceptExchangeServerLicenseTerms

EXCHANGE 2010 TO EXCHANGE 2016 MIGRATION – PART 2

  • Once the Active Directory schema is extended for Exchange Server 2016, next step is to prepare the domain in active directory forest where you need to install your Exchange Server 2016. To prepare the AD domain, run the following cmdlet

.\Setup /PrepareAD /IAcceptExchangeServerLicenseTerms

EXCHANGE 2010 TO EXCHANGE 2016 MIGRATION – PART 2

  • After preparing the AD, the last step for exchange pre-requisites is to prepare the domain for Exchange 2016 installation. To prepare a domain, run the following cmdlet

.\Setup /PrepareDomain /IAcceptExchangeServerLicenseTerms

EXCHANGE 2010 TO EXCHANGE 2016 MIGRATION – PART 2

We are now ready to install the first exchange server 2016 server in our exchange organization.

Installing Exchange Server 2016

After preparing the pre-requisites for Exchange Server 2016, next step is to install the exchange server 2016. To install Exchange server 2016 using powershell, run the following cmdlet in elevated window.

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

After the successful installation of Exchange 2016 server. Reboot the server.

Conclusion

In Part 2 of this blog series, we have successfully completed the pre-requisites installation for Exchange Server 2016. We have also installed our first Exchange server 2016 in Exchange server 2010 organization. In Part 3 of this series, we will perform the post installation tasks.

If you would like to read the other parts of this blog article series please go to:

Exchange 2010 to Exchange 2016 Migration – Part 1

Exchange 2010 to Exchange 2016 Migration

Introduction

With the release of Exchange 2016, Microsoft brings latest cloud based enhancements of Office 365 to on prem version of Exchange. In this series, We will go through the steps required for Exchange 2010 to Exchange 2016 migration and move mailboxes from Exchange 2010 to 2016 to let the users to use new features of Exchange 2016.

In this series, I’m going to use my test environment where I’ve 1 Exchange 2010 Standard Server deployed with Active Directory running on Windows Server 2008 R2 with domain and forest functional level of 2008R2.

Currently Exchange Services are configured as below.

Exchange 2010 to Exchange 2016 Migration - Part 1

Below table depicts the Server Name, IPs, Active Directory Site and Server Roles installed.

Exchange 2010 to Exchange 2016 Migration - Part 1

 

 

Plan Exchange 2010 Upgrade

Before you start Exchange 2016 deployment in existing exchange 2010 organization it’s important to understand the key architectural differences between Exchange 2010 and 2016.

Exchange 2016 includes two server roles Mailbox and Edge Transport server roles. The Edge Transport server role needs to be installed on its own computer. It can’t be installed on the same computer as the Mailbox server role. The Edge Transport Server role in optional but Mailbox server role is mandatory.

You need to plan for following before exchange 2016 installation.

  • Active Directory Schema
  • Namespace for Exchange 2016
  • SSL Certificate
  • Hardware Sizing for Exchange 2016
  • High Availability of Exchange 2016
  • Mail flow
  • End user Impact
  • End user Communication
  • Exchange 2010 Health Check

Active Directory Schema

Exchange 2016 installation requires you to update Active Directory Schema to extend objects and attributes to support Exchange 2016. You need to carefully plan about Active Directory Schema update. You cannot roll back Schema Update, the only way to roll back is to manually remove the entries from schema and it’s not a recommended method.

You need to have Active Directory Schema Admin, Enterprise Admin, Domain Admin and Exchange Organization Admin rights to install Exchange 2016

In our scenario we’ve single Exchange 2010 and our schema is extended with 2010. We’ll be extending the schema to 2016 during the installation of Exchange 2016.

If you have Exchange 2010 deployed and upgrading to 2016 then make sure that you plan your schema upgrade. If you do not have Exchange 2013 installed in exchange 2010 organization or AD Schema isn’t extended for Exchange 2013 then once Schema is extended for Exchange 2016 you’ll not be able to add Exchange 2013 server in your organization.

Namespace for Exchange 2016

Plan the namespace configuration for Exchange 2016. Services that you’re going to transition from Exchange 2010 to 2016 like Autodiscover, Outlook on the Web a.k.a OWA, Exchange Web Services, legacy, office online etc. Exchange 2010 coexistence with Exchange 2016 allows you to share the namespace configuration to reduce the complexity of Exchange upgrade. It’s recommended to use the same namespace configuration for Exchange 2016 to make it easy transition across the board. We are going to use the following namespace configuration in our upgrade.

Exchange 2010 to Exchange 2016 Migration - Part 1

 

Note: You do not need legacy namespace for Exchange 2016 coexistence with 2010. I have legacy URL because sometimes during the upgrade, customers would like to use a new namespace for 2016.

I have not included the namespaces for Office Online Server as we are not going to deploy Office Online Server. Apart from Exchange Services namespace planning, we also need to plan the naming convention for Exchange 2016 installation like Exchange 2016 hostname, Database naming convention etc.

SSL Certificate

As we have planned the namespace configuration, next step is work on Exchange 2016 SSL certificate. New SSL certificate will include all the namespaces mentioned above. SSL certificates are used to protect the communication between your Exchange organization and external organizations. It’s recommended to use public SSL certificate for exchange services. For our exchange upgrade purpose, we’re going to use a SSL certificate from Digicert that will include the following entries.

  • mail.msexperttalk.com
  • autodiscover.msexperttalk.com
  • legacy.msexperttalk.com
  • msexperttalk.com

It’s recommended to use Subject Alternative Names certificate. Wild card certificate is also supported with Exchange 2016.

Hardware Sizing for Exchange 2016

Exchange Server sizing is an important factor in our deployment. Under-sizing or over-sizing of exchange environment can cause significant issues with your messaging infrastructure. It’s recommended to use Exchange Server Role Requirements Calculator. After working with exchange server role calculator, below are the recommendations of calculator for Exchange 2016 hardware.

  • 2 vCPU
  • 16GB RAM
  • 100 GB of Operating System Drive
  • 24GB Page file
  • RAID 1 for Exchange 2016 Databases
  • 2 Exchange 2016 Databases are recommended

DAG

Sizing is being done for 100 users running on Exchange 2010. We’re going to have a High Availability in Primary site only.

High Availability of Exchange 2016

To avoid single point of failure in primary site, Exchange 2016 will be configured in high availability mode by using Database Availability Groups.

Mail Flow

After the installation of Exchange 2016 server, the first step is to cutover the mail flow from Exchange 2010 to Exchange 2016. It’s important to plan your mail flow changes. In case something goes wrong the impact will be on all the users within the organization. Once we have exchange 2016 installed, we are going to use the following mail flow.

new mail flow

As you can see in the diagram, We’re going to move the mail flow from Exchange 2010 to Exchange 2016 servers once we’ve exchange 2016 installed, configured and tested.

End User Impact

It’s important to plan for end user impact beforehand. Exchange 2016 doesn’t support Outlook client 2007 or 2003. Make sure that you’ve analyzed and reviewed the end user impact before you migrate your users from Exchange 2010 to 2016. Update your endpoints to minimum supported version of outlook and IE. It’s recommended to install the latest updates of outlook client to provide best possible experience to end users when connecting with Exchange Server. Currently Exchange 2016 support following outlook clients.

  • Outlook 2016
  • Outlook 2013
  • Outlook 2010 with April 2015 Updates
  • Outlook for Mac for Office 365
  • Outlook for Mac 2011

Outlook clients earlier than Outlook 2010 are not supported. Email clients on Mac operating systems that require DAV, such as Entourage 2008 for Mac RTM and Entourage 2004, are not supported with Exchange 2016.

End User Communication

End user notifications planning help dictate a smooth and successful migration.  It is recommended that the changes end users will encounter and how to overcome them be communicated in detail and with enough advance notice that the end users have time to ask questions and understand what is expected of them.

Although mailbox migration from Exchange 2010 to 2016 will not have any impact to end user apart from a pop up message in outlook client but it’s recommended to notify the end user and provide adequate information to the user so that they can perform basic troubleshooting in case they ran into any issue after their mailbox is being migrated from Exchange 2010 to 2016.

Exchange 2010 Health Check

It’s always a good experience to perform health check of your existing Exchange 2010 server before you upgrade or deploy Exchange 2016 in your exchange organization. Exchange 2010 health check will help you determine the health of your existing system and you can fix any issues that can cause significant impact to your transition to Exchange 2016. Healthy exchange 2010 will help a lot in a smooth transition to Exchange 2016. Exchange 2010 health check will be performed before the installation of Exchange 2016.

Conclusion

In part one of this series we worked on planning of Exchange 2016 upgrade and reviewed some of the important key factors to consider before upgrading to Exchange 2016. In the next part of this series, we will start the exchange 2016 installation and configuration by first completing the action items of planning phase.

If you would like to read the other parts of this blog article series please go to: