千家信息网

redhat6.5 heartheartbeat+drbd+mysql主库热备

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,一 环境准备1 环境主机名网卡磁盘mastereth0 桥接模式 eth0(192.168.1.10) 自定义模式(VMnet2)(192.168.2.10)VIP 192.168.1.200/210
千家信息网最后更新 2026年11月02日redhat6.5 heartheartbeat+drbd+mysql主库热备

一 环境准备

1 环境

主机名网卡磁盘
mastereth0 桥接模式 eth0(192.168.1.10) 自定义模式(VMnet2)(192.168.2.10)VIP 192.168.1.200/210系统盘+20G外接磁盘
slaveeth0 桥接模式(192.168.1.20) eth2 自定义模式(VMnet2)(192.168.2.20)VIP 192.168.1.200/210系统盘+20G外接磁盘
server3eth0 桥接模式 (192.168.1.30)系统盘

master

slave

server3

2 域名DNS

3 时间同步

4 网卡配置


5 磁盘情况

6 软件包位置

链接:https://pan.baidu.com/s/1W2-jeaK_tc-abvSZzmRaiw
提取码:4evz

二 软件安装

1 drbd 简介

1 drbd 原理

drbd 是工作在文件系统之下,是基于块的迁移
drbd的迁移
文件系统------buffer-cache--------网卡传递到另一端------裸设备-----drbd写入磁盘
drbd 数据分为两部分,数据存储部分和元数据部分。

2 drbd 复制模式

协议A:本地写成功后就返回给客户端。
协议B:半同步的协议,本地写成功,发送到对端后立即返回,
协议C:发送到对端,并成功写入并进行缓存。

3 DRBD 的应用模式

1 单主模式,及主备模式,为典型的高可用性几圈方案
2 复主模式,需要采用共享cluster文件系统,如GFS和OCFS2

4 缺点

当一端在运行时另一端是不可见的

2 drbd 安装

两端配置基本相同

1 磁盘分区

/dev/sdb1 为数据区域
/dev/sdb2 为元数据区域

2 格式化

元数据区域不能格式化

3 下载并解压安装drbd

A 解决依赖

yum -y install gcc kernel-devel kernel-headers flex

B 编译并安装

./configure --prefix=/usr/local/drbd.8.4.4 --with-km --with-heartbeat --sysconfdir=/etc/

make KDIR=/usr/src/kernels/2.6.32-431.el6.x86_64/
此处必须是自己uname -r 得到的内核,不一定是上面的内核

make install

检验

4 加载模块到内核


slave 端加载

5 配置



slave 端相同


相关解释

global {
usage-count no;

}

common{
syncer {
rate 100M; #同步占用的带宽
verify-alg crc32c; # 验证使用的算法

        }  }

#Primary for drbd1

resource data{
protocol C; # drbd使用的协议
disk {
on-io-error detach; #出现IO错误的处理方式
}
on master {
device /dev/drbd0; #drbd的设备
disk /dev/sdb1; #对应的数据分区
address 192.168.1.10:7788; #地址是监听自己心跳的IP地址
meta-disk /dev/sdb2[0]; #元数据位置
}
on slave {
device /dev/drbd0;
disk /dev/sdb1;
address 192.168.1.20:7788;
meta-disk /dev/sdb2[0];
}

}

6 初始化数据


其中data是上述资源的名称。

7 创建文件夹


8 启动服务


查看启动参数

相关参数解释:
注意:只有主备两边的DRBD都启动起来才会生效
cs:链接状态
ro:角色信息,此时的状态为Secondary/Secondary,表示两台主机的状态都是备机状态
ds:磁盘状态,Inconsistent/Inconsistent显示的状态内容"不一致",这是因为DRBD无法判断哪一方为主机,应以哪一方的磁盘数据作为标准
dw:磁盘写操作
dr: 磁盘读操作
ns: 网络发送
nr: 网络接受
如果主动端的NS和slave端的NR相同表示发送与接受同步 。

9 主动端宣告自己是primary

查看同步情况

10 创建挂载文件并测试


挂载同步测试


从端测试

恢复

3 heartbeat 简介

1 作用

通过heartbeat 可以进行故障转移并提供相关的服务
在故障转移期间也需要切换时间,常见的时间是5-20秒左右。但是能够确保业务一致性
heartbeat的高可用是服务器级别的,不是服务级别的。,服务的down机不会导致服务的切换。

2 Heartbeat 切换的常见条件

1 服务器down机
2 heartbeat 服务本身down机
3 心跳链接线down机

3 Heartbeat 消息类型

Heartbeat 高可用软件在工作过程中,一般来说,有三种消息类型,具体为:
1 心跳消息
越150字节,可能为单播,广播或组播,控制心跳频率及出现故障要等待多久进行故障转换

2 集群转换消息
Ip-request 和 ip-request-resp
当主服务器恢复在线状态后,通过ip-request消息请求备机释放主服务器失败时被服务器取得的资源,然后备份服务器关闭释放主服务器失败时取得的资源及服务。

被服务器释放主服务器失败时取得的资源服务后,就会通过ip-request-resp消息通知主服务器他不再拥有该服务器的资源及服务,主服务器收到来自被节点的ip-request-resp消息通知后,启动失败时释放的资源及服务,并开始提供正常的访问服务。
3 重传请求
rexmit-request 控制重传心跳请求。
以上心跳控制消息都使用功能的是UDP协议发送到/etc/ha.d/ha.cf 文件制定的任意接口,或指定的多播地址。

4 Ip地址接管和故障转移

Heartbeat 是通过IP地址接管和ARP广播进行故障转移
ARP 广播在主服务器故障时,备用节点接管资后,会立即强制更新所有客户端本地的ARP(及清除客户端本地缓存的失败服务器的VIP和MAC地址的解析记录),确保客户端和新的主服务器之间的对话

4 heartbeat 安装

1 安装heartbeat


2 复制配置文件

3 配置

配置密钥并配置其权限为600,必须为600

配置文件解析
Debugfile 调试日志存放位置

Logfile 日志存放位置

Logfacility local 在syslog 服务中配置通过locally 设备接受日志

Keepalive2 指定心跳间隔时间为2秒

Deadtime 30 指定若备用节点在30秒内没有接受达到主节点的心跳信号,则立即接管主节点的服务资源

Warntime 10 指定心跳延迟为10秒。当10秒内备份节点不能接受到主节点的心跳信号时,会向日志中写入一个警告日志,但此时不会切换服务

Initdead 120 指定在heartbeat 首次运行后,需要等待120秒才启动主服务器的资源,该选项用于解决这种情况产生的时间间隔,取值至少为deadtime的两倍,单机启动时会遇到VIP绑定很慢,为正常现象

Bcast eth2 指明心跳使用以太网广播方式在eth2接口上进行广播,如使用两个实际网络来传递心跳则 bcast eth0 eth2

Mcast eht2 225.0.0.1 694 1 0 设置广播通信使用的端口,694为默认使用的端口,一个是 TTL

Auto_failback on 用来定义当主节点恢复后,是否将服务自动切回

Node master 主节点主机名,

Node slave 备用节点主机名

Crm no 是否开启cluster resource manager (集群资源管理器)


复制到被动端

4 启动并查看



5 结合DRBD

5 mysql安装

1 配置yum源

2 安装mysql

3 配置/data 权限

4 配置mysql配置文件

5 启动mysql


6 删除slave端mysql

7 配置切换





三 配置mysql热备和从库

1 配置mysql热备

1 复制相关配置

2 关闭mysql并重启服务heartbeat

3 关闭mater

4 恢复

2 配置主从同步

1 配置server-id和二进制日志开启












重启服务器

2 配置数据库的导出和导入,保证同步之间的主从相同




3 配置主从同步

grant replication slave on . to admin@'%' identified by 'root123';

change master to master_host='192.168.1.200',master_user='root',master_password='root123',master_log_file='mysql-bin.000001',master_log_pos=319;
此 192.168.1.200为heartbeat 的VIP,专用于数据链接

测试



服务 配置 服务器 数据 模式 磁盘 节点 文件 资源 同步 消息 故障 状态 地址 日志 系统 广播 主机 时间 切换 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 博彦科技互联网金融 江苏根荣互联网科技 互联网和科技创新 朗新科技与工业互联网 互联网科技的英文 云电互联网科技 有木互联网科技 宁波青枫互联网科技有限公司 福州新华互联网科技学校 知乎 华服互联网科技官网 互联网大会黑科技排名 互联网科技公司有风险吗 玉溪互联网科技怎么选 互联网媒体平台算高科技产业 民营互联网公司国防科技 广州千川互联网科技有限公司 陕西云淼互联网科技公司 互联网科技企业商标注意事项 恒生科技指数 中概互联网 广州全民伙伴互联网科技有限公司 北京路客互联网科技有限公司 互联网科技财经 有木互联网科技 互联网科技类展会 成都玖崟互联网科技有限公司乐商圈怎么样 互联网科技教育视频 哈尔滨屹滨互联网科技有限公司 中国互联网十大科技股排名 广州千川互联网科技有限公司 互联网科技创新方面的资料
0