Exchange 2013

Installing Cumulative Updates for Exchange Server 2013

Tonight’s “home work” Assignment:
Update  Companies Exchange 2013 to Cumulative Update 3

Purpose

  • Address many of the issues that existed in Cumulative Update 2.
  • Bring additional value to the company

Oh and some of the newly introduced features / enhancements should help also:

  • Usability improvements when adding members to distribution groups in the Exchange Administration Console (EAC)
  • Windows Azure AD Rights Management available for use for IRM protection in on-premises Exchange deployments
  • Improved administrator audit logging experience
  • Windows 8.1/IE 11 no longer require the use of OWA Light

To get the Exchange 2013 Cumulative Update 3 just click here

Here are some steps to keep in mind when / if you are preforming this update yourself.

Preparation Tasks

Like that of installing any updates get ready. Read about what your installing and know why you are installing it.

  • Download the Cumulative Update 3 Install – here is a link hope it still works, if not just go to the download center and download it to each exchange server.
  • Backup Active Directory – Exchange CU3  will modify your schema
  • Backup you existing Exchange  2013 server(s)
  • Backup your existing Exchange databases (data/log volumes)
  • Have documented info on anything that you may have customized; such as configurations.
  • If you use 3rd party add-on to exchange (GOD HELP YOU)
  • And if you have no idea of what your doing and not 100% confident then you should not proceed further – my advice

Preforming the update

Locate your downloaded package containing the Cumulative Update 3 and extract it.  Once completed run the Setup.exe

If your server is connected to the internet you will be asked if you can check for updates. It’s a good idea to do this.

 

When the update had completed its check click Next to continue. The setup will being to cop files. This will take some time. Once completed the setup will detect that you are installing an update to Exchange 2013

You will presented with the normal license agreement, and as always you will accept them so you can proceed with the install. Once you have done so the installer will check for existing and new prerequisites it needs to continue the installation

After the readiness checks have completed the setup process continues and this my friend will take a very long time. In my case it was about 1 hour and 30 minutes to complete.

 

The setup process saves the exchange configuration and removes all the previous exchange installation

It then copies the new installation files to the server, in addition to other files such a languages etc..

Closer to the end of the update it configures your services again

And when the setup has completed you are prompted to restart the server if required.  *please* restart your server as you would want to test to ensure all services start up as expected.

Congratulations you have just updated to Exchange 2013 Cumulative Update 3

Post Install Tasks

  • Review windows event logs on your Exchange server(s)
  • Review services
  • Review connectivity to Exchange – Outlook Web Access, Outlook Clients, Mobile Device Connectivity
  • Write up a summery of what you did to share with team members are supervising management types – I included my actual report at the end of this post.

 

My Summery:

I have completed the work on Exchange.
Completion time was 12:30 AM Saturday, January 18, 2014

Tasks Preformed before Update Process
• Exchange Server was shutdown to adjust memory resources
• Exchange Data & Log Volumes moved  to Volume Collection
• Volume Collection of Exchanges Data & Log Volumes were made into a full snapshot as part of a backup / rollback plan
• Exchange Server was also made into a snapshot for backup / rollback plan

Update Process
• After exchange was restarted, began the verification of  files
•  Started update process,  monitored resources during the upgrade
• Update ran for 2 hours from start to finish.
• Once update was completed, restarted exchange
• Upon resuming, verified services were started automatically and storage volumes were attached
• Inspected event logs for any errors.
• Tested connectivity with OWA, Mobile and Outlook access

 

Error FileAccessDenied (JET_errFileAccessDenied …)

I ran into the following message when running an operation on one of my Exchange databases: Operation terminated with error -1032 (JET_errFileAccessDenied, Cannot access file, the file is locked or in use) after 10.79 seconds.

The operation’s I was attempting was an integrity check on a database (ESEUTIL /G database_filename.edb). When this failed with the error above. I verified that the database was dismounted and that my antivirus scanner was not locking the file.

It took me a little bit of time but I soon released that the temp file for the database would be on my system volume which did not have the space required to run this operation.

That said I ran the command again; this time specifying a location for the temp file. That command looks something like this:

ESEUTIL /G database_filename.edb /TE:\Mailbox\Temp\thisismytempfile.edb

Please note that there is no space used after the command switch /T

For more info on the ESEUTIL: http://support.microsoft.com/kb/192185

Unresolved Error: Server 2012 – Event 1000, Application Error

I came across an issues with my Windows Server 2012 / Exchange 2013 RU2 Server. After an unexpected shutdown message I was able to find out the faulting application which caused the reboot was LSASS.

There was an event message in the system event log of:

The process wininit.exe has initiated the restart of computer EXSERVER on behalf of user for the following reason: No title for this reason could be found
Reason Code: 0x50006
Shutdown Type: restart
Comment: The system process ‘C:Windows\system32\lsass.exe‘ terminated unexpectedly with status code 255. The system will now shut down and restart.

Later found in the application log event 1000 application error::

Faulting application name: lsass.exe, version: 6.2.9200.16384, time stamp: 0x50108ab2
Faulting module name: schannel.DLL, version: 6.2.9200.16384, time stamp: 0x5010892c
Exception code: 0xc0000409
Fault offset: 0x000000000001a73a
Faulting process id: 0x224
Faulting application start time: 0x01ce7f8a27d7e7ff
Faulting application path: C:Windowssystem32lsass.exe
Faulting module path: C:Windowssystem32schannel.DLL
Report Id: c2142447-f4f2-11e2-9404-000c299625b9
Faulting package full name:
Faulting package-relative application ID:

Looking into the Exception code: 0xc0000409 only tells me that the application experienced an event it could not handle and crashed causing windows to reboot.

Another bit of info I will keep in mind is right before this issue there were several Application Events, Event 4002, MSExchangeIS that reads:

Microsoft Exchange Information Store service has promoted the following properties (65F3, 65E9, 0E99, 0E9A) for mailbox (59bfe395-06d4-4407-8d6c-4f763e37e698) and folder (Inbox <hidden>) with session client type (Migration).

This so happens to be during a migration period where I am moving mailboxes from Exchange 2010 to Exchange 2013 RU2. It has me also wondering if items from one of the legacy mailboxes has some form of corruption within them which may be the root cause of this.

For now this is unresolved and I will keep an eye on it.  If you know of this issues please hit me up via email jermsmit ( at ) gmail (dot) (com).

Thanks

Exchange 2013: Migrating Mailboxes via PowerShell

Exchange 2013 has new and impressive administration center that allows you to handle tasks such as mailbox moves. I prefer using the Exchange Management Shell for such a task.

Using the following command you can move all mailboxes within a database to your new mailbox database: Get-Mailbox -Database “Source-Database” | New-MoveRequest -TargetDatabase “Destination-Database”

To get info on the migration progress you can use the following command syntax: Get-MoveRequestStatistics -MoveRequestQueue “Destination-Database”

Once this migration has completed you can check if anything exists in the source database with the following: Get-MailboxDatabase -Identity “Source-Database” | Get-Mailbox

Exchange 2013: Get Mailbox Move Request Statistics

After some weekend Exchange mailbox migrations I wanted to check the status of mailboxes. This is where I use the Get-MoveRequestStatistics for the all mailboxes or database.

Issuing the following command: Get-MoveRequestStatistics -MoveRequestQueue “*databasename*” will return to you the status of all the mailboxes on that data store. This is good; but what if you are only interested in the status of the databases that are currently being migrated over.

Issuing the following command seems to do the trick:
Get-MoveRequest | where {$_.status -ne ”Completed”} | Get-MoveRequestStatistics

As you see above we used the ‘where’ clause to select all of the database moves that are not in a “Completed” status.

Another command I found useful is used to show if mailboxes exist within a particular database, which is very useful when migrating mailboxes and validating if they old database is now free of mailboxes.

The command I use is: Get-MailboxDatabase -Identity “OLDSTORE1” | Get-Mailbox