双机集群因存储出现“只读”故障导致虚机故障
本帖最后由 chickenes 于 9-6-2012 23:16 编辑硬件环境:2台8路10核IBM X3950 256G内存,因为是作为测试环境拥用机(不是用来测试vsphere的,而是里面跑的虚机都是给各个业务系统做开发和测试服务器的),所以网络线、心跳线、HBA卡和光线存储线都只接了一根,除了心跳之外接入了3各不同的网段。服务器CPU不到10%,内存消耗都在44%左右。
存储环境:初期接入2块HDS存储盘,都是1T,后期因为虚拟机的增加,又新增了2块1T的盘,并对原有的vmfs进行扩容,全部扩容至2T。都是vmfs5的版本
软件环境:vsphere5.0 补丁到6XXXX了,运行43个虚机,运行2个月一切正常
我用vsphere超过2年了,其他还有好几套虚拟机群在使用,最大的集群有6台x3850组成,最近准备全部用3950替代原有的服务器,以减少硬件数量。
今天中午想对其中一个虚机增加硬盘发现无法新增,报无法访问其中一个vmfs,然后再另一台虚机上对另一个vmfs进行新增硬盘同样报错。通过“浏览数据存储”打开vmfs后浏览正常,可以下载文件,但是无法上传报“存储I/O错误”。开启ESX的ssh服务后,后台登入esx底层操作系统,手工在存储上创建文件或目录都报错。
2台服务器间进行虚拟机迁移全部不成功报“该状态下无法进行迁移”
对2台服务器新增一块1T存储盘,想新建vmfs后对原有的虚机进行迁移再处理故障,服务器可以看到新增盘但是无法创建vmfs,
需要说明的是此刻,整个集群内虚拟宿主机、虚拟机群都未报错,只有一块存储因为剩余容量达到200G,到达存储的报警阀の出现红色预警,但是应该不影响整体运行。集群内虚机运行正常,初步检查光纤、SAN交换机、集中存储全部正常。
因下午开会暂时搁置,开会至下午4点,业务部门告其中一台服务器无法登陆,至vcent查看无法在“控制窗口”内打开界面,对该虚机进行重启,但无法再启动,报无法找到该服务器。
无奈将其中一台宿主机上所有的虚拟服务器进行关机,然后重启该宿主机(可惜忘记在一台宿主机重启过程中,依旧运行的宿主机上再测试下存储的读写情况),宿主机重启完成后,原在该宿主机上运行的虚机全部呈“灰”状态,无法开启电源,报无法定位该服务器。后手工从虚机清单中逐个删除,再从vmfs上手工添加到清单后,所有的虚机恢复正常。这时候所有的vmfs正常(2块2T的vmfs都正常了,可以上传下载数据文件),而这时候我只重启了一台宿主机。
检查所有的虚拟机、宿主机、存储都恢复正常,为了可靠起见后来讲另一台宿主机上运行的虚机全部迁移至另一台,然后重启宿主机。至此所有的故障消除
事后回想整个过程个人判断如下:
当时所有的存储处于一种“只读”状态,由于我的虚机硬盘全部是精简配置,因此虚机在运行时如果虚拟硬盘可以满足业务需要,所有的虚机都正常运行,但是当某块虚拟硬盘需进行自动扩容是时无法从vmfs上申请到容量,这时候该虚机出现了宕机。我目前怀疑是vsphere的某个进程对存储进行了锁定,倒是2台宿主机都无法对vmfs进行写入,而其中一台宿主机进行重启后,锁定进程被kill,释放了存储的读写权限。但是整体运行中煤油任何的系统预警发生,存储部分出现问题的可能性实在太小。
目前虽然问题解决了,但是具体原因还是不清晰。 看上去像是存储的路径发生了改变造成ESXi认为原来的存储“丢失”,而新发现的存储又是有预先格式化成VMFS的就自动挂上了。
检查下你的SAN日志吧 这个很容易 也很常见 ssh到机器上 /etc/init.d/hostd restart 一下就行了 因为存储的问题 hostd经常卡死 重启hostd他就会重新扫描vmfs就没问题了
其他的还有 在命令行下 esxcfg-swiscsi -s 强制重新扫描 iscsi卷 以上命令操作和在vclient上执行“全部重新扫描”有何差别 hostd restart 是重启 hostd 和扫描无关至于你在ui上执行会由于hostd挂住 而根本执行不了ssh上去才可以
页:
[1]