Exchange Servers: Highly Available and Happy

With Service Pack 1 out, admins should know that there are a few tricks to updating clustered Exchange 2007 servers the right way. Here's a guide.

The concept of continuous replication has proven to be popular in many Exchange 2007 deployments. In particular, many organizations have deployed Clustered Continuous Replication as the high availability solution of choice.

With the recent release of Exchange 2007 Service Pack 1, Exchange administrators now face the task of upgrading CCR environments to SP1. Microsoft has changed the way that Exchange clustered environments are upgraded when service packs are released, so I'll detail the process of upgrading your CCR environment to SP1 in this two-part series.

If you've deployed CCR, then you already know that you must have additional Exchange 2007 servers running the Hub Transport and Client Access Server roles. This is because these roles cannot coexist on an Exchange 2007 server that has been clustered. Microsoft recommends that you upgrade your Exchange 2007 Client Access Servers first.

Upgrading to SP1 on a non-clustered Exchange 2007 server is a fairly straightforward process that can be accomplished using the setup.exe program. For this article, I'll assume that the Client Access Server and Hub Transport server roles have already been upgraded to SP1.

However, one difference with the upgrade process when you are upgrading clustered mailbox servers is that you need to use the command-line version of setup, namely -- not the GUI version setup.exe. Before we get stuck into the actual upgrade process, it's important to understand that your users will suffer a brief outage during the upgrade process. Inform users of this in advance if they are likely to be using the system when you perform the upgrade.

Throughout this article I'll be using the term that Microsoft uses to reference a CCR installation, namely a CCR environment. In my example scenario, the overall Exchange 2007 environment consists of the following servers:

  • HUBCAS, which is a combined domain controller, Hub Transport and Client Access Server.
  • NODE1, which is initially set to be the active cluster node.
  • NODE2, which is initially set to be the passive cluster node.

All three servers are running Service Pack 2 for Windows 2003, which is a requirement of Exchange 2007 SP1. There are some other important definitions to highlight at this time:

  • The cluster itself is called CLUS1.
  • The clustered mailbox server (CMS) name is E2K7CCR. This is the name of the mailbox server that Outlook clients connect to.

You should do two more things before embarking on any upgrade process. The first is to test Exchange 2007 SP1 in your lab environment to make sure that any Exchange-aware applications work correctly with the new service pack. The most obvious examples of such applications are backup, anti-virus, anti-spam and BlackBerry applications.

Once you've done that, prior to running the service pack setup on your production environment, make a full backup. Since we're assuming that the Client Access Servers and Hub Transport servers have already been upgraded to SP1, it follows that we've tested SP1 in a lab environment prior to upgrading these servers to SP1.

Let's now look at the process of upgrading your CCR environment to SP1.

Upgrading NODE2
The first cluster node that we will upgrade is the passive node, namely NODE2. Microsoft recommends that, on Exchange 2007 SP1 servers running on Windows 2003, you install Microsoft .NET Framework 2.0 SP1. So, that's what we'll do first on NODE2. This update is freely available from the Microsoft downloads site and only takes a few minutes to install. It's straightforward and there are no installation options.

At the end of the application of the Microsoft .NET Framework 2.0 SP1 package, you may be prompted to reboot the server, so do the reboot. It may also be a good time to use the Microsoft Updates site to see if there are any other updates that need applying to the cluster node. In any case, make sure you keep both nodes up to date with the same updates.

It's important to ensure that all cluster resources are running on NODE1 prior to performing the upgrade. To do this, run Cluster Administrator on NODE2 and connect to the cluster which, in my example, is CLUS1. You can use the Cluster Administrator to move the Cluster Group between nodes simply by right-clicking the Cluster Group object and choosing the Move Group option from the context menu. However, always use the Exchange Management Shell (EMS) to move the clustered mailbox server resources and not Cluster Administrator. This can be achieved by using the Move-ClusteredMailboxServer cmdlet, which I'll cover later.

As you can see from Figs. 1 and 2, all resources of both the default Cluster Group and the CMS group named E2K7CCR are running on NODE1.

[Click image to view larger version.]
Figure 1. Cluster Group Resources Running on NODE1.


[Click image to view larger version.]
Figure 2. CMS Resources Running on NODE1

Next, Microsoft recommends that you stop any services that are Exchange "aware" and that may have open handles to any performance counters. Examples of these services are Microsoft Operations Manager or System Centre Operations Manager agents, Forefront services and the service specifically named Performance Logs and Alerts.

It's important to note that you do not need to stop any specific Exchange services, as these will be automatically stopped during the upgrade process.

You then need to stop and restart the Remote Registry service and finally make sure that the Windows Firewall/Internet Connection Service (ICS) service is started. There's a chance that the firewall service is actually disabled, so you'll need to enable this by setting the startup type to either Manual or Automatic before starting the service. The firewall service only needs to be running for the upgrade, as it's used to add exceptions to the firewall list. Make a mental note to disable it later if it was disabled before you started the upgrade process.

Okay, it's now time to upgrade NODE2 to Exchange 2007 SP1. To do this, bring up a command prompt on NODE2 and locate the SP1 files. From the command window, run this command: /m:upgrade

Setup will then proceed through various stages such as preparing setup, copying the Exchange files and upgrading the mailbox server role as well as the Exchange management tools. Eventually, the setup process should finish with all stages shown as COMPLETED (see Fig. 3).

Upgrade NODE2 to SP1
[Click image to view larger version.]
Figure 3. Upgrading NODE2 to SP1.

It's important to shut down and restart NODE2 after SP1 has been applied, so make sure that this is done before proceeding.

That completes the SP1 file upgrade for NODE2 and also completes the areas that I will cover in part one of this article. Next time, we look at at upgrading the CMS and then finally upgrading NODE1.

About the Author

Neil Hobson is a Microsoft MVP-Exchange and as principal consultant with UK-based Microsoft Gold Partner, Silversands, he designs, implements and supports Microsoft infrastructure systems, and specializes on Exchange. Neil is an established author, speaks at technical conferences around the world on Exchange and messaging, and is a frequent contributor to several Exchange newsgroups and mailing lists as well as the popular MS Exchange blog.


comments powered by Disqus

Subscribe on YouTube