Link to home
Start Free TrialLog in
Avatar of michalek19
michalek19Flag for United States of America

asked on

Review MS SQL cluster diagram

Hi

I need help to determine or review MS SQL diagram for new build.

What I want to accomplish is HA and HP MS SQL cluster build.

That would contain:
1. load balancer for WEB\Application server that would be hosted on VM, Win 2012r2
2. Side A 2 nodes cluster (active, passive) Physical servers - Win 2012r2
3. Side B 1 warm server for DR. Physical servers - Win 2012r2
4. SUN data storage.

I am wondering is this diagram has any logic.
What can be change to improve availability, performance, DR,   etc.

What hardware components do I need to accomplish this?

Thx, Michal
SQL-Cluster-diagram.png
Avatar of Máté Farkas
Máté Farkas
Flag of Hungary image

For the first look Side B is not a warm it is a cold spare server because your databases are not synchronized from Side A to Side B so in case of failover you have to copy/restore all databases from Side A.

1. HA
If you want to implement a real DR side you have to use a synchronization between Side A and Side B (SQL Server Mirroring or SQL Server Always On or BI-Directional Transactional Replication).
You don't need a FailOver Cluster on Side A (as currently) with shared storage because it increases the Availability but it has no DR role. It is expensive and it does not meet your requirements.


2. HP
Unfortunately there is no standard technology in case of MS SQL Server for scallability (to increase performance). So it is not so easy than in case of Oracle RAC. But if you use Database Mirroring / Always On / Transactional Replication then you can use Seconday Read-Only servers for Reporting, Statistic or backup purposes.

My recommendation: Remove failover cluster on Side A, build a (low bandwith) network between Side A and Side B and build an AlwaysOn cluster between Side A and Side B.
This will keep the current availability level, but give Disaster Recovery role and increase performance because Side B is read-only (for reporting or backup) and posibility for addidional read-only servers.
Why are you looking at putting SQL server on hardware instead of on VMs?
In order for site B to be warm, there needs to be disk replication (or SQL replication) that keeps that copy of the data up to date. If you can use mirroring or log shipping/replication, that would work, or you can use physical disk replication if your SAN supports it. Another option may be to use AlwaysOn - it would make failovers to this site a bit easier to handle, and you can still keep the primary site on an active/passive failover cluster and only move to the secondary site when you decide it's necessary.

We use physical servers for our SQL clusters and I don't like using VMs - in our environment, they haven't been stable or low-latency enough to handle the clustering requirements. This may be a factor of how they're set up or something isolated to our environments, but I don't quite trust VMs for failover clusters from what I've seen.
I've had similar issues with VMS for SQL Server, esp. with performance.  We were just never able to get good performance out of them.
Avatar of michalek19

ASKER

Hi All

I agree with Ray and Scott about SQL clustering \failover.
I don't want to use VM for SQL server. I hear a lot of negative comments about performance (stability, low-latency, etc)


Thank you, M
Is there any disadvantage  (pros and cons )   VM  vs  Physical server for MS SQL
Just off the top of my head, here are some advantages of each choice:

Pro for physical:
 - More straightforward troubleshooting (you know you're not sharing hardware)
 - No hypervisor latency (should be small if properly configured, but still exists)
 - Not affected by "noisy neighbors" as it has the hardware dedicated
 - Licensing is more straightforward (VM licensing, even for SQL Server, can cause some confusion and in some cases, requires you have SA to use them the way you want - physical doesn't have those issues)

Pro for VM:
 - More HA options (live migration, for example)
 - Hardware failure not an issue (just boot the VM somewhere else)
 - More easily scaled (if you need to add memory or CPU cores, it can be done with a reboot)

I'd always prefer physical based on what I've seen, but that's admittedly limited - I have peers that run a fully virtualized data center, including SQL Server, and they have no regrets. If you've got a good relationship with the sysadmin/VM admin and you're comfortable with the technology, the extra layer of abstraction may not be an issue - the way I've seen it, it's extra things to troubleshoot and more places to check and see if there's a problem (which is one reason I still prefer physical).
ASKER CERTIFIED SOLUTION
Avatar of kevinhsieh
kevinhsieh
Flag of United States of America 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
VM definitely has the advantage of easy migration to a new environment, and I agree that it can be cheaper as well - my point is just that it requires Software Assurance and if that's not something you have for your licenses (or don't want to pay for), the license is written in such a way that it's difficult to virtualize. Modern servers do easily have 8 cores/socket, so it can get spendy to go physical as well, and moving to new hardware can add a wrinkle as well if you're installed on a physical server.