HA 配置不当可导致灾难性后果
再次提醒, HA配置不当可导致灾难性后果!!!
以前贴HA工作原理的时候曾经提醒过这个. 今天终于有人踩了地雷.
今天上午, 网络运营部门运行DNS, 计费系统的20VM被ESX强制关机. 导致近20分钟的total outage.
它们有一个小VI3环境, 配置也很简单:
ESX01 – (SC IP: X.X.X.90, SC GW: X.X.X.10)
ESX02 – (SC IP: X.X.X.91, SC GW: X.X.X.10)
VC01 – (IP: X.X.X.51, GW: X.X.X.10)
GW 是一个ROUTER的口地址.
ESX01与ESX02同属于一个HA/DRS cluster.
各运行10台VM
他们计划为ESX01添加一块网卡:
1. 首先将ESX01上的10台VM VMotion到ESX02
2. 关闭ESX01, 添加网卡
3. 启动ESX01
4. 将10台VM VMotion回到ESX01上.
第一步VMotion成功, 20台VM在ESX02上正常运行. 接着他们在ESX01的service console上将ESX01 shutdown, 安装网卡的过程中, 却发现原来在ESX02上正常运行的20VM全部被关闭了. 他们判断可能是ESX02的资源分配有问题. 手动启动了一些VM, 可是过不久, 启动后的VM又被ESX02关闭. 情急之下, 他们开始向其他部门求援.
我们分析象HA出现所谓的”脑裂”现象, 提示他们赶紧放弃trouble shoot ESX02, 立即启动ESX01, 果然, ESX01启动之后, ESX02不再自动关闭VM. 系统逐渐恢复正常.
分析原因:
1. 从service console shutdown ESX01, ESX01并没有退出HA cluster (应该在VC上先进维护模式在shutdown)
2. 由于ESX01/ESX02同处与一个HA cluster, 他们互相检查对方的状态.
3. 当ESX01被关闭后, ESX02发现失去与ESX01的联络, 这时ESX02要判断是ESX01出了故障还是ESX02本身出故障.
4. ESX02默认的的判断方式是PING SC 的网关 (可以手动设置成其他地址), 如果回应了, 则认为是ESX01出现问题, 如果没有回应, 则认为自己被孤立了(本机出现网络故障), 如果被孤立, ESX02就会关闭所有的VM, 释放对这些VM的盘文件的锁定, 以便让ESX01接管对这些VM的控制. 碰巧他们的SC 网关又被设置成不响应ICMP. 这下, 所有能出问题的地方的都出了问题, ESX02得不到来自ESX01及SC网关的响应, 认为自己是被孤立了, 便开始关闭VM.
其实这时候个轻易避免的错误: ESX01进入维护模式; 暂停HA; 开启SC GW的ICMP响应; 指定其他的故障检测地址; 或是将”孤立”默认响应从”关闭VM”改成”维持VM运行”. 做了其中的任何一项都能避免问题的出现.
解决故障时间不到10分钟, 检讨可就够他们去写一两个星期了…
松鼠 发表于: 2009-09-27
我要回答相关推荐
-
Dell md 3200连接两台esxi主机做HA,从机存储连接老是非活动,大家帮忙下,谢了。
-
请问一下,为什么我的HA里面3台服务器,就有一台总待机
-
xenserver下在配置HA时,我的物理服务器是3台,再全局下有个故障服务器书,设置1和2台会有啥区别呢?
-
VC在物理机上,SQL在HA的虚拟机里,现在想把SQL弄出来,不要放到HA里面,请问有什么办法?
有个问题想请教一下,我VC和SQL是分开安装,VC是在物理机上,SQL是HA的虚拟机里,现在想把SQL弄出来, […]
-
HA环境 如何设置某个虚拟机固定在一台虚拟主机运行,禁止迁移