It is recommended that all large Exchange deployments utilise the Automatic Mailbox Provisioning system to randomly distribute mailboxes between mailbox databases. If you place users in particular mailbox databases based on items such as a department, in the event issues occur with a specific mailbox database and the database will not mount, an entire department within a company will be out of production for a period of time. If mailboxes are randomly distributed between multiple databases, in the event a database goes offline, it will still effect the company however the impact will be less saver as all departments within your company will still be operational.
As we have identified, the Automatic Mailbox Provisioning system distributes mailboxes randomly amongst databases but what if we want to exclude a mailbox database from having additional mailboxes provisioned such as a mailbox database which is dedicated to holding Archive mailboxs?
Microsoft has included two attributes which can be configured against a Mailbox Database for this purpose called "IsExcludedFromProvisioning" and "IsSuspendedFromProvisioning".
What is the difference between these values?
Exchange 2010 help explains these attributes as:
-IsExcludedFromProvisioning <$true | $false>
The IsExcludedFromProvisioning parameter specifies that this database is permanently not considered by the mailbox provisioning load balancer. If the IsExcludedFromProvisioning parameter is enabled, new mailboxes aren't added automatically to this database. You can manually add a mailbox if your role permits.
-IsSuspendedFromProvisioning <$true | $false>
The IsSuspendedFromProvisioning parameter specifies that this database is temporarily not considered by the mailbox provisioning load balancer.
What does it mean by temporarily not considered?
I forwarded this question onto members of the Exchange product team and here is the response I received was they both do the same thing.
The reason they are two attributes is for environments which have multiple admins as a mechanism to indicate which provisioning suspensions are permanent, and which are temporary so that other admins know if they are allowed to un-suspend a mailbox database from provisioning. Thus, in a multi-admin environment, if one admin configures either setting, the intent should be clear to the other admins (and therefore, they won’t remove a permanent suspension as a result of knowing that intent).
What would have been nicer is a IsExcludedFromProvisioningReason attribute where administrators can place a short string value to explain why it has been excluded from provisioning.