Solved

Virtualized SharePoint Server 2013 DR options ?

Posted on 2014-09-15
3
276 Views
Last Modified: 2014-10-13
Hi Folks,

I got two tier deployment of the single server SharePoint 2013 and separate SQL Server 2012 Standard as follows:

Production Environment:

WFE and Application Server (Single VM on VMware ESXi)
SharePoint Server 2013 Standard
WIndows Server 2012 R2

Database Server
SQL Server 2012 SP1 Standard Edition (Single VM on Hyper-V)
WIndows Server 2012 R2

DR Environment:

WFE and Application Server (Single VM on VMware ESXi)
* not sure what to do here....

Database Server
SQL Server 2012 SP1 Standard Edition (Single VM on Hyper-V)
WIndows Server 2012 R2

Can anyone please suggest me what is the best option that I can or should be deploying in DR Data Center?
so that when the primary DC is failed user can still access the SharePoint server.

Downtime is acceptable during DNS CNAME replication or alias change.
0
Comment
  • 2
3 Comments
 
LVL 28

Assisted Solution

by:Ryan McCauley
Ryan McCauley earned 500 total points
Comment Utility
The easiest way to transparently handle a failover into your DR is to set SQL Server up to use AlwaysOn Availability Groups:

http://msdn.microsoft.com/en-us/library/ff877884(v=sql.110).aspx

Unfortunately, it's only supported by SQL Server Enterprise Edition, so you'd have to pony up for a more expensive license than what you already have to do that. Effectively, this would give you a single point of client contact for your Sharepoint databases, and then SQL Server will handle the replication to the DR site behind the scenes. If there's a failure of your primary database server, it will transparently redirect database requests to the standby instance. The real upside is that SQL Server will work to keep the old primary in sync once it comes back online, and then you can fail back to your old primary whenever you're ready.

Given your standard edition licensing, though, you have a few other options:

 - Set up a new SQL Server Failover Cluster Instance, using either your two existing VMs or two new ones. This will allow you to present a single point of contact to clients - as with Availability Groups - and then fail over to the DR node transparently if you have an issue with your primary node. The complication, though, is that you'll need the database to be located on shared storage, so there's only a single copy of it. AG has the advantage here as each node has its own copy of the database, but if you have a way that you can share storage between the two sites (or if you're using a SAN that supports storage replication), you might be okay.
 - Use SQL Server database mirroring. Like Availability Groups in that each server has its own copy of the data, but standard edition supports only the "full-safety" version, meaning that transactions have to commit both at the primary and at the mirror before they're considered committed to the client. This may introduce an unacceptable amount of lag for your Sharepoint site, but it's worth testing out.
 - Use SQL Server replication of some kind (log shipping or transactional replication)

As for the Sharepoint WFE, it depends on how you set up the database - if you've got a single point of contact for the database (if you use clustering, for example), then you can just add a second WFE that points to that database connection, and then use a DNS alias to fail over clients to it if necessary. If you're replicating the data to your DR site, you can set up a second WFE that points to just that database and leave it turned off so it doesn't modify the database, bringing it online only if it's needed.

I'm not sure if I've clarified or confused things, but please let me know what questions you have.
0
 
LVL 7

Author Comment

by:Senior IT System Engineer
Comment Utility
Hi Ryan,

Thanks for the reply, as for the SQL Server database back end do I need to use SQL database alias ?

in my current situation, I only have 4x SQL Server 2012 Standard Edition in each sites (PROD and DR) so in total of 8x stand alone nodes without Clustering and no always on setup.
0
 
LVL 28

Accepted Solution

by:
Ryan McCauley earned 500 total points
Comment Utility
You can use a SQL Alias to change the destination server - just create one called something like "MySharepointSQLServer" and then set it to whichever MSSQL instance you want to use as your primary. If you need to fail over to the secondary instance, just update the client alias on your Sharepoint front end servers and they'll immediately start directing their connections to the new location. Imagine it like a DNS redirect, but with a bit more flexibility to target a specific instance instead of just changing the network name.

Even with a standard edition, you do have access to two-node clustering, as well as a number of replication options to keep your remote site in sync:

http://msdn.microsoft.com/en-us/library/cc645993.aspx#Replication

Good luck!
0

Featured Post

Control application downtime with dependency maps

Visualize the interdependencies between application components better with Applications Manager's automated application discovery and dependency mapping feature. Resolve performance issues faster by quickly isolating problematic components.

Join & Write a Comment

Suggested Solutions

Last article we focus in how to VMware: How to create and use VMs TAGs – Part 1 so before follow this article and perform the next tasks, you should read the first article how to create the TAG before using them in Veeam Backup Jobs.
In this article, I will show you HOW TO: Create your first Windows Virtual Machine on a VMware vSphere Hypervisor 6.5 (ESXi 6.5) Host Server, the Windows OS we will install is Windows Server 2016.
Using examples as well as descriptions, and references to Books Online, show the documentation available for date manipulation functions and by using a select few of these functions, show how date based data can be manipulated with these functions.
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.

763 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now