drbd + lustre + heartbeat 的failover问题请教

发布于 2022-09-24 02:16:56 字数 1679 浏览 13 评论 0

想请教个问题。

上次做过一个简单的lustre的测试。

现在要做这个, 准备用drbd +  lustre + heartbeat, 因价格的投入问题,不共享式的存储,只能用drbd+heartbeat来实现mds的系统级容灾,做了raid1实现磁盘级的容灾. OSS的机器用的RAID5, 因成本暂不考虑容灾。

drbd,  lustre, heartbean, 都是比较复杂的软件, 这个,会不会对后期的维护带来很大的复杂性?并且软件运行的状况, 也有待时间的考验。 有没有在生产环境中三个一起搭配的案例?

另外, 想请教一下,
1. 两台mds(比如mds0,mds1), 下面哪种方案比较合适呢:
A. mds0, mds1使用真实IP, mkfs的时候,使用--failnode参数:
create MDT file system:

  1. mds0# mkfs.lustre --fsname=cfs --mdt --mgs --failnode=mds1@tcp0 /dev/drbd0

复制代码
create OST file system:

  1. oss0# mkfs.lustre  --fsname=cfs --ost --mgsnode=mds0@tcp0 --mgsnode=mds1@tcp0 /dev/sdb1

复制代码

B. mds0, mds1使用一个虚拟IP(VIP), 通过heatbeat在active的机器上浮动:
create MDT file system:

  1. mds0# mkfs.lustre --fsname=cfs --mdt --mgs --failnode=VIP@tcp0 /dev/drbd0

复制代码
create OST file system:

  1. oss0# mkfs.lustre  --fsname=cfs --ost --mgsnode=VIP@tcp0 /dev/sdb1

复制代码

2.OST设置时, 使用timeout多少比较合适呢?我使用了如下两个参数:
--param sys.timeout=10  --param failover.mode=failout

3. 如果在(1)中使用的是A, 那么MDS做failover, heartbeat中必须使用STONITH吗?如果primary(mds0)坏了, secondary(mds1)接替了, 然后mds0又起来了, 这时候OST写数据的时联系mds0,发现他不可用(因为如果drbd运行正常,则drbd盘已经挂到mds1上,应该已经从mds0上卸掉了。但。。。但是。。。会不会因为某些原因, 比如火星人入侵,没有卸掉???),则去联系mds1。这时候, mds0变为了备用角色,mds1为primary了。
我理解的对么?

[ 本帖最后由 moxnet 于 2008-3-7 23:26 编辑 ]

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

北方的韩爷 2022-10-01 02:16:56

使用了vip的方式, 可是有一事不明:

为什么mgs上的lustre,不在浮动IP上监听呢?
netstat看到有在0.0.0.0上监听, 可是,比如mgs的eth0的ip为10.0.0.1, 在eth0上加了另一个浮动IP(VIP)10.0.0.3, 当ost配置mgsnode地址为10.0.0.3的时候,ost死活挂不上去,提示没有mgs,而配置为10.0.0.1的时候可以挂上去。

可确认10.0.0.3的地址确实已经绑到eth0上。

  1. [root@mds0 ~]# netstat  -na
  2. Active Internet connections (servers and established)
  3. Proto Recv-Q Send-Q Local Address               Foreign Address             State
  4. tcp        0      0 0.0.0.0:988                 0.0.0.0:*                   LISTEN
  5. ***********  OTHER LINES    *********

复制代码

柒七 2022-10-01 02:16:56

默认是eth1,在安装的时候你也可以指定吧。我记得是这样的

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文