It's been a little nutso in the LifeChurch.tv IT world recently. We've been a little stuck on some projects like Cisco Unity 7 / Exchange 2010 Integration (Engineering Special required) – which has been delaying our full Exchange 2010 rollout. That's been annoying for sure. We've also been neck deep in Ruckus Wireless migration at our Central / Edmond & OKC Campuses.
We're breaking inertia this week. It's slow, but it's breaking and we're starting to move forward.
Last night, after several days/weeks of working with Cisco TAC, @mburleson made a giant breakthru on the Unity / Exchange stuff. We decided to go ahead and fully update Exchange 2010 using Update Rollup 3 while we were at it. To complicate things, we're running DAG – Database Availability Groups – so we had to update in the right order. Here's some of the process.
First of all – we've got two boxes to update – so grab the update on both servers.
I found a great blog resource on updating Exchange 2010 when using DAG. Go read that. Really.
In our situation, we'll get started on the server Exchange01. Drop to the Exchange Management Shell (EMS) and run the following shell command:
Get-MailboxDatabaseCopyStatus
–Server (hostname) | Suspend-MailboxDatabaseCopy
–ActivationOnly –Confirm:$false
This basically tells Exchange01 to NOT activate any databases if our 2nd DAG node goes down. This doesn't stop hosting the databases. That's next. Let's activate all the databases to Exchange02. Drop back to the EMS and run the following shell command:
Move-ActiveMailboxDatabase -Server (hostame) -ActivateOnServer Exchange02
or
Move-ActiveMailboxDatabase -Server (hostname)
The first command tells Exchange01 (hostname) to move all active databases to Exchange02. The second command let's Exchange figure out which server on which to activate the databases. You can either be explicit or trust exchange to find the right DAG server.
Great – do that. When it's done you can verify all the databases are mounted on a DAG server OTHER than the one you'd updating. Install the rollup.
That's the one. Click Next.
Accept the EULA. Click Next.
Yes – I'm sure. Click Yes. And the installation starts.
Hooray! Painless, but this seems "fast" for a rollup.
Ah – there it is. That's why it's so fast. Something got jacked along the way. Our Update Rollup 3 ended prematurely. What in the world does THAT mean? Click Finish and let's go put out google-fu into practice by googling the error text. Whatcha know, top link points to this blog that explains the issue as being a UAC problem. I didn't turn off UAC of course, and I didn't run the update using elevated privileges so it barfed. Crap. So, we can fix using two steps.
1) Uninstall the update – because unlike the text in the error – it DID do something, just not what you expected.
2) Re-install using "Run As Administrator" – I did this from and Elevated Command prompt.
Let's uninstall. Head over to the Control Panel, Programs, Programs & Features, Installed Updates and get rid of Exchange 2010 Update Rollup 3.
Go away.
Now, let's restart using an elevated command prompt.
That's better. That's what I expected. It takes a while to install a rollup because it compiles the binaries, etc. Wait about 15 minutes.
Much better. Click Finish.
Now, you're done with Exchange01. Let's run another Exchange Management Shell command:
Get-MailboxDatabaseCopyStatus
–Server (hostname) | Resume-MailboxDatabaseCopy
This one allows the box to receive/activate databases again. You're done.
Now, do the same thing with Exchange02 – the second box on our DAG.
We're all done. Hooray! That was painless, huh?
next time turn useless account control off and spare yourself the problems.