VMware使用vmkfstools命令将厚置备虚拟机磁盘转为精简置备

文化   科技   2024-10-17 21:26   北京  


正文共:1234 字 17 图,预估阅读时间:2 分钟

前面介绍了VMware中用于管理VMFS卷、存储设备和虚拟磁盘的命令-vmkfstoolsVMware存储管理命令vmkfstools使用指南,主要就是为了今天这个案例。起因是我之前创建了一台Windows虚拟机,磁盘没有配置成精简置备,现在找了比较多的存储资源,虚拟机多了之后总想着把这台虚拟机优化一下。

主要的操作就是转换磁盘格式。

回顾一下,本次操作主要涉及两种磁盘格式:zeroedthick和thin。zeroedthick 即厚置备模式,新建的磁盘默认是这种格式。虚拟磁盘所需的空间是在创建过程中分配的;在创建过程中,物理设备上剩余的任何数据都不会被擦除,而是在从虚拟机首次写入时按需清零,虚拟机不会从磁盘中读取过时的数据。thin即精简置备模式,与(zeroed)thick厚格式不同,虚拟磁盘所需的空间在创建过程中不会分配,而是根据需要提供、清零。

为了对比明显,我们新建两台虚拟机,虚拟机Windows-thick的磁盘配置成厚置备。

虚拟机Windows-thin的磁盘配置成精简置备。

两台虚拟机都安装的Windows 7操作系统,安装完成之后的系统内磁盘使用率相同,均剩余38.6 GB。

然后我们打开数据存储浏览器,看一下磁盘使用情况。首先是Windows-thin,实际磁盘文件大小为7.36 GB。

和实际显示占用的21.2 GB之间存在13.84 GB的差距,但如果我们在系统磁盘中查看隐藏文件就清楚了,有两个系统文件:hiberfil.sys和pagefile.sys,这两个文件都是Windows操作系统中的系统文件,合计占用了将近14 GB的磁盘空间。

hiberfil.sys是Windows的休眠文件。在开启了休眠功能的Windows系统中,当内存大于物理内存时,休眠文件将被创建,用于将内存数据保存到磁盘中,以便在系统唤醒时能够恢复到休眠前的状态。

pagefile.sys是Windows的页面文件。页面文件是虚拟内存的一部分,它用于扩展物理内存的容量。当系统运行程序时,如果程序需要的内存超过了物理内存的容量,系统就会将一些内存数据存储到页面文件中,以便释放物理内存的空间给需要运行的程序。页面文件通常是隐藏的系统文件,而且可以手动设置其大小。

然后是Windows-thick,实际磁盘文件大小为60 GB,和分配的大小一致。

既然如此,我们测试一下在Windows-thin中复制文件,向桌面添加一个108 MB的文件,此时再查看磁盘文件大小,增长了0.11 GB,基本匹配。

然后我们进入ESXi的命令行后台,查看Windows-thin的资源使用情况。

上半部分为开机状态的资源情况,下半部分为关机情况的资源情况。可以看到,两种情况下的差距主要为开机时多了两个.vswp文件,磁盘文件显示的大小都是60 GB,但是总的使用量分别为15.44 GB和7.47 GB,关机情况下的使用率和数据存储浏览器中看到的基本一致了,而差的8 GB空间就是.vswp文件占用的空间。

对比Windows-thick的资源使用情况,两个.vswp文件占用的空间基本一致,关机情况的总使用量为60 GB。

回顾一下,vmkfstools命令转换磁盘格式的命令子选项为-d|--diskformat。KVM精简磁盘使用的是qemu-img命令qemu-img命令手册,操作方式为压缩磁盘不是KVM不支持精简置备的磁盘,而是VMM,可以直接-c选项进行操作。但是vmkfstools的-d是一个子选项,需要跟着-c创建命令或-i克隆命令一块使用,创建肯定是不合适了,那就只能是克隆了。

我们先试试它能不能单独使用。

vmkfstools -d thin /vmfs/volumes/datastore1/vmware-windows/vmware-windows.vmdk

报错了,缺少命令参数。再结合克隆命令转换磁盘格式试一下:

vmkfstools -i /vmfs/volumes/datastore1/vmware-windows/vmware-windows.vmdk /vmfs/volumes/datastore1/vmware-windows/windows-thin.vmdk -d thin

可以看到,虽然克隆出来的文件还是60 GB,但是总的空间就只有67.35 GB了,在数据存储浏览器中查看,磁盘大小为7.35 GB。

最后就是验证了,先移除掉之前的厚置备的硬盘。

然后添加一块现有硬盘。

选择到克隆的精简置备磁盘,不过类型和大小识别不是很准确。

挂载之后状态就正常了。

开机看一下,首先需要按提示重新启动。

然后状态就正常了,验证通过。

长按二维码
关注我们吧

VMware存储管理命令vmkfstools使用指南
ip route命令操作指南
软考里面竟然开始考H3C CAS了,突击补一下课
H3C iMC智能管理中心平台PLAT(7.2_E0403)部署实验
H3Linux部署iMC智能管理中心平台PLAT-7.3_E0706实验
H3C iMC智能管理中心平台PLAT部署EIA/UAM/TAM组件
MSR810配置无线Portal认证
MSR810配置本地认证的无线802.1X认证
MSR810使用iMC做认证服务器配置Portal认证
捡了一台FortiGate-VM64,怎么用起来呢?
来吧,给大家分享一下最新版本的FortiGate-VM64,带试用授权
不用猜了,FortiGate和FortiOS都是永久授权,而FortiFirewall没有试用授权
不需要授权的FortiOS和FortiGate有什么差异?
FortiOS和FortiGate除了在功能上的细微差异,性能差别大吗?
飞塔FortiGate的IPsec VPN应该怎么配?
使用IKE数字签名RSA认证建立IPsec隧道的配置案例
开启Hyper-V之后用不了VMware了,怎么破?
能找到Hyper-V和VMware共存的方法吗?
豁出去了,真机带业务演示一把ESXi 6.7升级7.0 U3

铁军哥
高级网络规划设计师,原中国电信高级技术规划工程师,天翼云认证高级解决方案架构师,H3C认证网络工程师。 继续加油,努力传播知识,影响更多人!
 最新文章