Rhel6-heartbeat配置文档
系统环境: rhel6 x86_64 iptables and selinux disabled
主机: 192.168.122.119 server19.example.com
192.168.122.25 server25.example.com
所需的包:heartbeat-3.0.4-1.el6.x86_64.rpm heartbeat-libs-3.0.4-1.el6.x86_64.rpm heartbeat-devel-3.0.4-1.el6.x86_64.rpm
以下步骤在server19和server25上实施:
[root@server19
kernel]# yum localinstall heartbeat-3.0.4-1.el6.x86_64.rpm
heartbeat-devel-3.0.4-1.el6.x86_64.rpm
heartbeat-libs-3.0.4-1.el6.x86_64.rpm ldirectord-3.9.2-1.2.x86_64.rpm
-y
[root@server19
ha.d]# modprobe softdog
[root@server19
ha.d]# echo modprobe softdog >> /etc/rc.d/rc.local
[root@server19
ha.d]# echo `hostname` > /var/www/index.html
[root@server19
ha.d]# /etc/init.d/httpd stop
以下步骤在server19或server25上实施:
[root@server19
kernel]# cd /usr/share/doc/heartbeat-3.0.4/
[root@server19
heartbeat-3.0.4]# cp authkeys haresources ha.cf /etc/ha.d/
[root@server19
heartbeat-3.0.4]# cd /etc/ha.d/
#配置/etc/ha.d/authkeys
[root@server19
ha.d]# vim authkeys
auth
3
#1
crc
#2
sha1 HI!
3
md5 Hello! (去掉注释)
[root@server19
ha.d]# chmod 600 authkeys
认证文件(/etc/ha.d/authkeys),文件的权限必须是
600
#配置/etc/ha.d/ha.cf
[root@server19
ha.d]# vim ha.cf
debugfile
/var/log/ha-debug (去掉注释)
调试日志文件文件,取默认值
logfile
/var/log/ha-log (去掉注释)
系统运行日志文件,取默认值
logfacility
local0
日志等级,取默认值
keepalive
2(去掉注释)
心跳频率,自己设定。1:表示
1 秒;200ms:表示
200 毫秒
deadtime
30(去掉注释)
节点死亡时间阀值,就是从节点在过了
30
后还没有收到心跳就认为主节点死亡,自己设定
warntime
10 (去掉注释)
发出警告时间,自己设定
initdead
120 (去掉注释)
守护进程首次启动后应该等待
120
秒后再启动主服务器上的资源
udpport
694 (去掉注释)
心跳信息传递的
udp
端口,使用端口
694
进行
bcast
和
ucast
通信,取默认值
bcast
eth0 (去掉注释)
采用
udp
广播播来通知心跳
auto_failback
on
当主节点恢复后,是否自动切回
watchdog
/dev/watchdog (去掉注释)
watchdog
能让系统在出现故障
1
分钟后重启该机器,这个功能可以帮助服务器在确实停止心
跳后能够重新恢复心跳
node
server19.example.com
主节点名称,与
uname
--n 保持一致.排在第一的默认为主节点,所以不要搞措顺序
node
server25.example.com
副节点名称,与
uname
--n 保持一致
ping
192.168.122.1
respawn
hacluster /usr/lib64/heartbeat/ipfail
apiauth
ipfail gid=haclient uid=hacluster
默认
heartbeat
并不检测除本身之外的其他任何服务,也不检测网络状况。
所以当网络中断时,并不会进行
Load
Balancer 和
Backup
之间的切换。
可以通过 ipfail
插件,设置'ping
nodes'来解决这一问题,但不能使用一个集群节点作为
ping
的节点.
#配置/etc/ha.d/haresources
[root@server19
ha.d]# vim haresources
server19.example.com
Ipaddr::192.168.122.178/24/eth0 httpd
注:192.168.122.178为虚拟IP.
这个文件中定义了实现集群所需的各个软件的启动脚本,这些脚本必须放在/etc/init.d
或者
/etc/ha.d/resource.d
目录里
IPaddr
的作用是启动
Virutal
IP,它是
HeartBeart
自带的一个脚本.
[root@server19
ha.d]# scp authkeys ha.cf haresources root@192.168.122.25:/etc/ha.d/
以下步骤在server19和server25上实施:
[root@server19
ha.d]# /etc/init.d/heartbeat start
可执行tail
-f /var/log/ha-log分别查看日志,看是否有报错,服务正常的话server19
上多了个eth0:0接口,若没有出现,
请等待一会,再使用ifconfig查看,若还是没有eth0:0接口出现,检查配置文件是否正确!
若停止server19上的heartbeat服务,则server25会接管,并产生一个eth0:0接口!
测试:
1.访问虚拟IP:192.168.122.178可以看到发布的页面,且在服务运行的机子上执行ifconfig可以查看到eth0:0.(起初应该在server19上运行,因为server19为主服务器,server25为备用服务器)
2.将server19上的heartbeat关闭或者执行echo
c >
/proc/sysrq-trigger模拟内核崩溃,在server25上查看日志可看到服务由server25接管则表示配置成功.
注:若关闭apache服务,将无法访问,因为heartbeat没有对服务进行健康检查的功能.
Rhel6-heartbeat配置文档的更多相关文章
- MYSQL服务器my.cnf配置文档详解
MYSQL服务器my.cnf配置文档详解 硬件:内存16G [client] port = 3306 socket = /data/3306/mysql.sock [mysql] no-auto-re ...
- 转!!Java代码规范、格式化和checkstyle检查配置文档
为便于规范各位开发人员代码.提高代码质量,研发中心需要启动代码评审机制.为了加快代码评审的速度,减少不必要的时间,可以加入一些代码评审的静态检查工具,另外需要为研发中心配置统一的编码模板和代码格式化模 ...
- Hibernate配置文档详解
Hibernate配置文档有框架总部署文档hibernate.cfg.xml 和映射类的配置文档 ***.hbm.xml hibernate.cfg.xml(文件位置直接放在src源文件夹即可) (在 ...
- Java代码规范、格式化和checkstyle检查配置文档
http://www.blogjava.net/amigoxie/archive/2014/05/31/414287.html 文件下载: http://files.cnblogs.com/files ...
- Spring Hibernate4 整合配置文档
1 applicationContext.xml配置文档 <?xml version="1.0" encoding="UTF-8"?><bea ...
- Kerberos主从配置文档
Kerberos主从配置文档 1. Kerberos主从同步机制 在Master上通过以下命令同步数据: kdb5_util dump /var/kerberos/krb5kdc/slave_db ...
- python常用模块-配置文档模块(configparser)
python常用模块-配置文档模块(configparser) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. ConfigParser模块用于生成和修改常见配置文档,当前模块的名称 ...
- azkaban编译安装配置文档
azkaban编译安装配置文档 参考官方文档: http://azkaban.github.io/azkaban/docs/latest/ azkaban的配置文件说明:http://azkaban. ...
- Python学习 :常用模块(四)----- 配置文档
常用模块(四) 八.configparser 模块 官方介绍:A configuration file consists of sections, lead by a "[section]& ...
- configparser模块——配置文档
configparser模块用于生成和修改常见配置文档. 预制配置文件:conf.ini [DEFAULT] ServerAliveInterval = 45 Compression = yes Co ...
随机推荐
- iOS开发之Xcode 6更新默认不支持armv7s架构
最近一次的Xcode 6更新默认不再支持arm7s架构,究竟是要废除不用呢还是仅仅只是一个疏忽? 目前的Xcode 6配置里定义${ARCHS_STANDARD}为armv7, arm64,当然这个定 ...
- Freemarker 入门示例(zhuan)
http://cuisuqiang.iteye.com/blog/2031768 ************************************ 初步学习freemarker ,先做一个简单 ...
- C#_抓包HttpWebRequest跟HttpWebResponse
1.第一招,根据URL地址获取网页信息 这招是入门第一式, 特点: 1.最简单最直观的一种,入门课程. 2.适应于明文,无需登录,无需任何验证就可以进入的页面. 3.获取的数据类型为HTML文档. ...
- python操作mongodb之八地理索引空间数据
from pymongo import MongoClient, GEO2D #使用geo_example库 db = MongoClient('192.168.30.252',27017).geo_ ...
- POJ 1218
题目描述看着就乐了,死板得只按着题意来写了ps: tequi是escape的方言版.. #include <iostream> using namespace std; int main( ...
- dedecms 模板文件不存在,无法解析文档"的终极各种解决办法
方法一:[此对应喜欢把模板文件使用".html"的格式,] /include/arc.archives.class.php 556行 if (!preg_match(&qu ...
- mathematics
二倍角公式 史济怀-数学分析1-2003-09-19_2.asx-在线播放-优酷网,视频高清在线观看http://v.youku.com/v_show/id_XMTMzMDU1MTgw.html 国立 ...
- Xcode + Swift 制作动态原型
转载: Xcode + Swift 制作动态原型 为什么是 Xcode 和 Swift 我们尝试过的动态原型设计工具,Origami, Form, Hype, FramerJS,Pixate 等,但都 ...
- javaScript定义对象的方法
转自souhu新闻http://news.sohu.com/20110215/n279335637.shtml? javascript定义对象的几种简单方法 1.构造函数方式,全部属性及对象的方法都放 ...
- 《C#开发微信门户及应用》
C#开发微信门户及应用(40)--使用微信JSAPI实现微信支付功能 C#开发微信门户及应用(39)--使用微信JSSDK实现签到的功能 C#开发微信门户及应用(38)--微信摇一摇红包功能 C#开发 ...