heartbeat介绍以及通过heartbeat实现简单httpd高可用
2015-11-07 00:33
716 查看
heartbeat 是 Linux-HA 工程的一个组成部分,它实现了一个高可用集群系统.简单的来说,通过heartbeat,可以将资源、服务等从一台已故障的服务器,快速转移到另外一台正常运转的服务器上面.
heartbeat跟另一款轻量级高可用开源软件keepalived有很多共同之处,在实际应用中我们应该对比两款软件的差异根据自己的需求选定最合适的软件.
keepalived通过VRRP协议进行通信和选举
heartbeat通过心跳进行通信和选举
keepalived配置、使用简单,相对来说功能也比较简单
heartbeat配置使用相对复杂但是功能强大,配套各种工具,适合做大型集群管理
这里通过配置heartbeat实现对httpd的简单高可用
环境:centos 6.4
heartbeat3.0.4
ha1 192.168.1.209
ha2 192.168.1.208
vip 192.168.1.253
首先配置ha1
修改主机名
hostname ha1
vi /etc/sysconfig/network
2.时间同步
yum -y install ntp
service ntpd start
netpdate 192.168.1.208
建立双机互信
ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ''
ssh-copy-id -i .ssh/id_rsa.pub root@192.168.1.209
安装heartbeat
yum -y install heartbeat*
5. 给heartbeat提供配置文件
cp -p /usr/share/doc/heartbeat-3.0.4/{authkeys,ha.cf,haresources} /etc/ha.d/
vi authkeys
最后一行添加
auth 1
a md5 ff49e8aba5208b0130ade78042877661(随便一个文件的md5值)
vi/etc/ha.d/ha.cf
debugfile /var/log/ha-debug
logfile /var/log/ha-log
keepalive 2
deadtime 30
warntime 10
initdead 120
udpport 694
bcast eth0
auto_failback on
node ha1
node ha2
ping 192.168.1.1
vi /etc/ha.d/haresources
ha1 IPaddr::192.168.1.253/24/eth0 httpd
6.安装httpd
yum -y install httpd
给httpd提供一个有标示的默认文档
echo "hello h1" >> /var/www/html/index.html
关掉httpd的自启动
配置ha2的的步骤同ha1
配置完成启动heartbeat
service heartbeat start
ssh ha2 "service heartbeat start"
查看vip是否在主节点ha1上面
测试集群能否正常被访问
把ha1关机到ha2查看集群ip是否被接管
测试网站能否正常访问
heartbeat配置选项解析
/debugfile /var/log/ha-debug heartbeat的调试日志存放位置
logfile /var/log/ha-log heartbeat的日志存放位置
logfacility locall 在syslog服务中配置通过locall设备接受日志
keepalive 2 指定心跳时间为2秒
deadtime 30 指定若备用节点在30秒内没收到主节点的心跳信号,则接管主节点的资源
warntime 10 指定心跳延迟的时间为10秒.当10秒内备份节点不能接收主节点的心跳信号时,就写入警告日志
initdead 120 指定在heartbeat首次运行后,需要在12秒之后才启动主服务器的任何资源.该选项用于解决这种情况产生的时间间隔.取值至少为deadtime的两倍,单机启动时会遇到vip绑定很慢
#bacat eth1 指明心跳私用以太网广播方式在eth1接口上进行广播,如使用两个世纪网络来传送心跳则#bcast eth0 eth1
auto_failback on 定义当主节点恢复后,是否将服务自动切回
node ha1 节点名
node ha2
crm no 是否开启Cluster Resouree Manager(集群资源管理)功能
本文出自 “左手右手” 博客,请务必保留此出处http://mofeihu.blog.51cto.com/1825994/1710501
heartbeat跟另一款轻量级高可用开源软件keepalived有很多共同之处,在实际应用中我们应该对比两款软件的差异根据自己的需求选定最合适的软件.
keepalived通过VRRP协议进行通信和选举
heartbeat通过心跳进行通信和选举
keepalived配置、使用简单,相对来说功能也比较简单
heartbeat配置使用相对复杂但是功能强大,配套各种工具,适合做大型集群管理
这里通过配置heartbeat实现对httpd的简单高可用
环境:centos 6.4
heartbeat3.0.4
ha1 192.168.1.209
ha2 192.168.1.208
vip 192.168.1.253
首先配置ha1
修改主机名
hostname ha1
vi /etc/sysconfig/network
2.时间同步
yum -y install ntp
service ntpd start
netpdate 192.168.1.208
建立双机互信
ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ''
ssh-copy-id -i .ssh/id_rsa.pub root@192.168.1.209
安装heartbeat
yum -y install heartbeat*
5. 给heartbeat提供配置文件
cp -p /usr/share/doc/heartbeat-3.0.4/{authkeys,ha.cf,haresources} /etc/ha.d/
vi authkeys
最后一行添加
auth 1
a md5 ff49e8aba5208b0130ade78042877661(随便一个文件的md5值)
vi/etc/ha.d/ha.cf
debugfile /var/log/ha-debug
logfile /var/log/ha-log
keepalive 2
deadtime 30
warntime 10
initdead 120
udpport 694
bcast eth0
auto_failback on
node ha1
node ha2
ping 192.168.1.1
vi /etc/ha.d/haresources
ha1 IPaddr::192.168.1.253/24/eth0 httpd
6.安装httpd
yum -y install httpd
给httpd提供一个有标示的默认文档
echo "hello h1" >> /var/www/html/index.html
关掉httpd的自启动
配置ha2的的步骤同ha1
配置完成启动heartbeat
service heartbeat start
ssh ha2 "service heartbeat start"
查看vip是否在主节点ha1上面
测试集群能否正常被访问
把ha1关机到ha2查看集群ip是否被接管
测试网站能否正常访问
heartbeat配置选项解析
/debugfile /var/log/ha-debug heartbeat的调试日志存放位置
logfile /var/log/ha-log heartbeat的日志存放位置
logfacility locall 在syslog服务中配置通过locall设备接受日志
keepalive 2 指定心跳时间为2秒
deadtime 30 指定若备用节点在30秒内没收到主节点的心跳信号,则接管主节点的资源
warntime 10 指定心跳延迟的时间为10秒.当10秒内备份节点不能接收主节点的心跳信号时,就写入警告日志
initdead 120 指定在heartbeat首次运行后,需要在12秒之后才启动主服务器的任何资源.该选项用于解决这种情况产生的时间间隔.取值至少为deadtime的两倍,单机启动时会遇到vip绑定很慢
#bacat eth1 指明心跳私用以太网广播方式在eth1接口上进行广播,如使用两个世纪网络来传送心跳则#bcast eth0 eth1
auto_failback on 定义当主节点恢复后,是否将服务自动切回
node ha1 节点名
node ha2
crm no 是否开启Cluster Resouree Manager(集群资源管理)功能
本文出自 “左手右手” 博客,请务必保留此出处http://mofeihu.blog.51cto.com/1825994/1710501
相关文章推荐
- HTTPS原理
- 安卓网络优化(5)
- HTTP对外接口,如何增加签名机制
- W: GPG 错误:http://extras.ubuntu.com precise Release: 下列签名无效
- apache配置httpd-vhosts
- 网络协议层学习笔记
- 追书神器网络协议分析
- 【LINUX/UNIX网络编程】之使用消息队列,信号量和命名管道实现的多进程服务器(多人群聊系统)
- 操作系统与网络实现 之七
- android的实时视频网络传输的知识与概念
- eclipse中jsp错误javax.servlet.http.HttpServlet" was not found on the Java Build Path
- Xcode 官方下载地址 https://developer.apple.com/downloads/
- Notepad++官网地址 https://notepad-plus-plus.org/
- IOS网络请求图片失败原因及解决办法
- 网络
- sipXecs在虚拟机中运行的网络设置
- HTTP Referer 防外链
- Android——网络编程
- StarUML官网地址 http://staruml.io/
- 网络相关问题(上)