Saturday, March 15, 2014

Exchange 2013 (SP1) - prerequisites for installation

Exchange 2013 - SP1

This will be my first blog post on Exchange 2013. I have considered blogging about aspects of Exchange 2013 for some time but a number of factors delayed my decision. First, reading the official Exchange blog, I noticed that there were a number of complaints about the product and "great expectations" for SP1 that would, readers hoped, correct some of the problems. Second, fewer and fewer organizations use Exchange onsite, preferring Office 365. Wouldn't it be a better investment to concentrate on Microsoft's Cloud products then?

There will still be a percentage of organizations that continue to use Exchange onsite, for various reasons: interaction with custom applications, extremely strict security regulations or something as basic as poor or unreliable connectivity to the Internet. This last factor is probably a rare circumstance now but I have interacted with someone on an online forum who managed IT in a health care setting and had to contend with Internet access that was simply not reliable. The last I heard, the ISP was going to add another line in the area for redundancy. Finally, there is always the possibility that we work for a hosting provider in the Cloud. In the end, Exchange has to be installed on a server, physical or virtual, somewhere.

Moreover, I have worked with Office 365 and what is advantageous, from a learning perspective, is that Exchange 2013 and Office 365 (Exchange Online) have a very similar interface. I hesitate to write "identical" since some components are missing from the latter.

So, in this first post, after a rather long introduction, I will present the "prerequisites" necessary for the installation of Exchange 2013. By "prerequisites", I mean not only various software, certain roles and features, but also the overall Active Directory environment: type of domain controllers and functional levels.

Note (important!): in this scenario, we are preparing a fresh installation of Exchange 2013. Some use the term “green-field”. In other words, there is no existing messaging system in place. This would be quite exceptional in the real world. However, the objective of this exercise is to familiarize myself (and the reader) with the Exchange 2013 installation prerequisites, without complicating the presentation with the multitude of factors that would need to be taken into account in the case of a migration (a more complex scenario that I may examine in another post or series of posts).



Prerequisites – presentation and installation

First of all, the server on which we will install Exchange must be a member of the domain. We might as well add it to the domain from the very start.

I will assume that the server already has an appropriate name and IP address (and other network parameters) and has been added to the domain. I will not detail configuration of these aspects here.



Active Directory preparation

If we prepare the schema and domain for Exchange 2013 SP1 on a domain controller, we have to install the following tools on that server. Otherwise, they can be installed on the (future) Exchange Server. In fact, these tools must be installed on the Exchange server itself at one point or another, so that is where I have run them with past versions of Exchange.

  • .NET Framework 4.5
  • WMF 4.0 (Windows Management Framework) - for SP1. WMF 3.0 was appropriate for Exchange 2013 RTM.

We can download this software and then install it in several clicks. I will not provide links (which may change) but simply state that I searched for these products using an Internet search engine, downloaded them and then installed them. I will make the assumption that if you intend to implement Exchange, version 2013 or any other, you can use a search engine, download software and install it. There will not be step-by-step screenshots for this.

Note: Windows Server 2012 includes .NET 4.5 and WMF 3.0. Windows Server 2012 R2 includes WMF 4.0. If we use Windows 2008 Server (R2 SP1), we need to download and install all this software manually.


  • RSAT (Remote Server Administration Tools) for Active Directory Domain Services (ADDS).


We can install these tools with the command: Add-WindowsFeature RSAT-ADDS

Note: with Windows Server 2012 we can use Install-WindowsFeature

Restart the server as needed.

Once this software is installed, we can prepare Active Directory.

Note: we have to have domain controllers that run at least Windows 2003 SP2. The same level is required for the global catalogs but if all domain controllers are at 2003 SP2 then the global catalog servers must be as well. Lastly, the forest functional level must be at least Windows 2003.

The commands for the preparation of the schema and the domain are below (in bold). They must be run at the command line, in the same location as the Exchange install files. These files are extracted from the following executable that can be downloaded from the Microsoft Download Center:

“Exchange2013-x64-SP1.exe”

Note: you can search for “Exchange 2013 SP1 download”

This file will most likely be placed on the Exchange server and we can run the commands from this location (rather than on a domain controller) provided that the schema master is accessible from this server. Regardless, the following requirements must be met:

  • We must be member of Schema and Enterprise administrators to execute the command.
  • We must run the command on a 64 bit computer.
  • I operate in a small test environment where replication is almost instantaneous. In other environments, we should wait until replication of changes to the schema have completed.

At any rate, once downloaded, the files are extracted to a folder. Then, at the command line, we browse to that location and run the following commands:

setup /PrepareSchema or setup /ps (abbreviated form)

We prepare "Active Directory" (the schema is part of Active Directory in fact) with the following command:

setup /PrepareAD or setup /p

This will work in an existing Exchange envrionment. In a brand new installation, we would have to specify the "organization name":

setup /PrepareAD /OrganizationName:domainname.com or setup /p /on:domainname.net

If we only have one domain, we have finished. There is no more domain preparation required. The PrepareAD command prepares the local domain. If there were other domains, they would be prepared with the following command:

setup /PrepareDomain or setup /pd

There are a couple more options, if, for example, you had a number of domains and wanted to prepare them all at once.

***

Here is an example. Note that there are a number of “obstacles” that must be overcome before the command will run.

PS C:\E2K13SP1> setup /ps

setup : The term 'setup' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
[snip]
Suggestion [3,General]: The command setup was not found, but does exist in the current location. Windows PowerShell does not load commands from the current location by default. If you trust this command, instead type ".\setup".

If we do what is suggested, the command will run, but...

PS C:\E2K13SP1> .\setup /ps

Welcome to Microsoft Exchange Server 2013 Service Pack 1 Unattended Setup
You need to accept the license terms to install Microsoft Exchange Server 2013. To read the license agreement, visit http://go.microsoft.com/fwlink/p/?LinkId=150127. To accept the license agreement, add the /IAcceptExchangeServerLicenseTerms parameter to the command you're running. For more information, run setup /?.

OK, we also have to consent to Microsoft’s license terms. Yes, this is different from previous versions of Exchange for which there was no such parameter:

PS C:\E2K13SP1> .\setup /ps /IAcceptExchangeServerLicenseTerms

Welcome to Microsoft Exchange Server 2013 Service Pack 1 Unattended Setup
Copying Files...
File copy complete. Setup will now collect additional information needed for installation.
[snip]

At this point, on the first attempt, the process stopped, apparently because of a pending reboot. I had to restart the server. Now aware of the need to add .\ before setup, and /IacceptExchangeServerLicenseTerms at the end, I did so - and also performed the upgrade of Active Directory.

This is what the output should look like:

PS C:\E2K13SP1> .\setup /ps /IAcceptExchangeServerLicenseTerms

Welcome to Microsoft Exchange Server 2013 Service Pack 1 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.

PS C:\E2K13SP1>
PS C:\E2K13SP1> .\setup /p /on:myvmlab /IAcceptExchangeServerLicenseTerms

Welcome to Microsoft Exchange Server 2013 Service Pack 1 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 2013 by using 'Setup /PrepareAD'. No Exchange 2007 server roles have been detected in this topology. After this operation, you will not be able to install any Exchange 2007 servers.
For more information, visit: http://technet.microsoft.com/library(EXCHG.150)/ms.exch.setupreadiness.NoE12ServerWarning.aspx

Setup will prepare the organization for Exchange 2013 by using 'Setup /PrepareAD'. No Exchange 2010 server roles have been detected in this topology. After this operation, you will not be able to install any Exchange 2010 servers.
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.


Among the points to retain, concerning the "small print" above (actually the result of my editing), we should remember that once we install Exchange 2013 (SP1), we cannot install additional Exchange 2007 or 2010 servers. On the other hand, existing Exchange 2007 and 2010 servers can coexist with Exchange 2013.

Otherwise, we have prepared the schema and Active Directory for Exchange 2013. Remember that the two commands executed above suffice in a single domain. If there are multiple domains, we would have to prepare them as well with the setup /PrepareDomain or setup /pd command.

Reference:

Prepare Active Directory and Domains



Install required Windows Features

I'm going to install both the Mailbox and Client Access Server role. Therefore, we need to install the following features:

Add-WindowsFeature Desktop-Experience, NET-Framework, NET-HTTP-Activation, RPC-over-HTTP-proxy, RSAT-Clustering, RSAT-Web-Server, WAS-Process-Model, Web-Asp-Net, 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-Ext, Web-Request-Monitor, Web-Server, Web-Stat-Compression, Web-Static-Content, Web-Windows-Auth, Web-WMI

Note: instead of installing these features manually, we can paste the above script in Powershell.

Run this command *before* the command above, if necessary: Import-Module ServerManager 

Some versions of Windows (Server 2012) will import the necessary modules automatically.



Installation of other prerequisite software

If we have not already installed .NET Framework 4.5.1 and WMF 4.0 (and RSAT) for the preparation of Active Directory, we need to install this software now. I’ll mention them again so we have a complete list, but if they have been installed on the Exchange server earlier they can be ignored (that’s right, no need to install them again).


  • .NET Framework 4.5
  • WMF 4.0
  • Microsoft Unified Communications Managed API (UCMA) 4.0, Core Runtime 64-bit
  • Microsoft Knowledge Base article KB974405 (Windows Identity Foundation)
  • Knowledge Base article KB2619234 (Enable the Association Cookie/GUID that is used by RPC over HTTP to also be used at the RPC layer in Windows 7 and in Windows Server 2008 R2)
  • Knowledge Base article KB2533623 (Insecure library loading could allow remote code execution)


Note: some of these may already be installed via Microsoft Updates.

Note: installation of these files is essentially a matter of double-clicking on the executable and following the prompts, clicking “Next”, “I accept” and “Finish” as needed. It may be necessary to reboot the server for some.


Note for Windows 2012 R2

The software listed above is for Windows 2008 R2. Windows 2012 R2 includes most of them. In fact, there are only two steps:

1. Install the following Windows Features.

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

2. Install UCMA 4.0.

***

At this point, we should be ready to install Exchange itself.



No comments:

Post a Comment