1、 环境准备 使用yum安装heartbeat yum install heartbeat*
2、 Copy安装后的配置文件到
cp -arp ha.cf /etc/ha.d/ ha.cf是主配置文档
cp -arp authkeys /etc/ha.d/ authkeys是心跳之家通讯加密用的
[ cp -arp haresources /etc/ha.d/ haresources是高可用的资源
3、 确认所属组及用户id id确认
a) 修改主机名
分别登录202.102.188.116、115 进入etc目录修改hosts文件
分别命名为qiluwb1、qiluwb2
虚拟IP:202.102.188.11
b) 网络环境配置
Qiluwb1(116):
Eth0: 202.102.188.116
Eth1: 10.0.1.76
Qiluwb2(115):
Eth0: 202.102.188.115
Eth1: 10.0.1.75
c) Hosts文件配置(倒序?)
Qiluwb1:
127.0.0.1 localhost.localdomain localhost
202.102.188.116 qiluwb1 HA01
10.0.1.76 HA01
10.0.1.75 HA02
202.102.188.115 qiluwb2
Qiluwb2:
127.0.0.1 localhost.localdomain localhost
202.102.188.115 qiluwb2 HA02
10.0.1.76 HA01
10.0.1.75 HA02
202.102.188.116 qiluwb1
查看域名解析顺序
d) #cat /etc/host.conf
e) 修改/etc/sysconfig/network的hostname为 qiluwb1、qiluwb2
f) 在/etc/sysconfig/network-scripts目录中确认eth0、eth1网卡启动时的协议使用BOOTPROTO=static
g) 分别在qiluwb1、qiluwb2上测试连通性
ping qiluwb1
ping qiluwb2
ping ha01
ping ha01
二、Hearbeat配置
Ø 配置心跳的加密方式:authkeys
#vi /etc/hc.d/authkeys
auth 1
1 crc
#chmod 600 authkeys
Ø 配置心跳的监控:haresources
Qiluwb1 202.102.188.11 mysql httpd ##这里配置共享的资源包括浮动ip
# qiluwb1 192.168.0.200 Filesystem::/dev/sdb::/ha::ext3 ipvsadm httpd
# node1 IPaddr::172.16.13.90 apache
Ø 配置心跳的配置文件:ha.cf
#vi /etc/ha.d/ha.cf
logfile /var/log/ha_log/ha-log.log ## ha的日志文件记录位置。如没有该目录,则需要手动添加
logfacility local0
#bcast eth1 ##使用eht1做心跳监测,这个我没有设置
keepalive 2 ##设定心跳(监测)时间时间为2秒
warntime 10 ##超出该时间间隔未收到对方节点的心跳,则发出警告并记录到日志中,这个也没有设置
deadtime 30 ##超出该时间间隔未收到对方节点的心跳,则认为对方已经死亡
initdead 120 ##在某些系统上,系统启动或重启之后需要经过一段时间网络才能正常工作,该选项用于解决这种情况产生的时间间隔。取值至少为deadtime的两倍。
udpport 694 ##使用udp端口694 进行心跳监测
ucast eth1 对方的ip ##采用网卡 eth1 的 udp 单播来通知心跳,eth1 的 IP
#baud 19200 ##设置串行通信的波特率
#serial /dev/ttyS0 ##使用串口
bcast eth1 # Linux 设置广播通信所使用的网络接口卡。
auto_failback off ##heartbeat的两台主机分别为主节点和从节点。主节点在正常情况下占用资源并运行所有的服务,遇到故障时把资源交给从节点并由从节点运行服务。在该选项设为on的情况下,一旦主节点恢复运行,则自动获取
node qiluwb1 ##节点1,必须要与 uname -n 指令得到的结果一致且主在前。
node qiluwb2 ##节点2
ping 10.0.1.75 ##通过ping 网关来监测心跳是否正常。
respawn hacluster /usr/lib64/heartbeat/ipfail
三、 HA服务的启动、关闭以及测试
启动HA: service heartbeat start
关闭HA; service heartbeat stop
chkconfig -add heartbeat chkconfig --level 35 heartbeat on
Ø 启动ha使用ifconfig eth0:0查看是否有虚拟地址
Ø arp –a查看mac
备注:
1).资源组的第一列是我们在ha.cf配置文件中的node之一,而且应该是当前准备作为primary节点的那一个node。
2).每一行代表一个资源组,如果一行写不下可以用" "换行
3).资源组启动顺序是从左往右,关闭的顺序是从右往左
4).脚本的参数通过::来分隔和传递
5).一个资源组里面不同资源之间以空格分隔
6).不同的资源组之间没有必然关系
7).每个资源都是一个角本,可以是在/etc/init.d目录下面的,也可以是/usr/local/etc/ha.d/resource.d目录下面的角本。这些角本必须要支持xxx start;xxx stop;模式。
8).关于service IP的资源设置格式详见haresources文件。
9).如果mysql是编译安装的话, 则需要修改/etc/init.d/mysql文件中的basedir和datadir两个参数。
手工切换
[ rc.d]# /usr/local/share/heartbeat/hb_standby
[ rc.d]# service heartbeat status
heartbeat OK [pid 13763 et al] is running on alsme_probe3 [qiluwb1]...
手工接管
[ rc.d]# /usr/local/share/heartbeat/hb_takeover
查看heartbeat状态
[ rc.d]# service heartbeat status
heartbeat OK [pid 13763 et al] is running on alsme_probe3 [qiluwb2]...