How to Attain SQL Server High Availability at Minimal Cost

Redundant Infrastructure

Importance: Important/Critical
Difficulty: Hard

Used to:

  • Ensure that your network and physical infrastructure don’t have a single point of failure, including:

    • Redundant routers/switches

    • Redundant DNS/WINS

    • Redundant active directory

    • Redundant WAN/Internet connections

    • Redundant facility (if affordable)

The most highly available SQL Server is of little use if it can’t talk to the users who need to access it. So to ensure that SQL Server is available, all the network and physical infrastructure must also have redundancy built in. If it doesn’t, there is little use in spending much on SQL Server high availability.  

Physical Security

Importance: Important
Difficulty: Easy

Used to:

  • Increase outside force HA

  • Increase human error HA

People, purposefully or accidentally, can quickly and unexpectedly bring down SQL Server. Whether its a hacker penetrating your firewall, or a janitor unplugging your server to plug in his vacuum cleaner, there are a lot of ways that simple physical security precautions can help keep SQL Server up and running. In other words, keep unauthorized people physically (and virtually) away from your SQL Servers.

Use Server-Class Hardware

Importance: Critical
Difficulty: Easy

Used to:

  • Increase hardware availability through the use of:

    • Error-Correcting memory

    • Multiple CPUs

    • Multiple NICs

    • RAID, multiple I/O cards

    • Redundant power supplies, fans, etc.

    • Hot swappable capability

Purchasing the physical hardware to run your highly available SQL Server is not a place to skimp on a few dollars. You need server-class hardware that has redundant components so that a simple hardware failure won’t bring down your server. Sure, you can’t protect from every possible hardware issue, but you can protect yourself from the most common ones. In addition, by having hot swappable capability, you reduce the amount of potential down time for times when you need to change out failed parts.

Standardize on Your Server Hardware

Importance: Important
Difficulty: Easy

Used to:

  • Increase hardware HA

  • Increase human error HA

Ideally, you want all of your SQL Servers to run the same hardware configuration, including driver levels. By taking this approach, you reduce how much to need to remember, helping to reduce human error-related problems. In addition, it is less expensive to maintain on hand spare parts if all the servers are identical. Maintaining identical hardware is not always possible, but try your best to do so.

Use Hardware Monitoring Software

Importance: Important
Difficulty: Easy

Used to:

  • Increase hardware HA

Virtually all server-class hardware comes with (or available as an option) software that allows you to monitor your hardware’s function, including the ability to identify potential hardware issues before they actually occur. This simple, preventative step goes a long way to helping ensure high availability.

Use Battery Backup/Power Conditioning

Importance: Critical
Difficulty: Easy/Intermediate

Used to:

  • Increase power HA

Power is actually a part of your infrastructure, but I mention it separately because if its key importance. If you have a data center, then the entire data center may be on backup power. But if you don’t have a formal data center, then if you want to keep your SQL Server’s up, not only do they need to be on backup power, but all of the network infrastructure also. And keep in mind that battery backup is for only very short power interruptions, and for power conditioning.

Continues…

Leave a comment

Your email address will not be published.