一、场景描述
某VMware虚拟化平台配置10台物理服务器、两台博科融合交换机和一套双活存储,其中每台服务器配置两块万兆网卡和两块HBA卡,每个HBA配置一个16G 多模FC光模块, 虚拟机存储在双活存储中。
二、问题描述
某日,系统管理员在VMware虚拟化平台创建Windows Server 2012 R2虚拟机时,发现非常缓慢、耗时7分钟左右才能完成虚拟机系统重启、进入虚拟机系统操作也非常卡顿(异常运行的虚拟机简称Abnomal_VM)。
备注:截止故障发生时,该VMware虚拟化平台已运行3年左右。
三、解决思路
1、采用对比思路,查看VMware虚拟化平台是否存在正常运行的虚拟机。对比分析角度可从虚拟机所处物理主机和所处共享存储入手。
2、采用分层/分段思路,从虚拟机至物理服务器,从物理服务器至融合交换机,从融合交换机到存储,其中包含设备之间互联的线缆以及相关配件,如服务器的HBA卡和光模块等。
3、采用替换法思路,替换设备之间互联的线缆以及模块等。
四、具体操作
1、采用对比思路,查看VMware虚拟化平台得知,的确存在正常运行的虚拟机,该虚拟机(正常运行的虚拟机简称Normal_VM)所处物理主机和共享存储位置,与Abnormal_VM对比都存在差异,不过它们所存储的共享存储(即LUN资源)属于同一套双活存储。 以此得出的判断双活存储应该没有问题 。
2、把Abnormal_VM在线迁移至Normal_VM所处的物理主机和共享存储位置。经重启测试和系统操作测试发现,Abnormal_VM重启速度正常(1分钟以内),虚拟机系统操作流畅。
3、再次采用对比思路,分析两台物理主机的运行区别。查看两台物理主机CPU和内存利用率都是正常的,区别在于物理主机的HBA、接入融合交换机的接口以及相互连接的线缆等。
4、采用分层/分段思路,跳过物理主机HBA卡及其光模块,对比查看融合交换机的接口状态。
4.1、登陆VMware虚拟化平台查询物理主机HBA卡WWPN,查询方式如下图所示。

查询物理主机HBA卡WWPN
4.2、登陆融合交换机,依据物理主机HBA卡WWPN,查询物理主机HBA连接融合交换机的接口,如下图所示。

查询物理主机HBA连接融合交换机的接口
4.3、依据在融合交换机查询的连接接口,查询接口的工作运行状态,如下图所示。
查询接口的工作运行状态-异常状态。(Abnormal_VM所处物理主机HBA连接的接口)

查询接口的工作运行状态-异常状态
查询接口的工作运行状态-正常状态。(Normal_VM所处物理主机HBA连接的接口)

查询接口的工作运行状态-正常状态
4.4、依照上述方法,可查询融合交换机所有连接的FC接口的运行状态,然后统计成表格。根据FC接口的Lr_in、Ols_out、 Lr_out 、Ols_in的运行数值判断接口是否正常,如下图所示,标注绿色即是运行正常的接口。

接口运行状态统计表
4.5、依据融合交换机FC接口运行状态统计表,在VMware虚拟化平台,再次测试验证其它未标注绿色的接口。
4.5.1、测试方式:
首先,在线迁移Abnormal_VM至x.x.x.114物理主机,然后重启Abnormal_VM,判断其重启速度。
其次,在VMware虚拟化平台,切换x.x.x.114物理主机挂载共享存储LUN的活动I/O存储路径,测试物理主机的另外一个HBA卡连接的融合交换机FC接口,操作步骤如下图所示。

切换物理主机挂载共享存储LUN的活动I/O存储路径步骤1

切换物理主机挂载共享存储LUN的活动I/O存储路径步骤2
最后,根据测试结果,再次统计融合交换机FC接口的运行状态,完善“接口运行状态统计表”。
注意事项:切换物理主机挂载共享存储LUN的活动I/O存储路径,会影响该LUN其它虚拟机的工作运行,务必协调好测试时间窗口。
5、根据融合交换机FC接口运行状态统计表,发现两台融合交换机均有部分接口存在问题,以此推断融合交换机本身没有故障,有可能是光模块的问题或者连接线缆的问题。
通过替换法更换线缆,故障接口问题依旧未解决,因此最终推断融合交换机的光模块存在问题。
最终,通过采购新的16G 多模FC光模块并替换测试,Abnormal_VM重启正常,操作亦正常。
五、技术总结
1、对比法、分层/分段法和替换法是排查问题的常用方法,需要根据的实际情况,灵活组合使用。
2、博科融合交换机两对参数 "Lr_in " 和 "Ols_out " 以及 "Lr_out " 和"Ols_in " 的值相同,则表明SFP运行正常;如果一个数值明显高于另一个, 连接问题可能出现在交换机连接的对端或是交换机本身。
3、博科融合交换机常用命令总结
#查看某个FC接口的工作运行状态
VDX_1# show interface Fibrechannel 1/0/33
#查看FC接口连接对端设备的WWPN,即查看连接情况。
VDX_1# show fibrechannel login
五、备注
1、Lr_in、Ols_out、 Lr_out 、Ols_in参数含义
Lr_in -> Link reset In (primitive sequence), does not apply to FL_Port
Lr_out -> Link reset Out (primitive sequence), does not apply to FL_Port
Ols_in -> Offline reset in (primitive sequence), does not apply to FL_Port
Ols_out -> offline reset out (primitive sequence), does not apply to FL_Port
参考连接:http://www.iplaybit.com/archives/178.html