Exchange Mailbox Role Calculator updates


Updates? Yes, updates. Both the Exchange 2007 Mailbox Role Calculator as well as the Exchange 2010 Mailbox Role Calculator have been updated.

The Exchange 2010 Mailbox Role Calculator has been updated to version 7.7 (was 6.3, so major update). This version includes the following enhancements:

  • 32-core support;
  • Fourth mailbox tier in the calculator;
  • Two new columns to the primary data center “Active Database Configuration / DAG” table to expose the total number of databases activated in each site after server failure events. This change was added to expose cross-site database fail-over events;
  • Option to activation block secondary data center mailbox servers that host HA database copies. This allows you to design a solution where you can activate the secondary data center in the event of a primary data center failure mode, or choose to activate a copy in the secondary data center manually, but prohibits Active Manager from automatically activating a copy in the secondary data center;
  • Modified IOPS Multiplication Factor calculations from “Base + (Base * Multiplier)” to “Base * Multiplier” to accommodate some 3rd party factors (so now you should use 1.5 instead of 0.5).

Besides enhancements, the updated Exchange 2010 Mailbox Role Calculator also contains some bug fixes which are described in the changeblog. You can download the updated calculator here. Usage instructions can be found here.

Regarding the Exchange 2007 Mailbox Role Calculator, it has been updated to version 17.5 (was 17.3). It contains some minor fixes. The Exchange 2007 Mailbox Role Calculator can be found here (changeblog, instructions).

New-MoveRequest changes for Exchange 2010 SP1


Note: The following information is based on Exchange 2010 SP1 Beta and subject to change in the final product.

If you transferred mailboxes using PowerShell or performed cross-forest mailbox moves using Exchange 2010 you’re probably familiair with the New-MoveRequest cmdlet. This cmdlet is used to initiate an asynchronous mailbox move talking to the Mailbox Replication Service (MRS) located on one of the Exchange Servers hosting the Client Access Server role. A few changes have been made to the New-MoveRequest cmdlet in Exchange 2010 SP1, which I would like to share with you.

The first interesting new option is the Outbound parameter. With Outbound  you can specify that the cross-forest mailbox move is to be initiated from the source forest. To initiate the move from the target forest you can use the Remote (identical to RTM). Note that Outbound and Remote are mutually exclusive.

Because of Exchange 2010 SP1’s capability to host the personal archives on a different database than the associated primary mailboxes, the following parameters have been added to New-MoveRequest for SP1:

  • ArchiveOnly can be used to specify that you want to move the personal archive only;
  • PrimaryOnly can be used to specify that you want to move the primary mailbox only;
  • ArchiveTargetDatabase can be used to specify the database you want to move the personal archive mailbox to. When omitted, the database hosting the primary mailbox will be used;
  • RemoteArchiveTargetDatabase can be used to specify the database in the remote forest you want to move the personal archive mailbox to. When omitted, the database hosting the primary mailbox will be used.

This enables you to bulk transfer the personal archives to another database using simple cmdlets. For example, to select all mailbox users with personal archives and move those personal archives to another database you could use:

Get-Mailbox | where { $_.ArchiveDatabase -ne $null } | New-MoveRequest -ArchiveOnly -ArchiveTargetDatabase MDB02


Like with regular mailbox move requests, you need to clean up afterwards by clearing completed moves. You could do that from EMC or use the following command in EMC:

Get-MoveRequest -MoveStatus Completed | Remove-MoveRequest

The updated New-MoveRequest cmdlet will also enable you to immediately create the associated personal archive on a seperate database when performing cross-forest mailbox moves:

$cred = get-credential
New-MoveRequest -Identity UserA -RemoteLegacy -TargetDatabase MDB1 -TargetArchiveDatabase MDB2 -RemoteGlobalCatalog dc.olddomain.nl -RemoteCredential $cred -TargetDeliveryDomain targetdomain.com

Note that this cmdlet will not enable archiving for moved mailboxes.

Finally, the EMC has been updated to reflect the possible split between primary mailbox location and personal archive location when moving mailboxes around. When selecting Mailbox > .. Move Request (Local or Remote), you’ll have additional options:

For more background on mailbox moves in Exchange 2010 and the role of the Mailbox Replication Service, please consult this TechNet article.

Goodbye IsInteg, hello new-MailboxRepairRequest


Update (2/23/2010): Adjusted request limits to SP1 RTM.

Update (8/24/2010): The Exchange team at EHLO posted a blog on IsInteg replacements. This article has been updated with the information that there is also a cmdlet to integrity check public folder databases.

Note: The following information is based on Exchange 2010 SP1 Beta and subject to change in the final product.

As of Exchange 2010 the well-known IsInteg tool was dropped. The IsInteg tool could be used with earlier versions of Exchange to detect and repair inconsistencies in the Exchange databases also known as information stores. IsInteg was complimentary to ESEUtil; Where ESEutil is used for maintaining, verifying and repairing ESE databases (which could happen to be Exchange databases), IsInteg is used to check and repair the integrity of Exchange databases. Note that for the tools to work you had to take your Exchange databases offline. Also, the process could take a while with large databases.

Then came Exchange 2010’s with it’s online database maintance. The database maintenance runs 24 x 7 on your Exchange 2010 databases in the background, without the need to take databases offline. The ESEUtil is still installed when you install an Exchange 2010 Mailbox Server role. Its purpose shifted from maintenance (which is now done 24 x 7) to inspecting and recovering ESE databases. Jaap Wesselius has written a nice article on using ESEUtil in Exchange 2010.

IsInteg is also installed with the Mailbox Server role (default location C:\Program Files\Microsoft\Exchange Server\V14\Bin). But please, don’t use it. IsInteg hasn’t been updated to understand Exchange 2010’s new database structure. But I hear you asking, without IsInteg, how can you (manually) check database integrity?

This is where the SP1’s new cmdlet New-MailboxRepairRequest comes into play. This cmdlet is meant to be a replacement for IsInteg ability to check & repair the integrity of mailbox databases integrity. New-MailboxRepairRequest can be used to detect and fix mailbox corruption, per mailbox or per database. This functionality is an improvement over IsInteg, since you can not only check databases but individual mailboxes as well without taking databases offline. Even better, only the mailbox that is currently being checked becomes unavailable; all other mailboxes in the databases remain fully operational.

The syntax of New-MailboxRepairRequest is as follows (left common parameters like Confirm and WhatIf out):

new-MailboxRepairRequest [-Mailbox <MailboxID> | -Database <DatabaseID>] -CorruptionType <CorruptionType> [-DetectOnly] [-DomainController <FQDN>]

which dissects into:

  • With Mailbox or Database you select if you want to perform the check against a mailbox or database (i.e. all mailboxes in a database) and against what identity;
  • CorruptionType specifies the sort of checks you want to perform (multiple can be specified, comma seperated). Possible values are:
    • SearchFolder: Search for folder corruption;
    • AggregateCounts: Check aggregate counts on folders;
    • ProvisionedFolder: Check for provisioned folders with unprovisioned parent folders;
    • FolderView: Check folder views returning incorrect results.
  • DetectOnly specifies if you want the cmdlet to fix problems it finds (similar to IsInteg’s fix parameter);
  • DomainController can be used to specify a preferred domain controller to update changes.

For example, to run all checks on the mailbox of ‘Michel’, without automatic repair, execute the following from the Exchange Management Shell:

New-MailboxRepairRequest -Mailbox <MailboxID> -CorruptionType SearchFolder,AggregateCounts,ProvisionedFolder,FolderView -DetectOnly

To run the SearchFolder check on the mailbox database ” with automatic repair, execute the following from the Exchange Management Shell:

New-MailboxRepairRequest -Database <DatabaseID> -CorruptionType SearchFolder

As you can see, New-MailboxRepairRequest doesn’t show any results. For that, you need to open the application eventlog of the Exchange Server hosting the mailbox or (active) database you checked or repaired and look for ‘MSExchangeIS Mailbox Store’ events. Use the RequestID the cmdlet new-MailboxMoveRequest returned to look up the events. It will log when it started (and what parameters were specified) and log results. In the example above, New-MailboxRepairRequest returned 2661da49- … for the mailbox check. As we can see, the integrity check of the mailbox was succesful.

Exchange 2010 SP1 will also introduce a new cmdlet to repair public folder replication issues. The cmdlet to use is:

New-PublicFolderDatabaseRepairRequest -Database <DatabaseID> -CorruptionType <CorruptionType> [-DetectOnly]

where CorruptionType can be ReplState (no other values possible).

Be advised that, like ESEUtil and IsInteg, repairing an Exchange database or mailbox might cause data loss. To bring the mailbox or database back to a readable and consistent state the utility might cut out the parts it doesn’t understand .. with an axe.

And finally a quick note that to avoid possible performance issues the number of repair requests is 1 for database-level repairs and 100 for mailbox-level repairs per server.

Exchange 2010 SP1 Beta “Release Notes”


Still no seperate Release Notes on Exchange 2010 SP1 Beta, but it turns out the Exchange 2010 SP1 Beta help file contains a What’s New section. Here’s an excerpt of new and discontinued features:

Note: This is based on pre-release documentation and subject to change in future releases!

New Option in Deployment
During an Exchange 2010 SP1 installation, you can now select a new option to install the required Windows roles and features for each selected Exchange 2010 SP1 server role.

Client Access Server Role Improvements
The improvements and new features in the Client Access server role fall under several key areas: Federation certificates, Exchange ActiveSync, SMS Sync, Integrated Rights Management, Microsoft Office Outlook Web App, and virtual directories. Each area is described in more detail in the following sections.

Federation Certificates
In Exchange 2010 SP1, you can use a self-signed certificate instead of a certificate issued by a Certificate Authority to establish a federation trust with the Microsoft Federation Gateway. A self-signed certificate is automatically created and installed on Exchange servers in your organization when you use the New Federation Trust wizard in the Exchange Management Console.

Exchange ActiveSync
In Exchange 2010 SP1, you can manage Exchange ActiveSync devices using the Exchange Control Panel (ECP). Administrators can perform the following tasks:

  • Manage the default access level for all mobile phones and devices.
  • Set up e-mail alerts when a mobile phone or device is quarantined.
  • Personalize the message that users receive when their mobile phone or device is either recognized or quarantined.
  • Provide a list of quarantined mobile phones or devices.
  • Create and manage Exchange ActiveSync device access rules.
  • Allow or block a specific mobile phone or device for a specific user.

For every user, the administrator can perform the following tasks from the user’s property pages:

  • List the mobile phones or devices for a specific user.
  • Initiate remote wipes on mobile phones or devices.
  • Remove old mobile phone or device partnerships.
  • Create a rule for all users of a specific mobile phone or device or mobile phone type.
  • Allow or block a specific mobile phone or device for the specific user.

SMS Sync
SMS Sync is a new feature in Exchange ActiveSync that works with Windows Mobile 6.1 with the Outlook Mobile Update and with Windows Mobile 6.5. SMS Sync is the ability to synchronize messages between a mobile phone or device and an Exchange 2010 Inbox. When synchronizing a Windows Mobile phone with an Exchange 2010 mailbox, users can choose to synchronize their text messages in addition to their Inbox, Calendar, Contacts, Tasks, and Notes. When synchronizing text messages, users will be able to send and receive text messages from their Inbox. This feature is dependent on the user’s mobile phones or devices supporting this feature.

Server-Side Information Rights Management Support
Exchange ActiveSync mailbox policies now contain support for Information Rights Management (IRM) functionality. Information Rights Management is enabled when creating a new Exchange ActiveSync mailbox policy. This new functionality allows non-Windows Mobile devices to receive and view protected e-mails. When the IRMEnabled property is configured on the Exchange ActiveSync mailbox policy and IRM is enabled for Client Access Servers, the protected e-mail will be decrypted on the server before it is downloaded to the mobile phone or device. The downloaded e-mail will be downloaded with additional properties that indicate the restrictions sent with the original e-mail. Protected messages will only be decrypted and downloaded if the mobile phone or device connects to the Client Access server using Secure Sockets Layer (SSL).

Outlook Web App Improvements
The following is a list of the new Outlook Web App functionality in Exchange 2010 SP1:

  • Improved management of the relationship between Office Communications Server and Outlook Web App. Configuration is stored in Active Directory instead of a web.config file and can be managed via cmdlet.
  • Twenty-seven themes are available, and they have new administrative options:
    • Set default theme with the DefaultTheme parameter by using either the Set-OwaMailboxPolicy or the Set-OwaVirtualDirectory cmdlet.
    • Create custom themes by modifying existing themes.
    • Control the order themes are listed in Outlook Web App.
  • By default, attachment types that are marked as Force Save will be excluded from security checks for XML or HTML. You can change this behavior by setting the ForceSaveAttachmentFilteringEnabled parameter to $true by using either the Set-OwaMailboxPolicy or the Set-OwaVirtualDirectory cmdlet.

Reset Virtual Directory
In Exchange 2010 SP1, you can use the new Reset Client Access Virtual Directory wizard to reset one or more Client Access server virtual directories. The new wizard makes it easier to reset a Client Access server virtual directory. One reason that you might want to reset a Client Access server virtual directory is to resolve an issue related to a damaged file on a virtual directory. In addition to resetting virtual directories, the wizard creates a log file that includes the settings for each virtual directory that you choose to reset.

Improvements in Transport
The following is a list of new Transport functionality in Exchange 2010 SP1:

  • MailTips access control over organizational relationships
  • Enhanced monitoring and troubleshooting features for MailTips
  • Enhanced monitoring and troubleshooting features for message tracking
  • Message throttling enhancements
  • Shadow redundancy promotion
  • SMTP failover and load balancing improvements
  • Support for extended protection on SMTP connections
  • Send connector changes to reduce NDRs over well-defined connections

Permissions Functionality
The following is a brief description of new permissions features and enhancements in Exchange 2010 SP1:

  • Database scope support
    With database scopes, you can control which databases mailboxes can be created for a given set of administrators and also control which databases they can manage.
  • Active Directory split permissions
    Active Directory split permissions enable you to completely separate the administrative capabilities of Exchange administrators from your Active Directory administrators. The ability to create and remove Active Directory users and groups and manage non-Exchange attributes of Active Directory objects by Exchange administrators and servers has been removed in Exchange 2010 SP1.
  • Improved user interface
    You can now create and manage management role groups and management role assignment policies in the Exchange Control Panel (ECP). This includes adding and removing management roles to role groups and role assignment policies, adding and removing members to and from role groups, and assigning users to role assignment policies.

Exchange Store and Mailbox Database Functionality
The following is a list of new store and mailbox database functionality in Exchange 2010 SP1:

  • With the New-MailboxRepairRequest cmdlet, you can detect and repair mailbox and database corruption issues.
  • Store limits were increased for administrative access.
  • The Database Log Growth Troubleshooter (Troubleshoot-DatabaseSpace.ps1) is a new script that allows you to control excessive log growth of mailbox databases.
  • Public Folders client permissions support was added to the Exchange Management Console (EMC).

Mailbox and Recipients Functionality
The following is a list of new mailbox and recipient functionality included in Exchange 2010 SP1:

  • Calendar Repair Assistant supports more scenarios than were available in Exchange 2010 RTM.
  • Mailbox Assistants are now all throttle-based (changed from time-based in Exchange 2010 RTM).
  • Internet calendar publishing allows users in your Exchange organization to share their Outlook calendars with a broad Internet audience.
  • Importing and exporting .pst files now uses the Mailbox Replication service and doesn’t require Outlook.
  • Hierarchical address book support allows you to create and configure your address lists and offline address books in a hierarchical view.
  • Distribution group naming policies allow you to configure string text that will be appended or prepended to a distribution group’s name when it’s created.
  • Soft-delete of mailboxes after move completion.

High Availability and Site Resilience Functionality

The following is a list of new high availability and site resilience functionality included in Exchange 2010 SP1:

  • Continuous replication – block mode
  • Active mailbox database redistribution
  • Improved Outlook cross-site connection behavior and experience
  • Enhanced datacenter activation coordination mode support
  • New and enhanced management and monitoring scripts
  • Exchange Management Console user interface enhancements
  • Improvements in failover performance

Messaging Policy and Compliance Functionality
The following is a list of new messaging policy and compliance functionality included in Exchange 2010 SP1:

  • Provision personal archive on a different mailbox database
  • Import historical mailbox data to personal archive
  • Delegate access to personal archive
  • New retention policy user interface
  • Support for creating retention policy tags for Calendar and Tasks default folders
  • Opt-in personal tags
  • Multi-Mailbox Search preview
  • Annotations in Multi-Mailbox Search
  • Multi-Mailbox Search data de-duplication
  • WebReady Document Viewing of IRM-protected messages in Outlook Web App
  • IRM in Exchange ActiveSync for protocol-level IRM
  • IRM logging
  • Mailbox audit logging

Unified Messaging Server Role Improvements
The Unified Messaging server role has been improved and has added new features in Exchange 2010 SP1. To use some of these features, you must correctly deploy Microsoft Office Communications Server “14” in your environment. The following is an overview of all the new features in Exchange 2010 Unified Messaging:

  • UM reporting
    The reports for Call Statistics and User Call Logs found in the Exchange Management Console are displayed in the Exchange Control Panel.
  • UM management in the Exchange Control Panel
    You can use the ECP to manage UM components in a cross-premises environment.
  • Cross-Forest UM-enabled mailbox migration
    In Exchange 2010 SP1, you can use the New-MoveRequest cmdlet with the Mailbox Replication Service (MRS) to move a UM-enabled mailbox within a local forest and multiple forests in an enterprise.
  • Outlook Voice Access improvements
    Outlook Voice Access users can log on to their Exchange 2010 mailbox and choose the order to listen to unread voice mail messages, from the oldest message first or the newest message first.
  • Caller Name Display support
    Exchange 2010 SP1 includes support for enhanced caller ID resolution for displaying names for voice mails from unresolved numbers using Caller Name Display (CND).
  • Test-ExchangeUMCallFlow cmdlet
    With this Exchange 2010 SP1 cmdlet, you can test UM connectivity and call flow.
  • New UM Dial Plan wizard
    An additional page has been added to the New UM Dial Plan wizard that allows you to add a UM server to the dial plan.
  • Office Communications Server “14” Support
    Migrating SIP URI dial plans and Message Waiting Indicator (MWI) notifications in a cross-premises environment has been added.
  • Secondary UM dial plan support
    You can add a secondary UM dial plan for a UM-enabled user.
  • UM language packs added
    New UM language packs are now available in Exchange 2010 SP1. In addition, the Spanish (Spain) (es-ES) UM language pack available for Exchange 2010 SP1 now includes Voice Mail Preview, a feature that wasn’t available in the Exchange 2010 RTM release of that language pack.
  • Call answering rules improvements
    There are three updates to Call Answering Rules for UM-enabled users in SP1.
  • UC Managed API/speech platform improvements
    Beginning with Exchange 2010 SP1, the UM server relies on Unified Communications Managed API v. 2.0 (UCMA) for its underlying SIP signaling and speech processing.
  • UM auto attendant update
    In Exchange 2010 SP1, a UM auto attendant will play only the holiday greeting on a holiday.

Audit Logging Improvements
Exchange 2010 SP1 provides improvements in functionality related to administrator audit logging and new functionality for mailbox audit logging:

  • Improvements in administrator audit logging
    Exchange 2010 enhances the administrator audit logging functionality by providing you with the ability to perform searches of the admin audit log using the Exchange Management Shell. You can search on cmdlet and parameter names, date, the user who ran the command, and more. The results generated by your search can be displayed on the screen or e-mailed to a recipient you specify and viewed as an XML file. And, because all the administrative interfaces run Shell cmdlets in the background, the actions that occur in all the interfaces can be logged.
  • New mailbox audit logging
    Exchange 2010 SP1 introduces new mailbox audit logging functionality to allow you to track mailbox access by administrators, delegates, and mailbox owners, and actions taken on mailbox items such as moving or deleting a message, using SendAs or SendOnBehalf rights to send messages, and accessing a mailbox folder or a message. You can use the ECP to generate a report of non-owner mailbox access and use the Shell to search mailbox audit logs.
  • The Exchange Control Panel also provides several reports which are generated based on the audit logs in Exchange 2010 SP1.

Support for Coexistence with Exchange Online
Exchange 2010 SP1 includes functionality that supports coexistence with Exchange Online. However, Exchange Online has not yet been updated to support the following Exchange 2010 SP1 functionality:

  • Migration of UM-enabled mailboxes
    The New-MoveRequest cmdlet can be used with the Microsoft Exchange Mailbox Replication service (MRS) to move a UM-enabled mailbox within a coexistence environment.
  • IRM support for coexistence
    IRM is fully supported for cross-premises deployments. The tenant administrator can export the trusted publishing domain from the on-premises Active Directory Rights Management Services (AD RMS) server and import it to the cloud-based service. This functionality allows IRM-protected messages to be decrypted in the cloud, and cloud mailbox users to send IRM-protected messages that on-premises mailbox users can decrypt and access.
  • Remote Mailboxes
    A new set of SP1 cmdlets allow you to create and manage a mail-enabled user in the on-premises Active Directory site and at the same time create and manage the associated mailbox in the cloud-based service. The cmdlets are:

    • New-RemoteMailbox
    • Set-RemoteMailbox
    • Get-RemoteMailbox
    • Enable-RemoteMailbox
    • Disable-RemoteMailbox
    • Remove-Remote Mailbox
  • Transport
    Updated features in Transport help ensure that message flow remains protected between users regardless of where their mailboxes are located. Enhanced Transport features such as MailTips, delivery reports, and message moderation also support this deployment scenario.

Discontinued Features
The file also mentions the following discontinued features from Exchange 2010 RTM to Exchange 2010 SP1:

Export-Mailbox and Import-Mailbox
Use Mailbox Export Requests or Mailbox Import Request. For more information, see Understanding Mailbox Import and Export Requests.

Federated Delivery
Federated delivery allowed messages to be sent in an encrypted format and delivered as if they came from an internal server with internal addresses resolved, unsolicited e-mail and virus filtering results preserved, and trusted system data preserved between federated organizations.

ISInteg
Use New-MailboxRepairRequest.

Managed Folders in EMC
In Exchange 2010 SP1, use the Shell to administer Managed Folders features such as Managed Default Folders, Managed Custom Folders. , and Managed Folder Mailbox Policies.Use the EMC to manage Retention Policies and Retention Tags – the new Messaging Records Management (MRM) feature introduced in Exchange 2010.

Exchange 2010 SP1 Beta Setup & Prerequisites


Many of us have been setting up and testing SP1 Beta in (I hope) lab environments. One of the nice additions to the setup process people reported is the option Automatically install Windows Server roles and features required for Exchange Server, shown during the Installation Type selection. Be advised that this option is – as stated – limited to Windows Server roles and underlying features only. You still need to install other possible prerequisites first, such as the 2007 Office System Converter. Also, the option doesn’t seem to work 100% in SP1 Beta, as I had to manually add IIS features like IIS7 Basic Authentication and IIS7 Windows Authentication.

Although this potentially saves us executing the well-known Add-WindowsFeauture cmdlets (2008 R2 or ServerManagerCmd in 2008 SP2, see this article), I hope Microsoft includes automatic installation of the additional prerequisite components in SP1 RTM as well. I expect it would be little trouble to include these components as well, accelerating the process of installing Exchange 2010 SP1 and rendering prerequisite installation scripts like this script from Pat Richard obsolete.

Note that Exchange 2010 setup also supports resuming. Nice when setup discovers a pending restart; resuming means you can reboot, start setup again and continue where you left off; no need to enter all the information again. More information on resuming setup and watermarks here.

Note that I’ve been installing Exchange 2010 SP1 Beta on Windows Server 2008 R2 only so far, so on Windows Server 2008 SP2 your mileage may vary.