CAS系统的虚拟机上传文件导致CVK主机重启问题
一、 问题描述:
工程师反馈往CAS平台下的一台Windows Server 2008虚拟机上传4GB左右的安装文件,大约上传60%左右时该虚拟机所在的CVK主机发生自动重启现象。
现场多次操作验证发现问题必现,并且在另一台CVK做同样的操作也会导致CVK主机重启。
二、 过程分析:
初步怀疑:在往虚拟机上传大文件的时候,占用虚拟机所在的CVK主机的内存,导致内部不足,从而使CVK主机重启。于是现场工程师暂停其他的虚拟机,重新往该Windows Server 2008虚拟机上传安装文件,同样触发CVK主机重启。因此,排除往虚拟机上传安装文件导致CVK主机内存不足而导致主机重启的问题。
分析现场收集的CAS日志信息(主机的syslog日志文件),发现在CVK主机重启前有大量的IO读写错误。
Apr 8 20:26:51 CVK02 kernel: [ 1847.209979] Buffer I/O error on device sdb, logical block 925122695
Apr 8 20:26:51 CVK02 kernel: [ 1847.209984] lost page write due to I/O error on sdb
Apr 8 20:26:51 CVK02 kernel: [ 1847.209988] Buffer I/O error on device sdb, logical block 925122696
根据上述的分析,可以初步判断CVK挂载的共享存储存在问题,于是做了如下的验证操作。
在CVK01服务器的/vms/jiujiuang/目录下成功创建测试文件test,如下图所示。
但是执行sync命令,将缓存中的数据写到磁盘时,发现在syslog系统日志出现报错信息。
因此可以判断存储设备出现故障或者CVK主机与存储的链路出现故障。
检查CAS的存储池界面,确认共享存储池正常,排除CVK主机与存储设备的链路故障,因此判断存储设备故障。
登录存储设备后,发现在告警信息中出现了“紧急”的警报,如下图所示。
告警的大致意识为“jujiang”存储卷已满,往该存储卷写数据会出现写失败问题。
从上述的分析,可以判断是存储卷已满导致往虚拟机上传文件失败,但是从CAS平台查看该存储卷的空间占用率不高,并不是像存储设备中描述的一样“存储卷已满”。
继续分析存储设备,发现分配给CVK主机使用的“jiujiang”存储卷使用了精简配置,如下图所示。该存储卷分配了4TB,已占用154.89GB,并没有占满,为什么会提示被占满呢?
原因为该存储设备还创建了其他的存储卷,把存储设备的空间占满了,占用了“jiujiang”存储卷的存储空间(精简配置导致)。
存储卷被占满的问题原因找到了,但是为什么会导致CVK主机重启呢?这个是由于CAS系统的共享文件系统机制导致的,共享文件系统与存储设备有连接保持机制,当超过60秒没有交互报文时共享文件系统会触发CVK主机重启。当往虚拟机机写大文件时,共享文件系统与储存设备的交互报文被冲掉导致CVK主机重启。
三、 解决方法:
登录存储设备释放其他存储卷上的存储数据,问题解决。
四、 总结:
存储设备的存储卷的分配模式分为精简模式和厚配置模式。
厚配置模式下如果配置了1T的存储卷,那么就实际占用了1T的存储空间,其他的存储卷就不能占用该1T的存储空间;而精简模式下如果配置了1T的存储卷,实际只有100GB的数据,那么就占用100GB的存储空间,剩余的存储空间有可能被其他的存储卷占用。
因此,精简模式下就会出现从CVK主机查看到的存储卷占用率和存储设备查看到的占用率不一致的问题。如本问题出现的存储设备上显示存储卷的存储空间被占满,而CVK主机显示的存储空间没有占满问题。
在实际的项目实施中建议:在存储设备中配置厚配置模式的存储卷。
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作