Centos6.0系统drbd+heartbeat+nfs实现高可用文件存储

简介:

本文centos6.0系统:

使用drbd镜像技术实现后台两台服务器数据同步,使用heartbeat实现自动切换,开启nfs提供文件服务

021305437.jpg

node1:192.168.182.132

node2:192.168.182.128

vip:192.168.182.200

1、配置hosts,安装drbd、heartbeat、nfs

1>、node1、node2:

vim hosts

192.168.182.132    node1
192.168.182.128    node2

2>、drbd:

yum -y install gcc kernel-devel kernel-headers flex libnet
tar zxvf drbd-8.4.3.tar.gz
cd drbd-8.4.3
./configure --prefix=/usr/local/drbd --with-km
make KDIR=/usr/src/kernels/2.6.32-71.el6.i686/
make install
mkdir -p /usr/local/drbd/var/run/drbd
cp /usr/local/drbd/etc/rc.d/init.d/drbd /etc/rc.d/init.d
chkconfig --add drbd
chkconfig drbd on
cd drbd
cp drbd.ko /lib/modules/`uname -r`/kernel/lib/
depmod
modprobe drbd

cd /usr/local/drbd/etc/drbd.d

mv global_common.conf global_common.conf.bak
vim global_common.conf
global    {
  usage-count    yes;  #是否参加DRBD使用者统计,默认yes
  }
  common    {
  net    {
     protocol    C;  #使用drbd的第三种同步协议,表示收到远程主机的写入确认后,则认为写入完成.
  }
  }

vim r0.res

resource    r0    {
      on node1    {   #每个主机的说明以on开头,后面是hostname
      device    /dev/drbd1;   #drbd设备名
      disk    /dev/sdb1;  #/dev/drbd1使用的磁盘分区是/dev/sdb1。
      address    192.168.182.132:7789;    #设置DRBD的监听端口,用于与另一台主机通信。
      meta-disk    internal;
  }
      on node2    {
      device    /dev/drbd1;
      disk    /dev/sdb1;
      address    192.168.182.128:7789;
      meta-disk    internal;
  }


3>、 启动DRBD

drbdadm create-md r0

/etc/init.d/drbd start

node1:执行

drbdsetup /dev/drbd1 primary --o

mkfs.ext4 /dev/drbd1

我们将其挂载到/root/data

022501105.jpg

目前为止:drbd安装完毕,已经同步,更详请见:

http://lansgg.blog.51cto.com/5675165/1194252

4>、在node1、node2上配置nfs(一样操作)

yum install nfs rpcbind -y

vim /ect/exports

/root/data    *(rw,no_root_squash,async)

/etc/init.d.nfs restart

2、现在开始安装heartbeat及配置

yum install heartbeat -y

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

1、node1配置ha.cf

logfile    /var/log/ha-log

logfacility    local0

keepalive 2

deadtime 30

warntime 10

initdead 120

udpport    694

ucast eth0 192.168.182.128

auto_failback off

node node1
node node2

ping 192.168.182.2

respawn root /usr/lib/heartbeat/ipfail

++++++++++++++++++++++++++++++++

node2的ha.cf和上面一样,只是ucast eth0 192.168.182.132(对方IP)

配置/etc/ha.d/authkeys

auth 2
#1 crc
2 sha1 heartbeat
#3 md5 Hello!

node2同上

配置/etc/ha.d/haresources 

node1 IPaddr::192.168.182.200/24/eth0 drbddisk::r0 Filesystem::/dev/drbd1::/root/data::ext4 nfs

node2同上

cp /usr/local/drbd/etc/ha.d/resource.d/drbddisk /etc/ha.d/resource.d/

node2同上

4、启动heartbeat

/etc/init.d/heartbeat start

现在为止:你会发现node1上网卡

023916723.jpg

将node1上heartbeat关闭:你会发现node2

024132262.jpg

drbd自动升级primary

vip自动漂移

mount 自动挂载

Ps:同样,你启动node1的heartbeat,关闭node2的,你会发现,node1的nfs,drbd,vip都进行了相应的操作;

5、测试:

在客户端进行挂载,并且也挂载到当前的/root/data

024838301.jpg

继续测试:

1、当你在客户端写入文件时,进行node间的切换尝试;

看此时写数据有影响不,发现DRBD+Heartbeat正常切换还是需要些时间的;

2、正常状态下关机Primary机,然后看数据有无问题,观察DRBD的status;然后等主机启动后,再观察变化,然后再关机secondary,然后再启动,观察DRBD变化及Heartbeat起作用了没。





本文转自 西索oO 51CTO博客,原文链接:http://blog.51cto.com/lansgg/1205281

相关文章
|
2月前
|
Linux 虚拟化 数据安全/隐私保护
部署05-VMwareWorkstation中安装CentOS7 Linux操作系统, VMware部署CentOS系统第一步,下载Linux系统,/不要忘, CentOS -7-x86_64-DVD
部署05-VMwareWorkstation中安装CentOS7 Linux操作系统, VMware部署CentOS系统第一步,下载Linux系统,/不要忘, CentOS -7-x86_64-DVD
|
1月前
|
机器学习/深度学习 文字识别 Linux
百度飞桨(PaddlePaddle) - PP-OCRv3 文字检测识别系统 基于 Paddle Serving快速使用(服务化部署 - CentOS 7)
百度飞桨(PaddlePaddle) - PP-OCRv3 文字检测识别系统 基于 Paddle Serving快速使用(服务化部署 - CentOS 7)
29 1
百度飞桨(PaddlePaddle) - PP-OCRv3 文字检测识别系统 基于 Paddle Serving快速使用(服务化部署 - CentOS 7)
|
1月前
|
运维 网络协议 Linux
揭秘CentOS 7:系统目录奥秘大起底,网卡配置秒变高手,让你的服务器管理飞一般的感觉!
【8月更文挑战第5天】CentOS 7作为RHEL的社区版本,以其稳定性和丰富功能广受好评。本文通过案例分析介绍其系统目录结构及网卡配置方法。系统目录如/(根)、/bin(基本命令)、/boot(启动文件)、/dev(设备文件)、/etc(配置文件)、/home(用户目录)和/lib(共享库)等各司其职。网卡配置通过编辑/etc/sysconfig/network-scripts/下的ifcfg文件实现,如设置ens33接口的静态IP地址、子网掩码、网关和DNS服务器,并通过重启网络服务使配置生效。这是系统管理员必备的技能之一。
44 2
|
1月前
|
Linux 开发工具
CentOS7系统初始化个人配置
CentOS7系统初始化个人配置
|
2月前
|
Linux
CentOS 7 上挂载硬盘到系统
在 CentOS 7 中挂载硬盘,步骤包括:1、查找未挂载磁盘;2、创建分区;3、格式化为 ext4;4创建挂载点;5、挂载硬盘;6、检查挂载状态;7、 编辑 `/etc/fstab` 以实现开机自动挂载。
174 3
|
3月前
|
弹性计算 安全 Cloud Native
Alibaba Cloud Linux镜像系统超好用!兼容CentOS生态,性能稳定性绝对可以!
Alibaba Cloud Linux是阿里云的自研Linux发行版,兼容CentOS/RHEL,提供长期免费支持。它针对云服务器ECS优化,适用于多种场景,如Web服务、云原生应用等。Alibaba Cloud Linux 3基于Anolis OS 8,提供安全、高性能、十年维护及丰富的开源生态。用户可在ECS购买时选择镜像安装,支持多架构并提供热补丁、解决方案和快速启动版。更换ECS操作系统是免费的。
369 5
|
3月前
|
Java Linux 网络安全
技术心得记录:将centos7打造成桌面系统
技术心得记录:将centos7打造成桌面系统
109 0
|
4月前
|
存储 数据管理 Java
基于OSS、NFS构建高性能可扩展的遥感智能解译系统实践之路
该文探讨了构建高性能、可扩展的遥感智能解译系统的架构演进过程。作者强调架构应根据业务场景而定,而非追求单一的“最佳”架构。文章分为五个部分,介绍了从初步的业务场景分析到逐步优化的架构设计。 1. 业务场景描述了服务于地理信息行业的遥感数据管理平台,包括数据湖和遥感智能解译系统的功能和架构设计。 2. 初代系统解决了数据管理和智能解译的基本需求,但存在数据同步效率低下的问题。 3. 自动化阶段通过消息推送和数据接收模块减少了人工干预,将处理时间减半,但仍存在效率和稳定性问题。 4. 高性能阶段引入数据订阅/推送和数据接收Agent,实现了稳定、高速的数据传输,性能提升了6倍。
48802 2
|
4月前
|
Shell Linux 应用服务中间件
centos系统内容器部署服务访问不到是因为run后面加了bash
centos系统内容器部署服务访问不到是因为run后面加了bash
|
3月前
|
Ubuntu Linux
查看Linux系统是Ubuntu还是CentOS
查看Linux系统是Ubuntu还是CentOS
367 0