两台Linux完美实现双机热备

发表于:2009-11-17 10:52

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:51Testing软件测试网采编

#
Linux
#
linux

  一直想做基于linux的双机热备,一直没有时间和机会。一直以为只要做双机热备的实验就必须两台机器外接一个存储。甚至一个月以前在学习keepalived的时候还在琢磨keepalvied去掉哪些条件可以实现双机热备。直到一个月以前设计存储方案的时候部门老大给了一个国外的链接介绍drbd+nfs实现nfs的热备方案的时候,我的眼前一亮,这不就是我一直想做的不依靠存储实现热备的解决方案吗?

  先来纠正一下自己的错误认识吧,没接触keepalived和heartbeat的时候,道听途说的认为keepalived出现以后就没有必要再用heartbeat了。在仔细学习了这两个传奇人物以后发现:keepalived是专门为高可用的集群而诞生的,而heartbeat生是双机热备的人死是双机热备的死人。

  好了,说说本文实现的原理吧。大体来说就是heartbeat+drbd。heartbeat自是不用说,用它来实现资源的统一调度;而drbd就是本文的重头戏。这一个什么东东呢?官方的东东咱就不说了。用咱们自己的话说,就是实现两台机器的两块硬盘的实时完整复制(drbd即磁盘镜像)。它的出现,解决了两台机器做双机时的数据一致性问题。

  ok,废话半天,说一下本文的实现环境:

  os:ubuntu9.04

  ip1:192.168.1.11 drbd1

  ip2:192.168.1.12 drbd2

  disk:/dev/sdb1(一个8G的分区)

  通过drbd,挂在每台机器上的sdb1这块分区将成为咱们“存储”。let's go !

  ++++++现在开始两台机器配置一样++++++

  1.设定hosts

  vi /etc/hosts

  192.168.1.11 drbd1

  192.168.1.12 drbd2

  注意:比如在1.11这台机器上。drbd1是你执行hostname命令看到的,而不是随手一写的哟:)

  2.安装并配置drbd

  1).安装drbd。

  你可以去http://oss.linbit.com/drbd/下载最新的版本。本文为了方便直接从ubuntu的源进行安装

  apt-get install drbd8-utils

  2).创建配置文件

  如果用apt-get或者yum的方式安装的话,会默认创建配置文件,而编译安装则不会。不管直接清空或改名,写入以下内容。

  vi /etc/drbd.conf
  common {
  syncer { rate 10M; }           #速率
  }
  resource r0 {
  protocol C;
  disk { on-io-error detach; }
  on drbd1 {                     #drbd1为第一台机器的机器名
  device /dev/drbd0;         #创建的虚拟资源
  disk /dev/sdb1;            #实际的物理分区,一定要注意,是一个单独的分区,而且是未经格式化的
  address 192.168.1.11:7788; #第一台机器的ip地址,及通讯端口
  meta-disk internal;        #类型,局域网
  }
  on drbd2 {
  device /dev/drbd0;
  disk /dev/sdb1;
  address 192.168.1.12:7788;
  meta-disk internal;
  }
  }

41/41234>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号