Linux HA集群部署(基于Heartbeat与pacemaker)
服务器集群一般来说有三种:
HA集群能够取代磁盘阵列提供集群节点间热备;
LB集群能够提供动态负载和虚拟主机;
HP集群提供高性能计算集群。
HA作为高可用性集群,为不间断服务提供保障,这几天刚好有项目使用Linux集群,刚好把配置过程记录一下。以下过程是在archlinux上进行操作。
(1) 安装Cluster Glue(依赖:libtool、glib2、net-snmp、Python、libxml2)
./autogen.sh
./configure
make
make install (root 权限)
(2) 安装resource agents
./autogen.sh
./configure
make
make install
(3) 安装heartbeat
./bootstrap
./ConfigureMe configure(不要直接使用./configure,不知什么原因这样会找不到头文件)
make
make install(root 权限)
(4) 配置heartbeat
添加组haclient和用户hacluster注意两台机器组和用户的id要相同
修改/etc/hosts将两个机器名添加进文件:
192.168.0.1 node1
192.168.3.109 node1
192.168.0.2 node2
192.168.3.133 node2
修改/etc/ha.d/ha.cf将node节点添加到文件中,并根据情况修改具体配置节点:
keepalive 2
deadtime 20
inittime 120
udpport 694
bcast eth0(你的广播网卡,一般来说是eth0)
auto_failback on
node node1
node node2
修改/etc/ha.d/authkeys修改加密方式:
auth 1
1 crc
修改/etc/ha.d/authkeys属性必须修改为600
修改/etc/ha.d/haresources添加ip自动漂移处理:
node1 Ipaddr::192.168.3.169/24/eth0 mysql httpd
(5) 安装pacemaker
./autogen.sh
./configure —with-pacemaker —without-ais —without-corosync
make
make install
注意:apiauth 用来设置用户组
respawn 用来循环指令
pacemaker 在python3不能正常运行,需要修改print命令为函数,except的,为as(安装3.0代码标准修改)