DRBD+Heartbeat+NFS

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

 DRBD+Heartbeat+NFS

DRBD是一种块设备,可以被用于高可用(HA)之中.它类似于一个网络RAID-1功能.当你将数据写入本地文件系统时,数据还将会被发送到网络中另一台主机上.以相同的形式记录在一个文件系统中.本地(主节点)与远程主机(备节点)的数据可以保证实时同步.当本地系统出现故障时,远程主机上还会保留有一份相同的数据,可以继续使用

Heartbeat来实现高可用性HA群集,已达到实时监控主节点的运行状态,一旦主状态死掉,处于备份状态的节点立即激活为主状态,实现高可用性

NFS网络共享服务,通过DRBDHeartbeat来实现NFS的高可用性。

一 基本配置

1、配置ip地址  

Server1  192.168.2.10/24

Server2  192.168.2.20/24

其中vip192.168.2.100/24

2、修改主机名

[root@localhost ~]# vim /etc/sysconfig/network

HOSTNAME=server1.a.com

[root@localhost ~]# hostname server1.a.com

[root@localhost ~]# vim /etc/sysconfig/network

HOSTNAME=server2.a.com

[root@localhost ~]# hostname server2.a.com

3、两个节点能够互相解析

[root@node1 ~]# vim /etc/hosts

192.168.2.10  server1.a.com

192.168.2.20  server2.a.com

----server1server2相同

4、创建两个大小相同的分区或一块硬盘

5、如果两台虚拟机时间不同步可以用hwclock -s 来同步时钟 ,或是NTF服务器

二 安装DRBD配置

1、安装配置

[root@server1 ~]# yum -y install drbd83 kmod-drbd83

[root@server1 ~]# vim /etc/drbd.d/global_common.conf

usage-count 用法统计设为no 可以提高性能

Protocol  C 使用C协议,提高数据存储安全

on-io-error io出错时拆除磁盘

net{ } 使用加密算法及密钥

syncer{} 同步速率

[root@server1 ~]# vim /etc/drbd.d/mysql.res       ----添加资源这里命名为mysql.res

server2server1一样配置

2、初始化资源,并启动服务

[root@server1 drbd.d]# drbdadm   create-md mysql

[root@server2 drbd.d]# drbdadm   create-md mysql

[root@server1 drbd.d]# service drbd start && chkconfig drbd on

[root@server2 drbd.d]# service drbd start && chkconfig drbd on

[root@server1 ~]# mkdir /data    ---建立挂载点

[root@server2 ~]# mkdir /data

3、server1

[root@server1 ~]# drbdadm  --  --overwrite-data-of-peer primary mysql  ---指定主节点在server1

[root@server1 ~]# mkfs -t ext3  -L drbdmysql  /dev/drbd0             ---格式化

[root@server1 ~]# mount /dev/drbd0 /data                            ---挂载

4、查看状态

[root@server1 ~]# drbd-overview  

  0:mysql  Connected Primary/Secondary UpToDate/UpToDate C r---- /data ext3 950M 18M 885M 2%

[root@server2 ~]# drbd-overview 

  0:mysql  Connected Secondary/Primary UpToDate/UpToDate C r---- 

---server1为主server2为辅

三 NFS配置

[root@server1 ~]# vim /etc/exports   ---添加如下:

/data  *(rw,sync)

[root@server1 ~]# vim /etc/rc.d/init.d/nfs   编辑启动脚本-2改为-9如下:

killproc nfsd -9

Server2server1配置相同

Heartbeat的配置

1、安装、配置

[root@server1 ~]# yum localinstall heartbeat-2.1.4-9.el5.i386.rpm  heartbeat-pils-2.1.4-10.el5.i386.rpm heartbeat-stonith-2.1.4-10.el5.i386.rpm libnet-1.1.4-3.el5.i386.rpm perl-MailTools-1.77-1.el5.noarch.rpm -y --nogpgcheck

[root@server1 ~]# cd /usr/share/doc/heartbeat-2.1.4/

[root@server1 heartbeat-2.1.4]# cp authkeys haresources ha.cf /etc/ha.d/

[root@server1 ha.d]# vim authkeys    

auth 3

3 md5 hello          ---md5验证

[root@server1 ha.d]# chmod  600  authkeys

[root@server1 ha.d]# vim ha.cf

debugfile /var/log/ha-debug   ---开启监控日志

keepalive 2                 ---两秒检测一次心跳线连

deadtime 10                ---10 秒测试不到主服务器心跳线为有问题出现

warntime 10               ---警告时间

initdead 120               ---初始化启动时 120 秒无连接视为正常

udpport 694               ---udp端口694连接

bcast    eth0       ---eth0上监测心跳     

node    server1.a.com

node    server2.a.com

auto_failback off           ---禁用回滚切换

respawn hacluster /usr/lib/heartbeat/ipfail    ---监控ipfail进程是否挂掉,如果挂掉重启

[root@server1 ha.d]# vim haresources

server1.a.com  192.168.20.100/24/eth0 drdbdisk::mysql Filesystem::/dev/drbd0::/data::ext3 nfsd

[root@server1 ha.d]# cd /etc/ha.d/resource.d/

[root@server1 resource.d]# vim nfsd           ---编写资源控制脚本如下:

killall -9 nfsd ; 

/etc/init.d/nfs restart ; 

exit 0

[root@server1 resource.d]# chmod 755 nfsd

Server2server1相同

在两节点上启动heartbeat

service heartbeat start 

server1上可以看到是主节点如下:

[root@server1 heartbeat]# drbd-overview 

  0:mysql  Connected Primary/Secondary UpToDate/UpToDate C r---- /data ext3 950M 18M 885M 2%

建立新挂载点,并挂载

mkdir /mnt/my

mount 192.168.2.100:/data /mnt/my

server1节点失效时,server2节点自动挂载分区

并通过mount 192.168.2.100:/data /mnt/my来挂载访问共享,不间断对共享数据的访问。!!!


本文转自 abc16810 51CTO博客,原文链接:http://blog.51cto.com/abc16810/1126417


相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
8月前
|
存储
keepalived+DRBD+NFS高可用存储
keepalived+DRBD+NFS高可用存储
118 0
|
Web App开发 Linux 开发工具
|
1月前
|
Linux Shell Windows
通过Linux挂载Windows端NFS服务实现板端Linux传输文件到PC
通过Linux挂载Windows端NFS服务实现板端Linux传输文件到PC
|
3月前
|
存储 监控 网络协议
【Linux】文件服务NFS(Network File System)
【Linux】文件服务NFS(Network File System)
35 0