用heartbeat实现应用高可用

一.准备
1.    机器
test03 10.0.0.232
test04 10.0.0.233(主)
 
二.工具安装
1.安装Heartbeat
Heartbeat:管理虚拟ip的高可用和服务
安装步骤:
apt-get install drbd8-utils heartbeat –y
启动Heartbeat服务并使其在启动时启动
systemctl start heartbeat
systemctl enable heartbeat
2.nfs安装
服务端
apt-get install -y nfs-kernel-server
vi /etc/exports
增加/home/super/jenkins0415 *(rw,no_root_squash,subtree_check)
service nfs-kernel-server restart
客户端
apt-get install -y nfs-common

三.配置
1. Heartbeat配置
1)主机上/usr/share/doc/heartbeat目录里找到ha.cf、haresources、authkeys三个文件,将其拷贝到/etc/ha.d/目录下(如果是gz文件,先进行解压 gzip *.gz –d .)
2)双机互信,配置免密登录,配置hosts文件
vim /etc/hosts
10.0.0.232 test03
10.0.0.233 test04
3)修改authkeys (auth 3   3 md5 Hello!)权限为600
        内容如下
            auth 3
               #1 crc
               #2 sha1 HI!
              3 md5 Hello!
   修改haresources(test04  10.0.0.239/24/ens160  testshell
            这里的10.0.0.239是虚拟ip(指定一个不使用的ip)
   修改ha.cf 
        debugfile /var/log/ha-debug    #调试输出信息文件
logfile   /var/log/ha-log        #日志文件
logfacility   local0             
keepalive 2            #心跳包发送间隔
deadtime 30            #30秒检测不到对端认为对端已离线
warntime 10            #当对端离线10秒后发出警告
initdead 60            #系统重启过度时间
udpport   694
bcast ens160           #心跳包发送方式和路径
auto_failback on       #主节点恢复正常自动重新接管
ucast ens160 10.0.0.232  #设置对方机器心跳检测的网卡和IP
node  test04    #添加集群节点
node  test03    #添加集群节点
auto_failback on  
watchdog /dev/watchdog
ping 10.0.0.1
4)修改完成后,将修改好的文件拷到备机上,修改ucast ens160 10.0.0.232为ucast ens160 10.0.0.233(即对应为主机ip)
scp authkeys ha.cf haresources root@10.0.0.232:/etc/ha.d

2.修改启动脚本(这里需要LSB格式的,即传递参数start,stop,heartbeat中的testshell,放在路径 /etc/init.d下,脚本如下,可参照格式修改适配不同场景的使用)

四 使用
1.    启动
在主节点上运行service heartbeat start
2.    启动成功后,会自动将vip 10.0.0.232配置到linux系统的 ens160:X网卡上, inet addr:10.0.0.239
3.    会自动运行脚本testshell
4.    此时访问http:// 10.0.0.239:8083 /会出现应用页面,指向http:// 10.0.0.233: 8083 /
5.    模拟主节点挂掉:service heartbeat stop
6.    登录备节点,查看ifconfig,可以看到多了一个ens160:0
7.    此时访问http:// 10.0.0.239: 8083 /也会出现Jenkins页面,但是指向http:// 10.0.0.232: 8083 /,且http:// 10.0.0.233: 8083 /无法打开
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值