Link to home
Start Free TrialLog in
Avatar of HowardDix85
HowardDix85

asked on

Evicting Live Node from DAG

We have 4 servers in a single DAG over 2 sites. There are DB partnerships in both directions

To ensure we stick to best practice we need to create a new DAG and migrate 2 of the servers to the new Dag. This is because the DAg primary server keeps switching between the 2 remote sites at will and we have the potential for split brain syndrome.  

Can we evict the active server from the DAG while the Databases are still ownded by that MBXserver? We were going to use a swing server to complete the migration by using DB portability to mount the DB's on the standalone server then re-mount the DB on the existing server once the new DAG was online and the existing server a member of it.

However there is a concern with the storage It is also against best practice to do so. the official thread is to build a new mailbox server and migrate all the mailboxes to new databases.

All the referencing I have shows that the database cant be evicted while holding DB copies as part of a DAG.

To be clear,

1) We would remove all the passive copies leaving only the live copies on the server we want to evict.
2) Can we interactively update the DB master ? This seems to be the issue with evicting from the DAG as the DB master will remain as the DAG name, not the host server.
3) Is this method feasible, has anyone on EE done it this way before.
4) I would prefer to complete this using the BP method but its not 100% feasible.

I will try and deploy a test server
Avatar of Guy Lidbetter
Guy Lidbetter
Flag of United Kingdom of Great Britain and Northern Ireland image

HI Howard, have you not configured DAC (Datacentre Activation Coordination) mode?

This will prevent the feared split brain and give you control of where the databases can be failed over to.

You do this with the command
Set-DatabaseAvailabilityGroup -Identity <DAGName> -DatacenterActivationMode DagOnly

Open in new window


Have  a read of this.. its for 2013 but is exactly the same for 2010
https://technet.microsoft.com/en-us/library/dd979790%28v=exchg.150%29.aspx

I feel you are about to undertake a huge task for something you could remedy with some configuration changes.
Also...  quick extra thought... you could block activation on the remote site... you will still replicate data, however the database will never automatically mount. You will have to manually allow it in the case of failure.

By database
Suspend-MailboxDatabaseCopy –identity <DBName> –ActivationOnly

Open in new window

Resume normal operation
Resume-MailboxDatabaseCopy –identity <DBName>

Open in new window


By Server
Set-MailboxServer –identity EXCH1 –DatabaseCopyAutoActivationPolicy Blocked

Open in new window

Resume Normal operation
Set-MailboxServer –identity EXCH1 –DatabaseCopyAutoActivationPolicy Unrestricted

Open in new window

Avatar of Simon Butler (Sembee)
If you remove the copy of the database off that server, then remove the server from the DAG, then Exchange will move the ownership of the database to another server on its own.
The key bit is using the Exchange tools rather than the cluster tools to evict the server. You would only tend to use evict of the server is not behaving itself.

Simon.
Avatar of HowardDix85
HowardDix85

ASKER

Hi,

We have DB partnerships in both sites of the Dag so DAC is already configured. We cant have FSW on both sides of the DAG as this will create a split brain. Both Sites are Active / Active as below:
Site1
Svr1: Active DB for Site 1
Svr2: Passive Db for Site2
Site2
Svr3: Active DB for Site2
Svr4: Passive DB for Site1

We want to make

Dag1
Svr1
Svr4

Dag2
Svr3
Svr4

We already prevent activation of the DB's in a failover situation given un-reliable connectivity between the 2 sites.

We are going on MS advise to split both Dag's up and achieve primary / secondary site quorum Independent of both sites being online.
The design you have is one I have come across numerous times, and as you have found it simply doesn't work in the way people expect. I think I removed that design four or five times last year, including for one of the UK's biggest house builders.

What I would do is failover the databases to the servers where you want them to be. Then remove the passive copies completely, deleting the files etc.
You should then be able to remove the two servers you want to move to the second DAG without any problems, then recreate the DAG as you prefer.

Just wait long enough for the domain to fully replicate before making the next change.

Simon.
In your case, with the configuration you have I would agree with MS and split the DAG.

Simon's outline above is definitely the way to go.
Hi,

Im aware of 99% of the procedure. However normally I would build another mailbox server to migrate the DB's to and swing the dag from there. I guess the essense of my question is the following.

Can we evict a mailbox server from a DAG while it contains live databases ?

Sorry to be pedantic but i need a specific answer
Simple answer - No. You need to stop replication with suspend-mailboxdatabasecopy , remove-mailboxdatabasecopy,
then Remove-DatabaseAvailabilityGroupServer when all databases are gone.
SOLUTION
Avatar of Simon Butler (Sembee)
Simon Butler (Sembee)
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Hi Guy,

I only needed the last answer :) thank you. ill update shortly.
Hi All,

To maintain clarity on this.

To remove the node you must remove all additional copies of databases that are not on the server you want to remove and then complete a full re-seed of all databases.

Additionally you must ensure that all resources are showing as online within the Failover cluster and that the cluster IP address is reachable and responsive. You must also plan to run backups and truncate throughout the process if connectivity is poor as transaction logs must be maintained throughout the reseed on all seeding databases, you cant truncate them.  

Managed to split the DAG into 2 independent DAG's without using a swing server or too much hassle over the long weekend.  

Thanks guys.
Excellent, good to hear Howard,