Heartbeat+mysql+drbd配置手册
项目名称:项目编号:编 写:审 核:批 准:日 期:
1
修订历史记录
版本 *变化状态 说明 日期 修订者 *变化状态(A-添加,M-修改,D-删除)
2
一、drbd介绍及安装 ................................................................................................... 4
1. Drbd介绍 ........................................................................................................... 4 2. Drbd工作原理 ................................................................................................... 4 3. Drbd同现在的ha集群间的关系...................................................................... 4 4. Drbd安装 ........................................................................................................... 5
1. 安装环境................................................................................................... 5 2. 开始安装(两台服务器上分别配置) ........................................................ 5 3. 划分硬盘(两台服务器上都需要一块盘)........................................... 5 4. 配置文件修改/etc/drbd.conf .................................................................... 5 5. 创建meta-data 信息 ................................................................................ 6 6. 查看是否有相应的块设备......................................................................... 6 7.设当前节点为主节点并进行格式化........................................................... 6 8. 将当前节点挂载到mysql数据文件下 ..................................................... 7 9重启mysql即可产生数据文件。 ............................................................... 7 10. drbd配置完成 ........................................................................................... 7 5. 主从切换命令:................................................................................................ 7 6. Drbd脑裂处理办法 ........................................................................................... 7 二、heartbeat介绍及安装 ............................................................................................ 7
1. 安装包:.......................................................................................................... 7 2. 安装过程.......................................................................................................... 7 4. Chkconfig heartbeat on ..................................................................................... 9 5.配置完成.............................................................................................................. 9
3
一、drbd介绍及安装
1.Drbd介绍
DRBD 是由内核模块和相关脚本而构成,用以构建高可用性的集群。其实现方式是通过网络来镜像整个设备。您可以把它看作是一种网络RAID 2.Drbd工作原理
每个设备(drbd 提供了不止一个设备)都有一个状态,可能是‘主’状态或‘辅助’状态。在带有主要设备的节点上,应用程序应能运行和访问设备(/dev/hbx)。每次写入都会发往本地低层设备和带有‘辅助’状态设备的节点中。次要设备只能简单地把数据写入它的低层块设备上。 读取数据通常在本地进行。
如果主要节点发生故障,心跳将会把辅助设备转换到主状态,并启动其上的应用程序。(如果您将它和无日志FS 一起使用,则需要运行fsck)。 如果发生故障的节点恢复工作,它就会成为新的辅助节点,而且必须使自己的内容与主节点的内容保持同步。当然,这些操作不会干扰到后台的服务。 3.Drbd同现在的ha集群间的关系
大部分现行高可用性集群(如:惠普、康柏等等)使用的是共享存储器,因此存储器连接多个节点(用共享的SCSI 总线或光纤通道就可以做到)。Drbd 也可以作为一个共享的设备,但是它并不需要任何不常见的硬件。它在IP 网络中运行,而且在价格上IP 网络要比专用的存储网络经济的多。目前,drbd 每次只允许对一个节点进行读写访问,这对于通常的故障切换高可用性集群来讲已经足够用了。以后的版本将支持两个节点进行读写存取。
这很有用,比如对GFS 来讲就是如此。兼容性Drbd 可以在ide、SCSI 分区和整个驱动器之上运行,但不能在回路模块设备上运行。(如果您硬要这样做,它就会发生死锁)。Drbd 也不能在回送网络设备中运行。(因为它同样会发生死锁:所有请求都会被发送设备占用,发送流程也会阻塞在sock_sendmsg()中。有时,接收线程正从网络中提取数据块,并试图把它放在高速缓存器中;但系统却要把一些数据块从高速缓存器中取到磁盘中。这种情况往往会在接收器的环境下发生,因为所有的请求都已经被接收器块占用了。
4
4. Drbd安装
1.安装环境
1.操作系统:redhat5.3
2.drbd安装包:drbd-8.3.8.1.tar.gz 3.ip规划:
192.168.14.207 rac1 192.168.14.208 rac2
2.开始安装(两台服务器上分别配置)
1.首先将drbd-8.3.8.1.tar.gz拷贝到/home目录下 2.解压缩包:tar zxvf drbd-8.3.8.1.tar.gz
3.授予可执行权限:chmod -R a+rwx drbd-8.3.8.1 4.cd drbd-8.3.8.1
5.执行./configure --prefix=/ --with-km
6.执行make KDIR=/usr/src/kernels/2.6.18-128.el5.i686 7.执行make install
8.查找drbd.ko文件:find / -name drbd.ko 9.insmod drbd.ko 10.检查是否成功
Drbdadm ,lsnmod | grep drbd ,cat /proc/drbd 11.chkconfig -add drbd 12.chkconfig drbd on
3.划分硬盘(两台服务器上都需要一块盘) Fidsk /dev/hdb
4.配置文件修改/etc/drbd.conf
1.查找drbd模板:find / -name drbd.conf.example
2.复制:cp /home/drbd-8.3.8.1/scripts/drbd.conf.example /etc/drbd.conf 3.修改为如下配置: global {
usage-count yes; }
5
common {
syncer { rate 10M; } } resource r0 { protocol C; net { } on rac1 {
device /dev/drbd0; disk /dev/hdb1;
address 192.168.14.208:7788; meta-disk internal; }
on rac2 {
device /dev/drbd0; disk /dev/hdb1;
address 192.168.14.207:7788; meta-disk internal; } }
5.创建meta-data 信息 Drbdadm create-md r0 /etc/init.d/drbd restart 6.查看是否有相应的块设备 Ls /dev/drbd0 Cat /proc/drbd
7.设当前节点为主节点并进行格式化 Drbdsetup /dev/drbd0 primary -o Mkfs.ext3 /dev/drbd1
6
8.将当前节点挂载到mysql数据文件下 Mount /dev/drbd0 /var/lib/mysql
9重启mysql即可产生数据文件。 10.drbd配置完成
5. 主从切换命令:
1.主从功换 drbdadm primary all,drbdadm secondary all 2.节点间连接命令:drbdadm connect | disconnect all 6. Drbd脑裂处理办法
1.drbdadm scondary r0
2.drbdadm -- --discard-my-data connect r0 3.drbdadm connect r0
二、heartbeat介绍及安装
1.安装包:
1.heartbeat-2.1.3.tar.gz
2.libnet.tar.gz 2.安装过程
1.首先解压缩libnet.tar.gz
2.进入解压后的文件执行configure 3make 4make install
5.解压缩heartbeat-2.1.3.tar.gz 6.解压后进入文件
7.运行命令./ConfigureMe configure 8.Make 9.Make install 安装完成 3. Heartbeat配置
7
1.寻找配置文件 Find / -name ha.cf Find / -name haresources Find / -name authkeys
2.找到后,把这个三配置文件拷贝到/etc/ha.d目录下 3.修改参数文件为如下配置 Ha.cf:
debugfile /var/log/ha-debug logfile /var/log/ha-log logfacility local0 keepalive 10 deadtime 30 warntime 10 initdead 120 udpport 694 bcast eth0
auto_failback on watchdog /dev/watchdog node rac1(节点名称) node rac2(节点名称)
ping 192.168.14.1(设为网关)
apiauth ipfail gid=root uid=root(可以自建用户) hopfudge 1 4.authkeys配置 auth 1 1 crc
并且执行chmod 600 authkeys
8
5.haresources配置 rac1 drbddisk
Filesystem::/dev/drbd0::/var/lib/mysql/::ext3 mysqld 192.168.14.206 配置完成
4.Chkconfig heartbeat on 5.配置完成
9