Planning and migrating a small organization from Exchange 2007 to 2013 (Part 10)

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


Our last part in this series covered getting our storage ready for Exchange, and then installation and configuration of one of the most critical parts of any Exchange deployment – JetStress. After configuring JetStress, we’ll now perform the tests upon our new Exchange server, and then review the results of those tests. We’ll then clean up the server and get on with installation of Exchange itself, covering both installation via the command line and via the GUI.

Storage Subsystem Testing Continued

Executing the JetStress tests and reviewing results

With our settings in place, review the settings that have been chosen, and if necessary use the navigation links on the left of the JetStress window to return and change any incorrect settings. When you are happy with the test settings, choose Prepare Test to create the underlying databases we’ll use for our JetStress testing. This will prepare and begin our initial test:

Figure 1: Prepare and Execute the test

After the initial two hour test completes, we will see output in the Test in Progress window indicating that the test is complete, along with links to the output HTML and XML files generated.

Click on the dated Performance HTML file (as shown below) to review the results of the test:

Figure 2: View test progress and links to results

In the Performance results HTML file, we’re looking primarily for two things (although if you want to interpret the rest of the data, take a closer look at the aforementioned JetStress 2013 Field Guide). First, we’ll see if we’ve passed the test, and second we’ll see the IOPs we’ve achieved, as highlighted below:

Figure 3: Observing the test results and throughput

And although it’s the headline figure above that really counts, we can see these figures broken in the Total I/O Performance section:

Figure 4: Viewing more detailed information about IO performance

After executing the test the first time, we’ll then need to re-run the test over 24 hours. To do this, return to the Define Test Scenario settings, and on the Define Test Run page, change the Test duration to 24 hours:

Figure 5: Choosing to run a 24-hour test

Then on Select Database Source, ensure you choose to Attach existing databases to avoid re-creation of the databases we set up for the original 2 hour test.

Assuming the test passes, we’ll then revisit the Exchange 2013 Server Role Requirements Calculator. In our example environment, we see that we comfortably meet these requirements, with quite some room to spare:

Figure 6: Requirements stated by the Role Requirement Calculator

What happens if the JetStress tests fail?

But what happens if you don’t meet these requirements, or the test fails?

If the test fails but the IOPs available were high, then it might be time to step back from the auto-tuning uses above, and re-run the test with auto-tuning suppressed, starting with a thread count of 1. As you’ll see from the figures above – the performance required is far lower than is actually available therefore we’d actually be comfortable with a test result with a fifth of the IOPs actually available.

If the test fails and the results were borderline or below the actual requirements – and the underlying storage matches the input and output to the Role Requirements Calculator, then it may be time to look at other factors. We won’t cover these in their entirety here – but possible culprits range from inadequate throughput available on an iSCSI network, RAID controller problems to disk firmware issues.

Finally, if you are able to, after a successful test – consider re-running your tests in a disk failure scenario. This should include after the loss of a disk within a RAID array, and during a RAID rebuild. Typically you’ll expect your Exchange system to be online during that process, so it’s worth knowing whether it will meet the demands of your users while you make inevitable repairs.

Uninstalling JetStress ready for Exchange 2013 setup

Because JetStress loads certain Exchange performance counters into the registry, it’s important to properly uninstall the tool before we set up Exchange Server 2013.

Removal of JetStress itself is quite simple – open Programs and Features, select Microsoft Exchange JetStress 2013, then choose Uninstall:

Figure 7: Uninstalling JetStress via Programs and Features

After removing JetStress, I’d recommend then taking a copy of the JetStress results and keeping them in a safe place – you never know when you might need to reference them. In our case, we’ll navigate to the original installation folder, and take a copy of the remaining files (excluding of course the ese.dll and eseperf.* files), before removing the folder itself:

Figure 8:Copying JetStress Results

Finally, navigate to each folder used to store JetStress Database and Log files and remove these files:

Figure 9: Removing Database and Log files created by JetStress

Alternatively if you’d like to be sure the test database and log files are gone, re-format each of the volumes being sure to again choose 64KB NTFS allocation unit sizes.

Installing the Exchange 2013 Multi-Role Server

We are now at the moment we’ve all been waiting for – installing Exchange 2013. Yes, you could have installed this first – but like anything, a little planning always pays off in the end.

We’ll cover both ways to install Exchange – first via the command line then secondly via the GUI. Both methods are equally valid and should anything go wrong, we’ll refer to the same set of logs contained within C:\ExchangeSetupLogs to find out what happened. Whichever way you prefer is totally up to you.

Installation Locations

As recommended by the Exchange 2013 Role Requirements Calculator, we will be placing the Transport Database – the part of Exchange that temporarily stores in-transit messages – on the system drive, therefore it makes a lot of sense to use the default locations for Exchange installation. The default installation location for Exchange 2013 is within C:\Program Files\Microsoft\Exchange Server\V15.

Installing Exchange 2013 via Unattended Setup

Let’s first look at the command line method of installing Exchange. Earlier in this series when getting the pre-requisites ready, we used the same method to perform Active Directory preparation so by this point using to install Exchange should be fairly familiar to you.

With all our pre-requisites satisfied, installing Exchange 2013 with the defaults is pretty simple. We’ll use the following switches to setup.exe:

setup.exe /Mode:Install /Roles:ClientAccess,Mailbox /IAcceptExchangeServerLicenseTerms

Using an elevated command prompt, we’ll execute the above command to begin setup:

Figure 10: Starting Exchange setup from the command line

As part of the installation via the command line, we’ve got a plethora of other options available to us though – for example, specifying the name and location of the initial database. However, as we’ll be following the same set of steps for those using the GUI, we’re just using the most simple set of options here.

The process via the command line performs the same checks and balances the GUI version uses, so you’ll see in the installation progress, shown below, all the readiness checks are performed before the actual installation takes place:

Figure 11: Reviewing the Exchange 2013 unattended setup output

After installation completes, navigate to https://servername/ecp/?ClientVersion=15 to ensure the Exchange Admin Center displays correctly (as shown at the end of this article), then reboot the server.

As you’ve already installed Exchange, you obviously don’t need to follow the next section; however if you’ve decided you’d prefer to stay with the GUI, follow the steps below.

Installing Exchange 2013 via the Graphical User Interface

Now let’s take a look at the same process, using the GUI. If you’ve installed Exchange 2007, or even Exchange 2010, via the GUI, then you might be expecting more of the same – you’d be partly right as the same pre-requisite checks take place before the actual installation; however along with a revamped Modern UI look, the setup process simply shows the current take in progress rather than an ongoing update of how far it’s got and how far it’s still got left to go.

We’ll launch the GUI version of setup by executing the same setup.exe shown above for command-line setup, from Windows Explorer, making sure to run as an administrator:

Figure 12: Executing Exchange Setup

After launching setup, we’ll then need to wait a few moments while setup files are copied to the correct locations and checks are performed to ensure we’re ready to go:

Figure 13: Exchange 2013 setup initializes

After setup launches, read and, if appropriate accept the licence terms, then choose whether you want Exchange Server to communicate with Microsoft in the event of any problems:

Figure 14: Selecting whether or not to use recommended settings for reporting errors to Microsoft

On the Server Role Selection page, we’ll then choose to install both the Client Access role and the Mailbox role:

Figure 15: Choosing to install the Mailbox and Client Access roles

On the Installation Space and Location page, we’ll leave the defaults as-is. If you need to change this value for your environment, do so here:

Figure 16: Selecting the Installation Path for Exchange 2013

On the Malware Protection Settings page, we’ll also leave the default set ensuring Exchange 2013’s built-in malware protection features will be enabled for messages circulating within our new Exchange 2013 environment:

Figure 17: Selecting whether or not to enable Malware scanning

After choosing the relevant setting needed to begin installation, the Exchange 2013 setup program will now perform readiness checks. Assuming these complete successfully, we’ll expect to see just one warning.

This warning relates to the lack of the Office 2010 Filter Packs, which are not required for installation, and are only required to create Transport Rules for OneNote or Publisher files.

To then continue with Exchange 2013 installation, press Install:

Figure 18: Reviewing readiness checks before Exchange installation

At this point setup will continue. As we’ve already performed Active Directory pre-requisites, we’ll only be performing tasks related to the installation of this server, which should ensure some time is saved; but a word of warning – expect to wait at least 15 minutes to half an hour for installation:

Figure 19: Monitoring setup progress

After setup completes successfully, we’ll then be given the chance to Launch the Exchange Administration Center and be advised to reboot the server. To verify that the Exchange Admin Center is functional, we’ll select the aforementioned option, and press finish:

Figure 20: Launching the Exchange Admin Center

The Exchange Admin Center should then launch within Internet Explorer at a URL similar to https://servername/ecp/?ExchClientVer=15. Login using Exchange administrative credentials and verify that everything looks reasonably healthy:

Figure 21: Our first glimpse of Exchange 2013’s new management interface, the EAC

We’ll then close the browser, and reboot the server as recommended.


In this article we’ve proved that the underlying storage is able to cope with the demands of our end users. With confidence that the storage meets requirements we’ve stripped off the JetStress toolset and the databases it created, and installed Exchange Server 2013.

In the next part of this series we’ll complete post-installation changes to get the Exchange 2013 Server ready for integration into our existing environment.

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

About The Author

1 thought on “Planning and migrating a small organization from Exchange 2007 to 2013 (Part 10)”

  1. NOTE: You cannot install Exchange 2013 on Server 2016. I am using this information to perform a swing upgrade of Exchange 2007 to Exchange 2013 as a swing upgrade to Exchange 2016, but Exchange 2013 will not install on Server 2016; so I have to use Server 2012 R2 for my Exchange 2013 swing. Then go to Exchange 2016 on Server 2016.

Leave a Comment

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Scroll to Top