Abstract

Server clustering is a cost-effective solution to increase the service capacity and system reliability. It also gives greater scalability for handling the growing and huge amount of service demands. Nowadays, cloud platforms take advantage of virtualization technology and make their actual hosts virtualized. In this study, we explore the issues of implementing server clusters based on virtual machines (VM), including architectures and load distribution algorithms. We utilize Linux Virtual Server (LVS) to design several kinds of VM-based server clusters with different architectures, i.e. Single VM Cluster (SVMC), Hierarchical Multiple VM Clusters (HVMC), and Distributed Multiple VM Clusters (MVMC). In order to provide better load balance among real servers in the cluster, load distribution algorithms originally developed for the server clusters should be redesigned or adapted to VM-based clusters. Therefore, we further propose two kinds of load distribution algorithms named Virtual Machine Least Connections (VMLC) and Virtual Machine Weighted Least Connections (VMWLC). These algorithms not only consider the server loading, but also take into account the difference between physical machines (PMs) and VMs to balance the server loads. Practical implementation on Linux and experimental results show that VM clusters with the single architecture (i.e. SVMC) or the hierarchical architecture (i.e. HVMC) obtain significantly higher performance than the distributed VM cluster (i.e. MVMC) that consists of multiple VM clusters with a DNS to spread the load to VM clusters. The proposed load distribution algorithms outperform the Weighted Least Connections (WLC) which does not distinguish PMs from VMs.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call