• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 252
  • Last Modified:

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
0
HowardDix85
Asked:
HowardDix85
  • 6
  • 4
  • 3
2 Solutions
 
Guy LidbetterCommented:
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.
0
 
Guy LidbetterCommented:
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

0
 
Simon Butler (Sembee)ConsultantCommented:
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.
0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

 
HowardDix85Author Commented:
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.
0
 
Simon Butler (Sembee)ConsultantCommented:
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.
0
 
Guy LidbetterCommented:
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.
0
 
HowardDix85Author Commented:
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
0
 
Guy LidbetterCommented:
Simple answer - No. You need to stop replication with suspend-mailboxdatabasecopy , remove-mailboxdatabasecopy,
then Remove-DatabaseAvailabilityGroupServer when all databases are gone.
0
 
Simon Butler (Sembee)ConsultantCommented:
You can remove a server from a DAG with live databases, as long as the server contains the only copy of the database.

Being picky myself - evict is a cluster phrase, which isn't used in this scenario - you usually only evict a server when it isn't functioning correctly, which is not the case here.

Simon.
0
 
Guy LidbetterCommented:
To remove a Mailbox server from a DAG, the Mailbox server must not host any "replicated" databases.

Once you have only the live database on one server, you can then remove the server with the live database and add to the new DAG.
0
 
HowardDix85Author Commented:
Hi Guy,

I only needed the last answer :) thank you. ill update shortly.
0
 
HowardDix85Author Commented:
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.
0
 
Guy LidbetterCommented:
Excellent, good to hear Howard,
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: Certified Penetration Testing

This CPTE Certified Penetration Testing Engineer course covers everything you need to know about becoming a Certified Penetration Testing Engineer. Career Path: Professional roles include Ethical Hackers, Security Consultants, System Administrators, and Chief Security Officers.

  • 6
  • 4
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now