Server 2012 can be configured to have better fault tolerance for business critical applications at minimal cost. There are a couple of fault tolerance options that can be used depending on the nature of applications and cost. Lets quickly have an overview of those strategies.
- Network Load Balancing – NLB basically distributes TCP IP traffic between various servers (running the same application) which are combined into a single virtual cluster. This provides performance, scale-ability and reliability to the application. There are a lot of configurable parameters in an NLB setup which includes real-time additions and deletions of servers in the cluster, bandwidth allocation or load distribution, port blocking rules etc.
Network Load Balancing can be used for applications where state of the connection is not maintained. The best examples are Webservers, FTP, Firewalls, Proxy servers etc.
Advantages
– No additional licensing cost, comes as a feature with server license and is installed as a windows network driver component
– Clients can still access their application with a single IP (usually a cluster IP/VIP).
– Requires no modification at the application level
Challenges
– Need to be careful with monitoring the health of the apps on servers. A deteriorated node in an NLB would lead to certain requests not getting catered properly causing intermittent application issues which are really hard to troubleshoot. - Application Specific Clustering – Certain MS applications have built-in cluster capabilities which can be used to increase availability . Some examples are clustered file servers, Exchange servers, SQL servers or Print servers. The servers (nodes) in a cluster are connected to each other by physical cables as well as software. All the nodes in the system are continuously monitored and any disruption immediately moves the application resources to another server in the cluster.
Advantages
– MS Clusters have a better reach in terms of understanding application health and connectivity compared to NLB as the monitoring is done at app resource level.
– Managing a failover cluster is simpler as a lot of the management task can be scripted.
– With new features like Cluster Aware Updating (Patch Deployment Automation on all nodes) , File Share storage clusters, cluster node health detection, Host clustering etc customers are now able to create hybrid and more flexible architectures for failover clusters.
Challenges
– Hardware and software requirements are needed to be met in order to install a cluster. One of them is nodes should be in Active Directory Environment.
– Feature can only be used with Standard and Datacenter editions of Server 2012. You are out of luck if you have foundations or Essentials edition.
– You need additional hardware in order to correctly set up an active cluster.
– Network infrastructure supporting the cluster should not have single point of failures.