2013年12月10日 星期二 11:25
Heartbeat提供了集群间通讯和基础的服务管理功能。对于DRBD+MySQL这样简单的架构,单纯使用Heartbeat就可以达到很好的效果,无需再引入比较复杂的Packmaker。
本篇文章基于 使用DRBD实现高可用的MySQL数据库 ,主要演示使用Heartbeat实现资源自动Failover的配置过程。
一、环境信息:
两台服务器的IP地址:172.16.88.89,172.16.88.94
操作系统:CentOS 6.5 X86_64
数据磁盘:/dev/sda3
DRBD磁盘:/dev/drbd1
磁盘挂载目录:/data
磁盘文件系统:ext4
磁盘挂载参数:noatime
虚拟IP地址:172.16.88.122
需要Failover的服务:mysql
hosts文件配置:
172.16.88.89 db-89
172.16.88.94 db-94
二,安装heartbeat软件(两台服务器均需配置和安装):
heartbeat相关软件需要配置如下安装源(/etc/yum.repos.d/epel.repo ):
[epel]
name=epel from sohu
baseurl=http://mirrors.sohu.com/fedora-epel/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://fedoraproject.org/static/0608B895.txt
执行安装:
yum install -y heartbeat
三,配置heartbeat(两台服务器均需配置):
1,消息认证配置文件: /etc/ha.d/authkeys
auth 3
3 md5 okbuy_is_good
然后设置文件权限:
chmod 600 /etc/ha.d/authkeys
2,集群通讯配置文件:/etc/ha.d/ha.cf
logfacility local0
udpport 695 #此端口可以酌情修改,不要与统一网络中其他集群冲突
ucast em1 172.16.88.94 #这里是对方的IP地址
auto_failback off
node db-89 db-94
ping 172.16.88.1
3,资源配置文件:/etc/ha.d/haresources (两台服务器要完全一致)
db-89 172.16.88.122 drbddisk::mysql Filesystem::/dev/drbd1::/data::ext4::noatime mysql
4,启动环境配置文件:/etc/sysconfig/heartbeat
HA_BIN=/usr/lib64/heartbeat
四,启动heartbeat 服务(两台服务器均需执行):
service heartbeat start
然后查看日志:
tail -f /var/log/messages
五、测试Failover:
重启服务器db-89,检查db-94服务器上的DRBD状态,文件系统挂载状态,MySQL服务状态。
重启服务器db-94,检查db-89服务器上的DRBD状态,文件系统挂载状态,MySQL服务状态。
Zeuux © 2024
京ICP备05028076号