vSAN存储开启磁盘空间回收

vSAN存储开启磁盘空间回收

虚拟机主要两种存储,传统存储和vSAN存储,传统存储使用VMFS6默认已经支持了自动空间回收。而厚置备默认已经提前置备好了,不存在空间回收的问题,本文主要介绍在vSAN下如何开启磁盘空间回收。(默认是不开启的)

在vSAN存储下,默认虚拟机是精简置备,随着时间推移,发现实际占用的空间超过了置备的空间。

vSAN 支持可用空间回收,也称为取消映射操作。VMware官网针对vSAN存储的回收参考《使用 SCSI UNMAP 回收空间》,写的不是很清晰。下面把设置详细步骤列出来。

其实主要关注这几点:

1、要在 vSAN 集群上启用取消映射,请使用以下 RVC 命令:vsan.unmap_support –enable

2、在 vSAN 集群上启用取消映射时,必须先关闭所有虚拟机的电源然后再打开电源。虚拟机必须使用虚拟硬件版本 13 或更高版本,才能执行取消映射操作。

3、vSAN 6.7 Update 1 及更高版本支持。

4、在 Windows 操作系统上,默认情况下 NTFS 执行内嵌取消映射。

5、在 Linux 操作系统上,脱机取消映射通过 fstrim(8) 命令执行,内嵌取消映射在使用 mount -o discard 命令时执行。

操作步骤

开启vCenter的SSH的访问;

输入root密码之后,提示Command>之后输入rvc administrator@vsphere.local@localhost,按照提示输入密码(此处密码就不是root的密码了)

cd 到对应数据中心的computers。(我这里数据中心名称是Datacenter,集群名称是vSAN)。

使用如下命令开启:

开启的命令是:
vsan.unmap_support -e +集群名称
关闭的命令是:
vsan.unmap_support -d +集群名称
如上图,提示集群开启unmap成功。

将虚拟机关机再开机,切记,是关机再开机,不是重启。注意:在虚拟机操作系统内直接重启无效。

对于Windows虚拟机操作系统,Windows server 2012之后的版本默认启用了该功能。可以使用下面Powershell命令查询:

Get-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\FileSystem" -Name DisableDeleteNotification  #查询的结果为0表示已开启
如上图表示虚拟机已经开启回收。

如果要开启自动回收,可以使用下面Powershell命令开启:

Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\FileSystem" -Name DisableDeleteNotification -Value 0   #开启自动回收

手动回收虚拟机空间,可以使用下面Powershell命令,DriveLetter后面跟的D为D盘。

Optimize-Volume -DriveLetter D -ReTrim -Verbose
dinghui.org

关注虚拟化及IT技术发展!

发表评论


The reCAPTCHA verification period has expired. Please reload the page.