This blog is mainly about clustering and load balancing the basic theory and categories, the content looks more boring, tasteless, but to become a good Linux operational engineers, these basic theories must be understood thoroughly, will be in the later system tuning and cluster architecture in handy, So want to become a Linux operation and maintenance engineer we must endure loneliness ~ ~ ~ Hey, commiseration US ah! Study hard! Today is cruel, tomorrow is more cruel, the day after tomorrow will be very good, but do not die in the next night!
I. Introduction to the Cluster
Cluster is not a new concept, in fact, as early as the 70 computer manufacturers and research institutions began to the cluster system research and development. Due to the main
For scientific engineering calculations, so these systems are not well known. It was not until the advent of the Linux cluster that the concept of clustering was widely disseminated. Cluster System Master
To be divided into highly available (high availability) clusters, referred to as HA clusters, and High-performance computing (high perfermance Computing) clusters,
Referred to as HPC cluster.
The cluster of computer clusters is a kind of computer system, which is connected by a loosely integrated set of computer software or hardware to work closely together to complete the meter
Count the work. In a sense, they can be seen as a computer. A single computer in a clustered system is often called a node, usually connected over a local area network.
But there are other possible ways to connect. Cluster computers are often used to improve the computational speed and/or reliability of a single computer. In general, a clustered computer is more than a single
Computers, such as workstations or supercomputing machines, have a much higher performance cost.
II. Cluster classification
Clusters are divided into isomorphism and heterogeneity, and the difference is that the architecture that makes up the cluster system is the same. Cluster computers can be grouped into the following categories by function and structure:
Load balanced cluster lb:load balancing clusters
High Availability cluster ha:high-availability (HA) clusters
High Performance Computing Cluster hp:high-performance (HPC) clusters
Grid Compute Grid Computing
Iii. detailed definitions of various clusters
⑴, load Balanced cluster-lb
When a load-balanced cluster is run, the workload is distributed to a set of servers on the back end, typically through one or more front-end load balancers, to achieve an entire
High performance and high availability of a system. Such a cluster of computers is sometimes referred to as a server farm (Farm). General high availability clusters and loads are
Scale clusters use similar techniques, or have both high availability and load balancing features. Linux Virtual Server (LVS) projects on Linux operating systems
Provides the most common load balancing software.
When the LB provides load balancing, if DNS load balancing is provided, because the DNS cache service exists
Mechanism, the effect of load balance will be greatly reduced. So there is a scheduling method, commonly used in two scheduling
Method:
Rr:round Robin argument
Wrr:weight Round Robin weighting argument
Load balancing: Clusters focused on increasing the concurrency capabilities of services
Metrics: Concurrent processing capabilities
⑵, high availability cluster-ha
In general, when a node in a cluster fails, the tasks on it are automatically transferred to other normal nodes. You can also refer to a section in a cluster
Point for offline maintenance and online, this process does not affect the operation of the entire cluster.
High-availability Clustering: A cluster of highly available capabilities to ensure that services remain online
Metrics: availability = online Time/(online time + fault handling time)