背景介绍
某企业虚拟化平台使用的软件版本为vsphere5.1,共享存储上每个lun都是1T的空间,今天检查时发现有一个lun的可用空间只剩下3%,于是开始寻找原因
排查步骤
1.首先使用ssh链接到Esxi物理主机,检查了该lun上运行的虚拟机,发现在该lun上只运行着一台虚拟机占用了964.2G的空间
2.打开该虚拟机配置,发现该虚拟机配置了3个厚置备类型的硬盘,硬盘空间分别为40G、200、500G,算上swap交换分区的32G一共是772G,也不会达到964G的容量
3.检查又发现在存储上该虚拟机置备的空间竟然是1.48T,这也就能理解为什么虚拟机磁盘使用量会超过772G
4.登录这台虚拟机系统,查看虚拟机实际使用的磁盘空间只有258G,排出了问题出在虚拟机系统上的可能
5.再次通过SSH工具链接到Esxi物理主机进入到该虚拟机目录进行查看,发现每个disk都有一个快照文件大小分别为1.7G、55.9G、134.5G,加上原来772G磁盘共计964.1G与图1中已使用的大小一致,得出问题的结果出在快照上
6.检查该虚拟机快照,发现该快照是vRanger备份时创建的,备份结束后没有成功删除导致。删除快照释放空间,至此排查完成
补充说明
给虚拟机尤其是厚置备的虚拟机做快照真是作死,以本次事件为例,做完快照后数据发生变化的部分会存储在772G空间之外的地方,由于虚拟机磁盘类型又是厚置备,所以实际使用的空间大小为:772+1.7+55.9+134.5=964.1G,而快照记录的是数据发生变化的部分,数据最大100%发生变化,即740G,此时虚拟机理论最大使用的空间为:(772+740)/1024=1.48T,这也就解释了该虚拟机的置备存储显示为1.48T的原因,最后总结一句,快照是方便,使用需谨慎。