What is Cluster?
Clustering : Running of more than one server in such a way that they seem as one server to end user.
- Clustering refers to using multiple resources, such as servers, as though they were a single entity.
- The two main types of clustering are Load balancing (LB) and High-availability (HA).
- In a LB cluster, all resources run at the same time, and a management layer spreads the work load across them.
- In HA clustering, one resource runs, and another is available to step in if the first one becomes unavailable.
- The purpose of HA clustering is to reduce the consequences of hardware, software, or network outages.
Load Balance : My application is heavy i need to set-up more than one server ,so that they can divide the load.
High Availability : My app is critical, it should be always up.
Difference between Load Balance and High Availability :
High Availability can be achieved in such a case, one server comes into picture ,when other server goes down. This type of relationship can be called Fail-over. It is quite common in databases.
Load Balance can be achieved in such a case ,both server run parallely, sharing each other load,but it may be possible that both may be down at same time.