Linux集群系列之十——高可用集群之heartbeat安装配置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux集群系列之十——高可用集群之heartbeat安装配置相关的知识,希望对你有一定的参考价值。
rhel 5.8 32bit
heartbeat v2
ha web
node1 node2
节点名称, /etc/hosts
节点名称必须跟uname -n命令的直行结果一致
ssh 互信通信,
时间同步
1先配置两个主机的ip 列如 192.168.1.11 192.168.1.12 VIP192.168.1.8 网关
192.168.1.1
配置两个主机的主机名#hostname node1.mylinux.com
#hostname node2.mylinux.com
为了让主机名永久生效编辑 /etc/sysconfig/network
2 配置双击互信(在1.11上配置)
#ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ‘‘
#ssh-copy-id -i .ssh/id_rsa.pub [email protected]
在1.12上配置一样
#ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ‘‘
#ssh-copy-id -i .ssh/id_rsa.pub [email protected]
测试 在1.11上 #ssh 192.168.1.12 ‘ifconfig‘
测试 在1.12上 #ssh 1192.168.1.11 ‘ifconfig‘
3 配置主机名称解析分别在1.11和1.12上配置
# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.11 node1.mylinux.com node1
192.168.1.12 node2.mylinux.com node2
可以通过ping node2 和node1来测试解析是否正常
#scp /etc/hosts node2:/etc
iptables -L -n 确保没有相关的限定或者打开UDP的694端口
4 时间同步(1.12上运行ntp服务)
ntpdata 192.168.1.13
或者直接手动同步 ntpdate 192.168.1.13
[[email protected] yum.repos.d]# which ntpdate
/usr/sbin/ntpdate
crontab -e 每隔五分钟同步一次
*/5 * * * * /sbin/ntpdate 192.168.1.13 &> /dev/null
scp /var/spool/cron/root node2:/var/spool/cron/
kz
http://www.linux-ha.org/wiki/Heartbeat
http://clusterlabs.org/
epel:
https://fedoraproject.org/wiki/Special:RecentChanges
heartbeat-2.1.4-11.el5.i386.rpm 核心包
heartbeat-devel-2.1.4-11.el5.i386.rpm 开发包
heartbeat-gui-2.1.4-11.el5.i386.rpm 图形界面用于管理hearbeat集群
heartbeat-ldirectord-2.1.4-11.el5.i386.rpm 为ipvs高可用提供规则自动生成,即后
端realserver健康状态检查的组件
heartbeat-pils-2.1.4-11.el5.i386.rpm 装载库的插件
heartbeat-stonith-2.1.4-11.el5.i386.rpm 用于修改报头的接口
[1.11]
安装之前必须先安装这2个包
libnet-1.1.6-7.el5.i386
perl-MailTools-1.77-1.el5.noarch
#yum --nogpgcheck localinstall perl-MailTools-1.77-1.el5.noarch
#yum --nogpgcheck localinstall libnet-1.1.6-7.el5.i386
#yum --nogpgcheck localinstall heartbeat-2.1.4-11.el5.i386.rpm
#yum --nogpgcheck localinstall heartbeat-gui-2.1.4-11.el5.i386.rpm
#yum --nogpgcheck localinstall heartbeat-pils-2.1.4-11.el5.i386.rpm
#yum --nogpgcheck localinstall heartbeat-stonith-2.1.4-11.el5.i386.rpm
#scp perl-MailTools-1.77-1.el5.noarch libnet-1.1.6-7.el5.i386 heartbeat-2.1.4
-11.el5.i386.rpm heartbeat-gui-2.1.4-11.el5.i386.rpm heartbeat-pils-2.1.4-
11.el5.i386.rpm heartbeat-stonith-2.1.4-11.el5.i386.rpm node2:/root/
[1.12]
#yum --nogpgcheck localinstall perl-MailTools-1.77-1.el5.noarch
#yum --nogpgcheck localinstall libnet-1.1.6-7.el5.i386
#yum --nogpgcheck localinstall heartbeat-2.1.4-11.el5.i386.rpm
#yum --nogpgcheck localinstall heartbeat-gui-2.1.4-11.el5.i386.rpm
#yum --nogpgcheck localinstall heartbeat-pils-2.1.4-11.el5.i386.rpm
#yum --nogpgcheck localinstall heartbeat-stonith-2.1.4-11.el5.i386.rpm
/etc/ha.d/resource.d/IPaddr专门用于实现将VIP配置到某个活动节点上,并且监控IP是
否生效
#cd /etc/ha.d
三个配置文件
1.密钥文件,600权限,authkeys
2.heratbeat服务的配置文件 ha.cf
3.资源管理配置文件
haresources
#ls /usr/share/doc/heartbeat-2.1.4
#cp -p /usr/share/doc/heartbeat-2.1.4/{authkeys,ha.cf,haresources} ./
#dd if=/dev/random count=1 bs=612 |md5sum 生成随机数
定义主配置文件
#vim authkeys
auth 1
1 md5 【随机数】
#vim ha.cf
#debugfile /var/log/ha-debug 调试日志
logfile /var/log/heartbeat.log 日志文件
#logfacility local0 日志的设施
keepalive 2 两秒发一次心跳信息
deadtime 30 死亡时间,探测多少时间后确定为死亡
warntime 10 警告时长
initdead 120 第一个节点启动以后等待第二个节点启动,的等待时间(至少要2个节点
才能组成集群)
udpport 694 心跳信息传递端口
baud 19200 串行线发送速率是多少
bcast eth0 定义广播
#mcast 组播
#ucast 单播
node 指定当前集群有几个节点,每个节点用一个node去指定
node node1.mylinux.com
node node2.mylinux.com
ping 192.168.1.1 通过网关来检测自己是否正常
#respawn hacluster 服务荡掉多久重启服务
#compression bz2 是否压缩日志
#compression_threshold 2 大于2k压缩
定义资源 /etc/ha.d/resource.d/Filesystem 资源代理
[1.11]
yum install httpd
echo "<h1>node1.mylinux.com</h1>" >> /var/www/html/index.html
service httpd start
测试
service httpd stop
chkconfig httpd off
[1.12]
yum -y install httpd
echo "<h1>node2.mylinux.com</h1>" >> /var/www/html/index.html
service httpd start
测试
service httpd stop
chkconfig httpd off
[1.11]
#cd /etc/ha.d
#vim haresources
node1.mylinux.com IPaddr::192.168.1.8/24/eth0 httpd
#scp -p authkeys haresources ha.cf node2:/etc/ha.d/
#service heratbeat start
#ssh node2 ‘service heartbeat start‘
cd /usr/lib/heartbeat
./hb_standby 把自己转换成备节点进行测试
[1.12]
ifconfig
netstat -tnlp 此时检查80端口是否启用
[1.14]
ifconfig lo:0 down
ifconfig eth0 192.168.1.14/24
echo 0 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
echo 0 > /proc/sys/net/ipv4/conf/eth0/arp_announce
echo 0 > /proc/sys/net/ipv4/conf/all/arp_announce
echo 0 > /proc/sys/net/ipv4/conf/all/arp_ignore
#mkdir /web/htdocs -pv 建立一个文件夹 并且共享出去
vim /etc/exports
/web/htdocs 192.168.1.0/255.255.255.0(ro)
vim /web/htdocs/index.html
nfs server
#service nfs start
service portmap restart
[1.11]
#ssh node2 ‘/etc/init.d/heratbeat stop‘
#service hearbeat stop
#setenforce 0
#mount 192.168.1.14:/web/htdocs /mnt
#ls /mnt
#umount /mnt
#vim /etc/ha.d/haresources
node1.mylinux.com IPaddr::192.168.1.8/24/eth0
Filesystem::192.168.1.14:/web/htdocs::/var/www/html::nfs httpd
#scp haresources node2:/etc/ha.d/
#sercice heartbeat start
#ssh node2 ‘service heartbeat start‘
#/usr/lib/heartbeat/hb_standby让主节点成为备节点进行测试
本文出自 “运维成长路” 博客,谢绝转载!
以上是关于Linux集群系列之十——高可用集群之heartbeat安装配置的主要内容,如果未能解决你的问题,请参考以下文章
Linux集群系列——高可用集群之corosync基础概念及安装配置.
ElasticStack系列之十五 & query cache 引起性能问题思考