The target is to deploy MySQL, Coreseek, Redis, MongoDB, NFS, Varnish, and other services for four new servers. The four servers are divided into two groups, using Linux-HA + Pacemaker for High availability (HA, High-Availablility ). The production server does not install gcc or other compilation tools for security reasons. Therefore, all software compilation tasks are completed on a dedicated compilation machine. After compilation is complete, deploy it to the production environment and use yum and rpm to solve the problem. Target
Deploy MySQL, Coreseek, Redis, MongoDB, NFS, Varnish, and other services for the four new servers. The four servers are divided into two groups, using Linux-HA + Pacemaker for High availability (HA, High-Availablility ).
The production server does not install gcc or other compilation tools for security reasons. Therefore, all software compilation tasks are completed on a dedicated compilation machine. After compilation is complete, deploy it to the production environment and use yum and rpm to solve the problem.
Hardware environment
Linux: HA 3.0
Linux-HA 3.0 consists of three parts: Heartbeat, Cluster Glue, and Resource Agents.
- Hearbeat itself is the basis of the entire cluster (cluster messaging layer), responsible for maintaining information of each node in the cluster and their previous communication;
- Cluster-glue is equivalent to an intermediate layer. It can associate heartbeat with crm (pacemaker), which consists of two parts: LRM and STONITH;
- Resource-agent is the ocf scripts of various resources. These scripts are called by LRM to start, stop, and monitor various resources.
Note |
UntilHeartbeatRelease 2.1.3,PacemakerAndHeartbeatIs part of the Linux-HA umbrella project. After version 3.0,PacemakerIt is separated as an independent project and is still fully supportedHeartbeat. |
Pacemaker
Pacemaker = CRM = Cluster Resource Manager,
Install using yum
Yum install cluster-glue resource-agents pacemaker
Installed:
Cluster-glue.x86_64. 0.5-2. el6 pacemaker. x86_64. 1.6-3. el6 resource-agents.x86_64-7. el6
Dependency Installed:
Cifs-utils.x86_64. 8.1-5. el6 cluster-glue-libs.x86_64. 0.5-2. el6 clusterlib. x86_64 3. 0.12.1-23. el6_2.1
Corosync. x86_64. 4.1-4. el6_2.2 corosynclib. x86_64. 4.1-4. el6_2.2 gnutls. x86_64. 8.5-4. el6_2.2
Keyutils. x86_64. 4-3.el6 libevent. x86_64. 4.13-1. el6 libgssglue. x86_64. 1-11.el6
Libibverbs. x86_64. 1.5-3. el6 libnl. x86_64. 1-14.el6 librdmacm. x86_64. 0.14.1-3. el6
Libtalloc. x86_64 2. 0.1-1.1.el6 libtasn1.x86 _ 64 2. 3-3.el6_2.1 libtirpc. x86_64. 2.1-5. el6
Lm_sensors-libs.x86_64. 1.1-10. el6 net-snmp-libs.x86_64. 5-37.el6_2.1 nfs-utils.x86_64. 2.3-15. el6_2.1
Nfs-utils-lib.x86_64. 1.5-4. el6 pacemaker-cli.x86_64. 1.6-3. el6 pacemaker-cluster-libs.x86_64. 1.6-3. el6
Pacemaker-libs.x86_64. 1.6-3. el6 perl-TimeDate.noarch. 16-11.1.el6 quota. x86_64. 17-16.el6
Rpcbind. x86_64. 2.0-8. el6 tcp_wrappers.x86_64. 6-57.el6