VirtualMetric Hyper-V Monitoring, Hyper-V Reporting


Cozumpark Bilisim Portali
Hosted Exchange 2010 Setup Guide – Part 2
Posted in Exchange Server | 5 Comments | 29,112 views | 29/08/2010 20:29

If you followed, at the Part 1, I installed two CAS + Mailbox Server and two Hub Transport Server. At the second part, I’ll configure Database Availability Groups between my two Mailbox servers.

First of all, you have to install Failover Cluster feature from Server Manager. After that I need to create Database Availability Group. I have to choose a Witness server. Witness server should be Hub Transport server in a recommended environment. So I choose it as my first Hub Transport Server called EXGW01.

New-DatabaseAvailabilityGroup -Name 'RadoreDAG' -WitnessServer 'EXGW01' -WitnessDirectory 'C:\RadoreDAG'

You should execute this command on Exchange Management Shell. After the command, lets check our DAG.

As you see, I don’t have any member servers right now. I’ll join my Mailbox servers to DAG.

Add-DatabaseAvailabilityGroupServer -Identity 'RadoreDAG' -MailboxServer 'EXCAS01'

After adding first mailbox server, you can check your witness file directory. It should be created by Exchange DAG. Now let’s add second server to DAG. Also our cluster is created on Failover Cluster Manager.

But as you see there is no network right now. So we should add them.

Let’s see ipv4 status.

Get-DatabaseAvailabilityGroup | FL Name,*IP*
Name : RadoreDAG
DatabaseAvailabilityGroupIpv4Addresses : {}
DatabaseAvailabilityGroupIpAddresses : {}

So we don’t have any network for DAG. Let’s create them now.
We should have 2 different networks. One is Public, other one is Replication network. On my environment, I use Replication network as a Backup Network. I’ll backup my Exchange servers with Microsoft System Center Data Protection Manager 2010 using replication network.

My Public Network:
My Replication Network:

Now, it’s time to create networks. For public network:

New-DatabaseAvailabilityGroupNetwork -DatabaseAvailabilityGroup RadoreDAG -Name Internet -Description "Internet Network" -Subnets -ReplicationEnabled:$False

For replication network:

New-DatabaseAvailabilityGroupNetwork -DatabaseAvailabilityGroup RadoreDAG -Name Backup -Description "Backup Network" -Subnets -ReplicationEnabled:$True

After configuration of networks, we should configure Group IP.

Set-DatabaseAvailabilityGroup -Identity RadoreDAG -DatabaseAvailabilityGroupIPAddresses

Ok, now check the Failover Cluster Manager:

As you see our DAG name is active. Also our networks are active.

So now we can add our second server to DAG.

Add-DatabaseAvailabilityGroupServer -Identity 'RadoreDAG' -MailboxServer 'EXCAS02'

Ok, our second server is active on DAG.

After second server, also our witness file share is active.

I configured the DAG and networks. Next, I’ll create 3 different databases for customers.

New-MailboxDatabase -Server 'EXCAS01' -Name 'Database01' -EdbFilePath 'C:\Program Files\Microsoft\Exchange Server\V14\Mailbox\Database01\Database01.edb' -LogFolderPath 'C:\Program Files\Microsoft\Exchange Server\V14\Mailbox\Database01'
New-MailboxDatabase -Server 'EXCAS01' -Name 'Database02' -EdbFilePath 'C:\Program Files\Microsoft\Exchange Server\V14\Mailbox\Database02\Database02.edb' -LogFolderPath 'C:\Program Files\Microsoft\Exchange Server\V14\Mailbox\Database02'
New-MailboxDatabase -Server 'EXCAS01' -Name 'Database03' -EdbFilePath 'C:\Program Files\Microsoft\Exchange Server\V14\Mailbox\Database03\Database03.edb' -LogFolderPath 'C:\Program Files\Microsoft\Exchange Server\V14\Mailbox\Database03'

Let’s check our databases:


I created the databases. Now I should check databases status.


We have to mount them:

Mount-Database -Identity 'Database01'
Mount-Database -Identity 'Database02'
Mount-Database -Identity 'Database03'

Lets check it again:

Now we can replicate them with other mailbox server:

Add-MailboxDatabaseCopy -Identity 'Database01' -MailboxServer 'EXCAS02' -ActivationPreference '2'
Add-MailboxDatabaseCopy -Identity 'Database02' -MailboxServer 'EXCAS02' -ActivationPreference '2'
Add-MailboxDatabaseCopy -Identity 'Database03' -MailboxServer 'EXCAS02' -ActivationPreference '2'

You may get this error when you try operation:

A source-side operation failed. Error An error occurred while performing the seed operation. Error: An error occurred w
hile processing a request on server ‘EXCAS01’. Error: Database ‘bb1e972e-a343-4cfe-8544-39f18facd816’ was not active on
source server ‘EXCAS01’.. [Database: Database01, Server:]
+ CategoryInfo : InvalidOperation: (:) [Add-MailboxDatabaseCopy], SeedInProgressException
+ FullyQualifiedErrorId : E25C52CD,Microsoft.Exchange.Management.SystemConfigurationTasks.AddMailboxDatabaseCopy

Thats a replication issue. Don’t worry about it. Let’s make them available.

First check their replicate status:

Get-MailboxDatabaseCopyStatus -Identity 'Database01'
Get-MailboxDatabaseCopyStatus -Identity 'Database02'
Get-MailboxDatabaseCopyStatus -Identity 'Database03'

We have to start replication:

Resume-MailboxDatabaseCopy -Identity 'Database01\EXCAS02'
Resume-MailboxDatabaseCopy -Identity 'Database02\EXCAS02'
Resume-MailboxDatabaseCopy -Identity 'Database03\EXCAS02'

So let’s move default mailboxes to new DAG databases.

Get-Mailbox | New-MoveRequest -TargetDatabase "Database01"

To check Move Request status:


So if you see that as “Completed” than you can remove requests:

Get-MoveRequest | Remove-MoveRequest

Now it’s time to move hidden mailboxes. First see them:

Get-Mailbox -Arbitration

Get-Mailbox -Arbitration | New-MoveRequest -TargetDatabase “Database01”


Get-MoveRequest | Remove-MoveRequest

So we moved all default mailboxes. Now we can delete default mailbox databases.

'Mailbox Database 0342336127 (YOUR UNIQUE ID) ' | Remove-MailboxDatabase

We completed our steps. As a final step, let’s check replication health status.

Test-ReplicationHealth 'EXCAS01'

Test-ReplicationHealth 'EXCAS02'

Now we have 3 databases and a fully working DAG environment. At the next part, I’ll show you how to create mailboxes for customers. Then we will see how to backup databases with Data Protection Manager 2010.

Please continue with Part 3:

Hosted Exchange 2010 – Hosted Exchange 2010 Installation

Comments (5)

Yusuf Ozturk » Hosted Exchange 2010 Setup Guide – Part 1

September 3rd, 2010

[…] Please continue with Part 2: […]

hosted exchange 2010 « Matthias Reinhardt

January 6th, 2011

[…] part1 setup part2 setup part3 setup part4 setup part5 technet site falsche […]

Carlos Tejada

January 19th, 2011

I am trying to install and configure Hosted Exchange 2010. I have followed the steps provided and ran into a small problem. I can bring up OWA but it is for Exchange 2003 how can I fix that? I am not going to setup multiple databases at this time but I am trying to finish the configuration setup the email accounts for multiple clients.



January 21st, 2011

Sorry Carlos, i don’t understand your problem. How you see Exchange 2003 owa? Had you one before in same environment? Because its simply not possible if you use correct dvd image.


January 5th, 2012

Hi There, The “My Public Network:” network in this scenario. Is this an allocated IP range of your DMZ or internal LAN/VLAN? Is CAG passing all external requests from external IP to the IP ranges DMZ/Internal Lan in this training?

Leave a Reply