Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1965575
  • 博文数量: 498
  • 博客积分: 2078
  • 博客等级: 大尉
  • 技术积分: 1645
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-18 22:43
个人简介

安大

文章分类

全部博文(498)

文章存档

2017年(1)

2016年(2)

2015年(21)

2014年(90)

2013年(101)

2012年(267)

2011年(16)

分类:

2012-12-13 10:22:24

原文地址:PowerHA故障案例分析 作者:dannyzhang

    最近遇到个HA无法成功切换的案例,觉得有点意思,和大家分享一下。系统的拓扑图简单示意如下:

A机与B都运行着各自的数据库或应用服务,采IBM PowerHA术实现双机互备,当A机故障时应用或数据库由B机进行接管,反之亦然,达到了主机硬件层面的高可用性;

另一方面,通过AIX操作系统自带的逻辑卷管理(LVM技术,在两套磁盘存储设备间建立数据镜像,当任意一套存储出现故障时,应用或数据库都依然能对外提供服务,从而实现存储层面高可用性。

这种结构虽然略显奢侈,但对于可靠性要求非常高的系统还是有必要的。

系统的物理部署图,如下所示:

   

 
A机、SAN交换机A和存储 A均放置在一个机柜A中,B机、SAN交换机B和存储B放置在另一个机柜B

    某日机柜A发生了断电,按照设想,由于有HA保护,B机应该接管A机资源,但事实上却没有成功,在B机上看不到A机的SVC IP,也没有VG资源,B机的HA似乎毫无反应,为啥呢?明明在日常测试的时候,这套HA是好的,可以正常切换,为啥要它工作的时候却罢-工了呢?幸好不是生产环境,要不然必定血压上升、心跳加速。

仔细查看了HA的日志文件,发现B机曾经尝试接管资源,但失败了。能从hacmp.out中看到如下信息:varyonvg: The volume group is not varied on because  physical volume is marked missing. Run diagnostics.信息其实提示的很明确了,B机在varyon vg时发现有些pv missing了,导致无法varyonvg

为啥有盘missing了?很简单,因为机柜A发生断电,存储A也掉电了,而vgA存储和B存储通过lvm镜像组成,B机无法正确识别B存储的磁盘,引起HA在接管资源时有了上述的报错。

仔细想想,vglvm镜像的,理论上讲,采用force的方式是能够varyon的,只要其中有一个存储是可以正常工作,依旧可以提供读写服务,lvm镜像本来就要达到这样的效果啊,是不是HA不支持这种情况啊?一台主机和一个存储不能同时坏?

答案是否定的,HA其实也考虑到了这一点,在Change/Show Resources and Attributes for a Resource Group中对于vg,有这么一个选项“Use forced varyon of volume group,if necessary”,使用了该选项,HA是可以强制将vg varyon的,只不过这个选项很少引起大家的注意。

本博客不再更新,如有需求请关注微信公众号:bankit2014


阅读(573) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~