桌面云虚拟机卡顿故障

发布时间:  2015-03-05 浏览次数:  744 下载次数:  1
问题描述
虚拟化环境出现部分虚拟机使用卡顿。在CNA上统计IO延时,发现IBM存储对应的LUN IO读写不高,但IO延时每间隔5S左右会达到1000ms以上,IO 利用率达到100%。
处理过程
1. 在卡顿虚拟机所在CNA上执行“IOSTAT”命令,发现IBM存储对应的LUN IO读写不高,但IO延时(await)每间隔5S左右会达到1000ms以上,IO 利用率(util)达到100%。此现象说明CNA到IBM储存读写延时较大,到S2600T正常。
2. 进一步排查10台CNA的系统日志,发现日志中都有 “end_request: I/O  error, dev  sdb, sector  xxx” 错误,对应的WWN为“wwn-0x600a0b800047bd1a00003eb253da0bb2”和“wwn-0x600a0b800047bd1a00003eb453da0bd0”,日志说明CNA在这两个LUN上读写数据时出现错误。
3. 在FusionCompute中查询,异常LUN在IBM存储上,对应的数据存储为“SYVIR_IBM_FC_SAS01”和“SYVIR_IBM_FC_SAS03”,IBM存储上另外一个数据存储“SYVIR_IBM_FC_SAS02”业务正常。



4. 在IBM储存管理平台上查看,异常LUN在同一个raid组中。
5. 登录S2600T和IBM正常LUN上的虚拟机进行测试,虚拟机运行正常,未出现卡顿。
以上5点可以确认,IBM存储异常导致用户虚拟机慢。
6. IBM储存一个机头挂了2个硬盘框,每个硬盘框一个raid组,其中一框正常,另外一框有异常,可以说明CNA到光交换机再到存储控制器光链路正常。
7. 收集IBM存储的日志,发现 majorEventlog.txt 中一直打印“Controller cache not enabled or was internally disabled”和“Mode select for redundant controller page 2C received”两条错误日志,在网上搜索有相应的案例,根据案例排查,异常LUN所属控制器在不停切换。通过将异常LUN绑定到IBM的B控制器上,业务恢复正常,CNA侧 “I/O   error”错误日志不再出现。
综述:虚拟机卡顿原因为IBM存储异常,导致归属A控制器的两个LUN在两个控制器间不停切换,导致LUN读写性能下降,虚拟机出现卡顿现象。
根因
IBM存储中两个LUN在两个控制器间不停切换,导致LUN读写性能下降,最终导致虚拟机出现卡顿。
解决方案
临时规避方案:
将异常LUN绑定到IBM的B控制器上,防止LUN来回切换,导致性能下降。
解决方案:
1. 解决IBM存储异常。
2. IBM存储使用四年已过保,存在风险,可通过购置新存储,通过FusionCompute存储热迁移功能将业务迁移到新存储上。

END