centos实现heartbeat 双机热备

centos实现heartbeat 双机热备

双机热备就是使用两台服务器共同执行同一服务,在运行过程中实时相互备份,当一台服务器出现故障时候,另一台可以立即发现故障并接管那天服务器的服务,从而在不需要人工干预的情况下自动保证系统能持续提供服务。常见的有两种情况:使用共同存储设备、使用不同存储设备(需要通过软件保持同步),在同一时间内主服务器保持激活状态,备份服务器处于监听状态,当主服务器出现故障无法启动时候,备份服务器会通过心跳诊断将备份服务器激活,保证服务正常使用。这里主要是用在提供web服务的服务器,目的是防止服务器宕机引起的服务间断。采用的是linux+heartbeat方案。下面把我的实现过程写一下:

两台服务器用来做高可用,虚拟vip192.168.100.249,通过心跳线来确定对方是否活着

下面看下我的heartbeat来做HA集群

环境描述

两个系统都是centos6.7,两个主机ip分别为
cs1.local  192.168.100.45

cs2.local  192.168.100.44

两个主机的心跳地址分别为:

cs1.local  192.168.10.20

cs2.local   192.168.10.10

一、设置主机名

二、关闭防火墙活着打开所需端口,关闭SELinux

/etc/init.d/iptables stop

setenforce 0

三、设置解析

四、安装epel扩展源

yum insall epel-release

五、安装heartbeat 和apache

yum -y install heartbeat-stonith  heartbeat-pils heartbeat heartbeat-devel heartbeat-gui libnet

yum install -y httpd

六、主服务器上的操作

1.Heartbeat的主要配置文件有ha.cf、haresources、authkeys,需要放在/etc/ha.d目录下,
        在通过yum安装Heartbeat后,默认并没有这三个文件,
        yum 安装后可以从/usr/share/doc/heartbeat-3.0.4找到,拷贝到/etc/ha.d并编辑

cp /usr/share/doc/heartbeat-3.0.4/ha.cf /etc/ha.d/
        cp /usr/share/doc/heartbeat-3.0.4/haresources /etc/ha.d/
        cp /usr/share/doc/heartbeat-3.0.4/authkeys /etc/ha.d/

2.主配置文件ha.cf的内容设置如下:

debugfile /var/log/ha-debug     #用于记录heartbeat的调试信息

logfile /var/log/ha-log  #用于记录heartbeat的日志信息

logfacility     local0     #系统日志级别

keepalive 2        #设定心跳(监测)间隔时间,默认单位为秒

deadtime 30     # 超出30秒未收到对方节点的心跳,则认为对方已经死亡

warntime 10       #警告时间,通常为deadtime时间的一半

initdead 120    #网络启动时间,至少为deadtime的两倍

udpport 694    使用udp端口694 进行心跳监测

ucast eth1 192.168.10.10    #采用单播,进行心跳监测,IP为对方主机IP

auto_failback on       #on表示当拥有该资源的属主恢复之后,资源迁移到属主上

node    cs1.local        #设置集群中的节点,节点名须与uname –n相匹配 
        node    cs2.local         #节点2

ping 192.168.100.1 192.168.100.253  #ping集群以外的节点,这里是网关和另一台机器,用于检测网络的连接性

respawn hacluster /usr/lib64/heartbeat/ipfail     #此处lib64默认为lib,64位系统要改为lib64,否则启动时报错。

apiauth ipfail gid=root uid=root    #设置所指定的启动进程的权限

3.ha.cf文件设置了heartbeat的检验机制,没有执行机制。Haresources用来设置当主服务器现              问题时heartbeat的执行机制。其内容为:当主服务器宕机后,该怎样进行切换操作。切换内容            通常有IP地址的切换、服务的切换、共享存储的切换,从而使从服务器具有和主服务器同样的                IP、SERVICE、SHARESTORAGE,从而使client没有察觉。在两个HA节点上该文件必须完一 致。

cat /etc/ha.d/haresources

4.认证文件authkeys

用于配置心跳的加密方式,该文件主要是用于集群中两个节点的认证,采用的算法和密钥在集群中节点上必须相同,目前提供了3种算法:md5,sha1和crc。其中crc不能够提供认证,它只能够用于校验数据包是否损坏,而sha1,md5需要一个密钥来进行认证。
本次实例中,内容设置如下:

cat /etc/ha.d/authkeys

注:需要更改该文件的属性为600,否则heartbeat启动将失败

chmod 600 /etc/ha.d/authkeys

5.配置从节点的heartbeat

将主节点上的heartbeat配置文件拷贝到从节点,并确保两个节点上的配置文件权限相同:

scp /etc/ha.d/ha.cf [email protected]:/etc/ha.d/
        scp /etc/ha.d/haresources [email protected]:/etc/ha.d/
        scp /etc/ha.d/authkeys  [email protected]:/etc/ha.d/

ha.cf文件需修改ucast的内容,将其指向主节点:
        ucast eth1 192.168.10.20  #指定对方IP

其他文件内容无需修改。在主备节点上haresources和authkeys文件必须是相同的

七、测试

将cs1.local  网页改为  this is webserver : cs1

将cs2.local  网页改为  this is webserver : cs2

/etc/init.d/httpd start

/etc/init.d/heartbeat start

断开cs1.local 的心跳ip 192.168.10.20

重新访问结果如下

恢复主机心跳ip192.168.10.20 访问又回到原来界面

时间: 2024-12-26 22:24:55

centos实现heartbeat 双机热备的相关文章

Centos 7 keepalived双机热备

Centos 7 keepalived双机热备 操作环境:keepalived热备份(双机热备)Centos 7系统ip地址: 192.168.80.100 --主服务器Centos 7系统ip地址: 192.168.80.101 --从服务器windows系统ip地址: 192.168.80.20 --测试客户端 Centos 7系统ip地址: 192.168.80.100操作如下:1. keepalived软件安装yum install keepalived -y 2.修改配置文件vi /e

CentOS系统MySQL双机热备配置

1  概述 在集成项目中需要应对不同环境下的安装配置,主流操作系统大致可以分为三种:Linux.Windows以及UNIX.其中Linux备受青睐的主要原因有两个: 首先,Linux作为自由软件有两个特点:一是它免费提供源码,二是爱好者可以按照自己的需要自由修改.复制和发布程序的源码,并公布在Internet上.这就吸引了世界各地的操作系统高手为Linux编写各种各样的驱动程序和应用软件,使得Linux成为一种不仅只是一个内核,而且包括系统管理工具.完整的开发环境和开发工具.应用软件在内,用户很

CentOS下Mysql双机热备安装详解

Mysql双机热备安装文档 1. 安装环境和资源 211.88.22.74 4CPU 8G 120G硬盘 centos6.5_64 211.88.22.73 4CPU 8G 120G硬盘 centos6.5_64 服务器两台.这里使用211.88.22.74作为主服务器,211.88.22.73作为从服务器. 1.1 mysql下载地址 a. 官方下载地址: http://dev.mysql.com/downloads/mysql/#downloads 或镜像文件下载: http://dev.m

heartbeat双机热备实现Web服务的高可用

防伪码:没有相当程度的孤独是不可能有内心的平和. 1.概述 Heartbeat 项目是 Linux-HA 工程的一个组成部分,它实现了一个高可用集群系统.心跳服务和集群通信是高可用集群的两个关键组件,在 Heartbeat 项目里,由 heartbeat 模块实现了这两个功能. 通过heartbeat,可以将资源从一台已经故障的计算机快速转移到另一台运转的机器上继续提供服务. 官网:http://www.linux-ha.org/wiki/Main_Page 1.1 工作原理 主备模式:通过修改

heartbeat双机热备的架设

redhat6.5虚拟机两台,各1G内存,时间同步 server1  172.25.44.1 server2  172.25.44.2 火墙和selinux均处于关闭状态 编辑/etc/hosts文件,加入解析 一.安装 首先得到rpm安装包,两台主机都进行安装 二.配置 Server1 中进行操作 主配置目录为/etc/ha.d 把三个配置文件拷贝到主配置目录 Vim /etc/ha.d/ha.cf   ###主配置文件 29 logfile /var/log/ha-log   ###系统运行

Mysql+DRBD+Heartbeat 实现mysql高可用的双机热备(mysql+heartbeat篇)

*************************************部署MYSQL******************************************* yum -y install  gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* make cmake bison* useradd mysql -d /usr/loc

使用Heartbeat实现双机热备

使用Heartbeat实现"双机热备"或者称为"双机互备"heartbeat的工作原理:heartbeat最核心的包括两个部分,心跳监测部分和资源接管部分,心跳监测可以通过网络链路和串口进行,而且支持冗余链路,它们之间相互发送报文来告诉对方自己当前的状态,如果在指定的时间内未受到对方发送的报文,那么就认为对方失效,这时需启动资源接管模块来接管运行在对方主机上的资源或者服务.heartbeat的两台主机分别为主节点和从节点.主节点在正常情况下占用资源并运行所有的服务,

mysql双机热备+heartbeat集群+自动故障转移

环境说明:本环境由两台mysql 数据库和heartbeat 组成,一台的ip 为 192.168.10.197,一台为192.168.10.198,对外提供服务的vip 为192.168.10.200 备注:heartbeat 本身是不能做到服务不可用自动切换的,所以用结合 额外的脚本才可以做到,本文中提到的moniter 脚本即为实现某个 mysql 服务不可用的时候自动切换的还可以自动报警 安装和配置过程分为如下几步: 第一部分:mysql 的安装配置 1 安装 1.1. 添加mysql

centos 7之keepalived双机热备理论+配置文件详解

一.keepalived工作原理及作用: keepalived最初是专门针对LVS设计的一款强大的辅助工具,主要用来提供故障切换和健康检 查功能--判断LVS负载调度器.节点服务器的可用性,及时隔离并替换为新的服务器,当故 障主机回复后将其重新加入群集.单独部署LVS环境的话,调度器发生宕机的话,整个群集就 失效了,某一个web节点宕机后,客户端在访问时,总会碰上访问不到网页的情况,所以,将 keepalived和LVS结合起来,才可形成一个真正的高可用群集,当然,后端的共享存储也必须 搭建一个