实验环境:
虚拟机ha1:192.168.61.130 虚拟机ha2:192.168.61.132 vip:192.168.61.100 实验说明:
ha1的httpd服务index.html 内容设置为ha1
ha2的httpd服务index.html 内容设置为ha2
两主机切换工作时以方便观察效果 注意事项:
(a) .节点间时间必须同步:使用ntp协议实现;
服务端/etc/ntp.conf供参考:
driftfile/var/lib/ntp/drift restrict -6default kod nomodify notrap nopeer noquery restrict127.0.0.1 restrict -6 ::1 restrict192.168.61.0 mask 255.255.255.0 nomodify restrict 0.0.0.0mask 0.0.0.0 nomodify notrap noquery notrust server127.127.1.0 fudge 127.127.1.0stratum 8 server220.130.158.71 prefer server220.130.158.51 includefile/etc/ntp/crypto/pw keys/etc/ntp/keys
注意:设置重启服务后一定要等10-15分钟再尝试同步,命令:ntpdata 192.168.61.130,对比两机时间是否同步命令:data;ssh 192.168.61.130 ‘data’ ha2 最好设定一个定时任务,每5分钟同步时间: crontab -e */5 * * * * /usr/sbin/ntpdata 192.168.61.130
(b) .节点间需要通过主机名互相通信,必须解析主机至IP地址;
(1)建议名称解析功能使用hosts文件来实现;
(2)通信中使用的名字与节点名字必须保持一致:“uname -n”命令,或“hostname”展示出的名字保持一致;
(3) .建立各节点之间的root用户能够基于密钥认证;
# ssh-keygen -t rsa -P ''
#ssh-copy-id -i /root/.ssh/id_rsa.pub root@HOSTNAME
(4) .一定要确保SELINUX关闭,iptables清空
注意:定义成为集群服务中的资源,一定不能开机自动启动;因为它们将由crm管理;
ha1配置
安装heartbeat V2 (a).先安装epel源,系统源没有libnet rpm -ivh epel-release-6-5.noarch.rpm
(b).安装相关包: yum install net-snmp-libs libnet PyXML rpm-ivh heartbeat-2.1.4-12.el6.x86_64.rpm heartbeat-pils-2.1.4-12.el6.x86_64.rpm heartbeat-stonith-2.1.4-12.el6.x86_64.rpm yum install httpd
(c).编辑ha.cf 文件 vim /etc/ha.cf添加内容如下: logfacility local0#日志使用rsyslog中local0设定 keepalive1 #监听频率,每1秒 deadtime3 #死亡判断时间 warntime2 #异常警告时间 mcasteth0 225.0.0.1 694 1 0 #组播地址设定 auto_failbackon #修复后自动上线 node ha1 #节点设置 node ha2 #节点设置 ping 192.168.61.2 #第三方仲裁设定
(d).编辑authkeys文件 auth 2 #1 crc 2 sha1HI! #密钥短语越长越随机越好 #3 md5Hello! (e) 编辑haresources添加:
ha1 192.168.61.100 httpd #设定主服务主机名、VIP、服务3个资源
(f)编辑index.html首页
echo“ha1” > /var/www/html/index.html
ha2配置
安装heartbeat V2 (a).先安装epel源,系统源没有libnet rpm -ivh epel-release-6-5.noarch.rpm
(b).安装相关包: yum install net-snmp-libs libnet PyXML rpm-ivh heartbeat-2.1.4-12.el6.x86_64.rpm heartbeat-pils-2.1.4-12.el6.x86_64.rpm heartbeat-stonith-2.1.4-12.el6.x86_64.rpm yum install httpd
(c)拷贝ha1的ha.cf、haresources、authkeys
scp192.168.61.130:/etc/ha.d/{ha.cf,haresources,authkeys} /etc/ha.d/
(d)编辑index.html首页
echo“ha2” > /var/www/html/index.html
(e)添加定时校时任务,每5分钟更新一次时间
crontab-e
*/5* * * * /usr/sbin/ntpdata 192.168.61.130
分别启动两机heartbeat服务
service heartbeat start
用其他主机访问http://192.168.61.100/index.html, 关闭ha1、ha2其中一台,刷新网页就可以看到网页内容ha1、ha2轮流显
示。用ifconfig查看正在工作的主机,可以发现vip 已经配置在eth0:0上
|