What is High Availability (HA), Load Balancing & FailOver?


  ◊ High Availability

In computing, the term availability is used to describe the period when a service is available, as well as the time required by a system to respond to a request made by a user. High availability is a quality of a system or component that assures a high level of operational performance for a given period.

High availability (HA) is a term that describes a website or application with maximum potential uptime and accessibility for the content stored on it. While a more basic system will be adequate to serve content to a low or medium number of users, it may include a single point of failure. This means that if one server goes down, whether due to traffic overload or any number of other issues, the entire site or application could become unavailable.

High availability is a feature which provides redundancy and fault tolerance. It is several connected devices processing and providing a service. Its goal is to ensure this service is always available even in the event of a failure. For example, a company such as Amazon.com who sell products through their website would always require their website to be available to the public. To ensure this would happen they will have several servers in a cluster, so that if one server failed the others will continue processing and take on the processing load of the failed server. They would also provide several backup internet connections from different ISP’s so that if one ISP went down, the backup ISP’s would ensure their website is still accessible on the internet. They would have a separate power line into their data centre, so that if there was a power failure, they would have a backup power source keeping their critical resources up and running while they resolved the original problem. They would have a backup data centre at another location (disaster recovery site), so that if there was a disaster to the primary site such as an earthquake, the backup site can be utilised. All these preventative measures would assure their online website was always available and so ensuring there was a degree of high availability.

In firewalls and other similar devices, the high availability feature is a mechanism to keep the state of devices synchronized with each other as well as being able to detect a failure so that if a failure did occur active devices would know about this and be able to take on the processing load from the failed device.

Availability is often expressed as a percentage indicating how much uptime is expected from a system or component in each period, where a value of 100% would indicate that the system never fails. For instance, a system that guarantees 99% of availability in a period of one year can have up to 3.65 days of downtime (1%).

These values are calculated based on several factors, including both scheduled and unscheduled maintenance periods, as well as the time to recover from a possible system failure.

  ◊ Load Balancing

The load balancing component of a high availability system is one of its most important components, acting as the first barrier to handle  traffic from users to the application servers. Without a load balancer, your site would be hosted on three application servers that have no way of assigning priority among themselves.

  ◊ FailOver & Redundancy

FailOver is the process by which one node takes over the job of another if one becomes disabled. This comes as a result of monitoring for failures by the system.

Automatic failover is the process of moving active services from the primary device to the backup device when the primary device fails. Usually the backup device continues these services until the primary device has come back up and running. When a device fails another device takes over this process which is referred to as a failover. The services failover to the backup device which will continue from where the primary device left off.

FailOver feature allows for hardware firewalls to have some redundancy. You would have two or more hardware firewalls configured and if the primary firewall fails, the backup firewalls will take over. FailOver is usually implemented on the high-end hardware firewalls for networks that require redundancy.

Using the failover functionality means you can have one link processing traffic and have a second link which would only become active if the primary link fails. You can also have this set up to allow a company to connect their firewall to more than one internet connection. If one connection goes down, all traffic would failover to the other internet connection. This would eliminate single point of failure and would re-assure availability and reliability.