Service Packs: Upgrading Front-End and Back-End Servers
Topic Last Modified: 2005-05-24
When new service packs are released, upgrading your front-end servers is a straightforward process. It is simpler than upgrading a back-end server, because there is no user data stored on the front-end server. As long as there are multiple front-end servers, taking one server offline does not mean an interruption in service for the user. If you have multiple front-end servers that are load balanced, you can remove the front-end server you want to upgrade from the load-balancing cluster, upgrade it, and add it back to the load-balancing cluster with no interruption in service to users.
If Outlook Web Access is deployed in your organization, you should upgrade every front-end server in the organization before you upgrade any back-end servers. This is because of the way Outlook Web Access is built. At a high level, Outlook Web Access data is made up of two parts: templates and controls. Templates are things such as forms (e-mail messages, calendar items, and other forms). Controls are files such as DHTML behaviors, JScript® files, style sheets, and images that are stored in the /exchweb virtual directory in IIS.
When a user accesses Outlook Web Access through the front-end server, the templates actually come from the back-end server, and the controls come from the front-end server. The templates come from the back-end for performance reasons. The controls come from the front-end server because there is no mechanism to proxy a request for data that is not in the Exchange store from a front-end server to a back-end server. This is not a problem as long as the front-end and back-end servers run the same version and service pack of Exchange.
A problem arises when the servers run different versions of service packs. If a template on a back-end server references a control on a front-end server, and the front-end server is running an earlier service pack, the control the back-end server is referencing might not exist. As a result, Outlook Web Access does not work for users whose mailboxes are on the upgraded back-end server.
The reverse situation does not have the same problem. If you upgrade a front-end server first, users see templates from the back-end server. These templates reference the earlier versions of the controls, which still exist on the front-end server, because the files are versioned and not removed in an upgrade. To address this issue, it is recommended that you upgrade all front-end servers before upgrading any back-end servers.
Additionally, ensure that the required services are running before you upgrade. For Exchange setup to run, you must install and enable (but not necessarily start) Network News Transfer Protocol (NNTP), SMTP, W3SVC, and IIS Admin. If the MSExchangeMTA, IMAP4, POP3, and MSExchangeIS services are disabled, Setup still runs; however, Setup will enable these services after it starts. After setup is complete, you can disable unnecessary services.