Effects of Site Resilience User Distribution Model - Using JBOD multiple databases on a single volume - Exchange 2013 Server Role Requirements Calculator

Let’s build a scenario first:

An example of a configuration that uses multiple databases per volume is illustrated below.

Configuration that uses multiple databases per volume

NOTE:- A-Active,P-Passive

DatacentreA: MBX-1,MBX-2,MBX-3,MBX-4,CAS-1,CAS-2,CAS-3

DatacentreB: MBX-5,MBX-6,MBX-7,MBX-8,CAS-4,CAS-5,CAS-6

DAG-1: MBX-1,MBX-2,MBX-3,MBX-4

DAG-2: MBX-5,MBX-6,MBX-7,MBX-8

Witness for DAG-1: CAS-1; AltWitness: CAS-4

Witness for DAG-2: CAS-3; AltWitness: CAS-2

NOTE:- Incase you don't have separate CAS boxes, consider any other File Share server.

So each DAG-x will host 1 active copy, with 3 passive copies for each database. (Let's say you want 4 DBs in total to make it simple 1 Volume scenario, but you can have more ofcourse)

Hence Total DBs:

DAG1: (1+3)*4=16 DBs (4Active+12Passive)

DAG2: (1+3)*4=16 DBs (4Active+12Passive)

As you are going for 2 DC setup, in normal operations

DC-A will have 4 active copies of DAG1

DC-B will have 4 active copies of DAG2

or Each DC-x will have 2 active copies from each DAGx - a total of again 4 active copies.

As you said you need 4DBs per volume that would mean you need atleast 1 volumes dedicated for DBs per server. [(2Act+2pas) or (4 pass) or (1Act+2pass)]

Few important consideration factors missing are the no. of users. We have hence considered it to be something which 4 DBs can hold 100*4=400 users maybe.

We are also considering you have 4TB large volumes.

One thing we can't do on the Calc is tell that we want a lagged copy of DAG2 on DC-A, by setting it considers DC-B as secondary and hence puts the lagged copy there, we might change the design as per our requirements. Also it keeps atleast 2 non-lagged DB copies on the Primary side.

We are considering both sites are primary to some set of users and other site is secondary for them. That's being the reason for positioning the witness earlier. But don’t see an option in Calc with Active/Active (Single DAG) Model.

Below is what we get.

 Input Sheet:

Exchange   Environment Configuration

Value

Global Catalog Server Architecture

64-bit

Server   Multi-Role Configuration (MBX+CAS)

No

Server Role Virtualization

No

High   Availability Deployment

Yes

Number of   Mailbox Servers Hosting Active Mailboxes / DAG (Primary Datacenter)

2

Number of   Database Availability Groups

2

 


Mailbox Database Copy Configuration

Value

Total Number of HA Database Copy Instances   (Includes Active Copy) within DAG

3

Total   Number of Lagged Database Copy Instances within DAG

1

Number of HA Database Copy Instances   Deployed in Secondary Datacenter

1

Number of   Lagged Database Copy Instances in Secondary Datacenter

1

 

Site Resilience   Configuration

Value

Site Resilient Deployment

Yes

Site Resilience User   Distribution Model

Active/Active   (Single DAG)

Site Resilience Recovery Point Objective (Hours)

24

Activation Block Secondary   Datacenter Mailbox Servers

No

 
Result Sheets:

Volume Design

 

Volume Design Architecture

Multiple DBs / Volume

 

 

 

 

 

Volume Configuration

Suggested Number of Databases / Volume

4

Number of Databases / Volume

4

Recommended Number of Database+Log Volumes / Server

1

Recommended Number of Transaction Log Volumes / Server

0

Number of Spare Volumes / Server (used by AutoReseed)

2

Number of Restore Volumes / Server

1

Total Recommended Exchange Volumes / Server

4

You can refer back to the illustration above, which represents 2 volumes per server which can be more as required.


Now let’s try something else as well.

Increased the users to 100000, this increased the mailboxes per DB to 500/DB
and Total DBs to 200 (100/DAG) 

Hence =500users*200DBs= 1lakh mailboxes

Below remains same:
Suggested Number of Databases / Volume 4
Number of Databases / Volume   4

Criteria used for the 'suggested no. of Database' is as below:
This is the outcome of the following three inputs:
 - Number of copies in the DAG - 4 in our case
 - Maximum number of databases that will fit on the selected disk configuration - we get warning here as 4TB disks we considered are not enough
 - Maximum supported databases per volume - Aaa! We will find this out later.

Keep an eye for warnings, as the one we have below (after increasing the users to 1 lakh, but not the disk or servers)

WARNING[YELLOW]: One or more disk capacities you have selected for this design is insufficient for deploying a JBOD solution.

DB and Log Volume Design / Server:

Database Copy: DB1-DB4
DB+Log Volume Size Required: 28786 GB

After all this the 'Possible Storage Architecture remains JBOD' for total of 8servers with 2 DAGs across 2 data centres. Ofcourse you need to add more servers or larger volume for this to work get the warning out.

** **

======================================================================

Let’s see what happen if we make a small change in the configuration:

In our previous example we had 2 Servers X 2 Sites X 2 No. of DAGs = 8 servers.

Site Resilience User Distribution Model: Active/Active (Single DAG)

 

Now to change this same configuration to Active/Active (Multiple DAGs) model

We will notice that the Exchange Environment Configuration Section in the INPUT sheet

No. of Database Availability Groups has changed to something else:

Database Availability Group Multiplier:

Enter the number of database availability groups you will deploy in your environment.

If you are deploying an Active/Active (Multiple DAGs) site resilient architecture then by default you have a minimum of 2 DAGs being deployed.  If your design requires additional DAGs utilize this field by entering in the multiple you require.

For example if you are planning to have 2 DAGs active in Datacenter 1 and 2 DAGs active in Datacenter 2 (with passives in the opposing datacenter), you would enter 2 in this field.

Basically to match our previous example we have to make changes:

2 Servers X 2 Sites X 1 DAG Multiplier = 8 servers.

NOTE: - Multi model automatically multiples it by 2 to match the configuration.

Increase the user count to 1600 users or keep it 400, doesn’t affect much in this scenario.

 

Site Resilience Configuration

Value

Site Resilient Deployment

Yes

Site Resilience User Distribution Model

Active/Active (Multiple DAGs)

Site Resilience Recovery Point Objective (Hours)

24

Activation Block Secondary Datacenter Mailbox Servers

No

 

Exchange Environment Configuration

Value

Global Catalog Server Architecture

64-bit

Server Multi-Role Configuration (MBX+CAS)

Yes

Server Role Virtualization

No

High Availability Deployment

Yes

Number of Mailbox Servers Hosting Active Mailboxes / DAG (Primary Datacenter)

2

Database Availability Group Multiplier

1

 

Mailbox Database Copy Configuration

Value

Total Number of HA Database Copy Instances (Includes Active Copy) within DAG

3

Total Number of Lagged Database Copy Instances within DAG

1

Number of HA Database Copy Instances Deployed in Secondary Datacenter

1

Number of Lagged Database Copy Instances in Secondary Datacenter

1

 

Even when we tried best to keep the configuration match the Active/Active (Single DAG) model, the “Volume design” changes from 4DB/Vol to 2DBs/Vol. Irrespective of the fact that we actually have the exact same hardware, server and user count.

Volume Requirements – (Sheet)

Volume Design

 



Volume Design Architecture

Multiple DBs / Volume



 

 

 

 

Volume Configuration

Suggested Number of Databases / Volume

2

Number of Databases / Volume

2

Recommended Number of Database+Log Volumes / Server

6

Recommended Number of Transaction Log Volumes / Server

0

Number of Spare Volumes / Server (used by AutoReseed)

2

Number of Restore Volumes / Server

1

Total Recommended Exchange Volumes / Server

9

 

There is a catch which I found while backtracking the formulas and comments for this value. Multiple DAG user distribution model is nothing but, Active/Passive Model but with multiple Active sites using multiple DAGs.

As per individual DAG perspective this is no different than an Active/Passive model. This can be observed in “Distribution” Sheet which represents a single DAG view and failover scenario.

Once we have established that it’s a A/P model, looking at the comments for the below field, we can see that #DB/Volume = #DB copies/site

INPUT (Sheet)-Storage Options- Number of Databases / Volume Matches Total Database Copy Count

By default, the number of copies that will be deployed on a volume will match the total number of copies available per database (per site in A/P scenarios).  For example, if you design an A/A solution that has two copies in the primary datacenter and two copies in the secondary, then when deploying multiple databases per volume, you will have four copies per volume.

If you want to deploy less copies per volume, select No. In this scenario, the calculator will use half the total number of copies/disk.

Storage Options

Value

Consider Storage Designs Utilizing JBOD (if applicable)

Yes

Consider Multiple Databases / Volume Deployment

Yes

Number of Databases / Volume Matches Total Database Copy Count

Yes

Automatically Calculate Number of Exchange Database Volumes Required

Yes

 

This explains why we have the 2DB/Volume. Let’s look at the configuration once more:

2 Servers X 2 Sites X 1 DAG Multiplier = 8 servers.

Per site: 2 Servers X 1 Sites X 2 = 4 servers (NOTE this is for 2DAGs)

Per site per DAG: 2 servers

Hence for individual DBs; we have only 2 servers = only 2 database copies available per site per DAG. This resulted in 2DB/Volume.

Illustration below represents Active/Active (Multi DAG) Model:

Let’s fix this:

We have increased the no. of server per site to 4 and other options are highlighted.

4 Servers X 2 Sites X 1 DAG Multiplier = 16 servers. (8 servers per DAG)

 

Exchange Environment Configuration

Value

Global Catalog Server Architecture

64-bit

Server Multi-Role Configuration (MBX+CAS)

Yes

Server Role Virtualization

No

High Availability Deployment

Yes

Number of Mailbox Servers Hosting Active Mailboxes / DAG (Primary Datacenter)

4

Database Availability Group Multiplier

1

 


Mailbox Database Copy Configuration

Value

Total Number of HA Database Copy Instances (Includes Active Copy) within DAG

7

Total Number of Lagged Database Copy Instances within DAG

1

Number of HA Database Copy Instances Deployed in Secondary Datacenter

3

Number of Lagged Database Copy Instances in Secondary Datacenter

1

 

Volume Design

 



Volume Design Architecture

Multiple DBs / Volume



 

 

 

 

Volume Configuration

Suggested Number of Databases / Volume

4

Number of Databases / Volume

4

Recommended Number of Database+Log Volumes / Server

6

Recommended Number of Transaction Log Volumes / Server

0

Number of Spare Volumes / Server (used by AutoReseed)

2

Number of Restore Volumes / Server

1

Total Recommended Exchange Volumes / Server

9

 

As you can see that the Number of Databases / Volume now shows as 4 DBs.

Few insights from the formulas in “Role Requirements” sheet’s  C81,C82 cell:

Calculated Maximum Databases per Volume

8

Recommended Databases per Volume

4

 

Things considered for individual DAGs

Single DAG model: MIN ((“Max Disk size”/”max. DB size calculated”) , (“No. DB copies in Primary site” + “No. DB copies in 2nd Site”))

Active Passive or Multi DAGs model:  MAX(“No. DB copies in Primary site” ,  “No. DB copies in 2nd Site”)

Conclusion:

We have always been able to store multiple databases on a RAID array, but storing multiple databases on a JBOD spindle was previously not supported. The key is that the number of copies of each database that you have should be equal to the number of database copies per disk. However it’s not mentioned in TechNet that this is limited to per site or not.

Basically the JBOD Multiple Databases per Volume is supported based on the below facts:

  1. Disks hosting passive database copies and lagged copies are underutilized in terms of IOPS.
  2. The goal is to drive the distribution of users across the number of volumes that exist during normal operations.
  3. Storage disk size is increasing to 8TB, but recommended DB size is not beyond 2TB (as IOPS are still the same). This would lead to lots of un-utilized space wasted per volume.

Keeping all this in mind, under normal operations we can have 1 Active DB copy + y Passive copies + z Lagged copies.

In our initial scenario, when we are in Active/Active (Multi DAG) Model. All the active DBs need to be in the primary site, but we have only 2 servers per site to distribute them. Every alternate DB will be Active on each server.

Hence if we use 4DB per Volume, it would lead to 2 Active DBs per Volume, which is not a desirable condition under normal operations. Solution is 2DB per Volume and have more no. of volumes.

Illustration below shows undesired configuration of Active/Active (Multiple DAG) with multiple active DBs per volume

This being the reason E2013Calc is suggesting 2DBs per Volume with 2 Servers on one side.

 

References:

Changes to high availability and site resilience over previous versions \ Multiple databases per volume:

https://technet.microsoft.com/en-us/library/dn789066%28v=exchg.150%29.aspx

Exchange calculator 2013 / Using multiple databases on a single volume:

https://social.technet.microsoft.com/Forums/en-US/083a80fd-2d5b-4182-8670-7b533589fee9/exchange-calculator-2013-using-multiple-databases-on-a-single-volume?forum=exchangesvrgeneral

Storage, High Availability and Site Resilience in Exchange Server 2013, Part 1:

http://blogs.technet.com/b/scottschnoll/archive/2012/09/19/storage-high-availability-and-site-resilience-in-exchange-server-2013-part-1.aspx

Changes to high availability and site resilience over previous versions:

https://technet.microsoft.com/en-us/library/dn789066%28v=exchg.150%29.aspx?f=255&MSPPError=-2147217396