准备存储设备
根据 vSAN 的要求使用闪存设备和磁盘。
确认群集具有可支持预期虚拟机消耗以及虚拟机存储策略中允许的故障数主要级别的容量。
存储设备必须满足以下要求,以便可供 vSAN 进行声明:
1. 存储设备在 ESXi 主机本地。vSAN 无法声明远程设备。
2. 存储设备没有任何现有分区信息。
3. 在相同的主机上,无法同时存在全闪存磁盘组和混合磁盘组。
原始容量和可用容量
供大于虚拟机容量的原始存储容量以便能够处理某些问题。
1. 不要将闪存缓存设备的大小包括在容量中。这些设备不会供存储,并且除非您已添加闪存设备用于存储,否则这些设备将用作缓存。
2. 供足够的空间来处理虚拟机存储策略中的允许的故障数主要级别 (PFTT) 值。如果 PFTT 大于 0,将会增加设备占用空间。如果 PFTT 设置为 1,占用空间将加倍。如果 PFTT 设置为 2,占用空间将变为三倍,依此类推。
3. 通过检查各个主机上(而不是整合的 vSAN 数据存储对象上)的空间,确认 vSAN 数据存储具有足够的空间进行操作。例如,撤出某个主机时,数据存储中的所有可用空间可能位于您正撤出的主机上。群集将无法容纳撤出到其他主机。
4. 如果具有精简置备存储的工作负载开始消耗大量存储,请供足够的空间以防止数据存储容量不足。
5. 验证物理存储是否可以在 vSAN 群集中容纳主机的重新保护和维护模式。
6. 注意 vSAN 的可用存储空间开销。
7. 磁盘格式版本 1.0 会增加额外开销,每个容量设备约为 1 GB。
8. 磁盘格式版本 2.0 会增加额外开销,通常每个设备不超过 1-2% 的容量。
9. 磁盘格式 3.0 及更高版本会增加额外开销,通常每个设备不超过 1-2% 的容量。如果启用去重和压缩功能以及软件校验和,则每个设备需要约 6.2% 容量的额外开销。
vSAN 策略对容量的影响
虚拟机的 vSAN 存储策略会通过多种方式影响容量设备。
表 4-1. vSAN 虚拟机策略和原始容量
策略影响的方面 | 描述 |
策略更改 | 1. 允许的故障数主要级别 (PFTT) 会影响您必须为虚拟机提供的物理存储空间。PFTT 值越大,可用性越高,必须提供的空间也更多。
2. 当 PFTT 设置为 1 时,虚拟机的 VMDK 文件必须具有两个副本。当PFTT 设置为 1 时,50 GB 的 VMDK 文件需要在不同主机上有 100GB 空间。如果将 PFTT 更改为 2,则必须在群集中的主机上具有足够的空间来支持 VMDK 的三个副本或具有 150 GB 空间。
3. 一些策略更改(例如每个对象上新的磁盘带数)需要临时资源。vSAN将重新创建受更改影响的对象。对于某个时间,物理存储必须同时容纳旧对象和新对象。 |
重新保护或维护模式的可用空间 | 将主机置于维护模式或者克隆虚拟机时,数据存储可能无法撤出虚拟机对象,尽管 vSAN 数据存储指示有足够的可用空间。如果可用空间在将置于维护模式的主机上,则会出现此空间不足的情况。 |
使用 ESXCLI 将闪存设备标记为容量设备
可以使用 esxcli 手动将各主机上的闪存设备标记为容量设备。
前提条件
确认您使用的是 vSAN 6.5 或更高版本。
步骤
1. 若要了解您想要标记为容量设备的闪存设备的名称,请在每个主机上运行以下命令。
a. 在 ESXi Shell 中,运行 esxcli storage core device list 命令。
b. 找到命令输出顶部的设备名称,记下该名称。
该命令采用以下选项:
表 4-2. 命令选项
选项 | 描述 |
-d|--disk=str | 您想要将其标记为容量设备的设备名称。例如,mpx.vmhba1:C0:T4:L0 |
-t|--tag=str | 选择要添加或移除的标记。例如,capacityFlash 标记用于标记容量闪存设备。 |
该命令列出了 ESXi 标识的所有设备信息。
2. 在输出中,验证设备的 Is SSD 属性是否为 true。
3. 若要将闪存设备标记为容量设备,请运行 esxcli vsan storage tag add -d <device name> –t capacityFlash 命令。
例如,esxcli vsan storage tag add -t capacityFlash -d mpx.vmhba1:C0:T4:L0 命令,其中 mpx.vmhba1:C0:T4:L0 是设备名称。
4. 验证是否将闪存设备标记为容量设备。
a. 在输出中,确定设备的 IsCapacityFlash 属性是否设置为 1。
示例: 命令输出
您可以运行 vdq -q -d <device name> 命令以验证 IsCapacityFlash 属性。例如,运行 vdq -q -d
mpx.vmhba1:C0:T4:L0 命令将返回以下输出
\{
"Name" : "mpx.vmhba1:C0:T4:L0",
"VSANUUID" : "",
"State" : "Eligible for use by VSAN",
"ChecksumSupport": "0",
"Reason" : "None",
"IsSSD" : "1",
"IsCapacityFlash": "1",
"IsPDL" : "0",
\},
使用 ESXCLI 取消标记用作容量设备的闪存设备
可以取消标记用作容量设备的闪存设备,以便这些闪存设备可用于缓存。
步骤
1. 要取消标记已标记为容量的闪存设备,请运行 esxcli vsan storage tag remove -d <devicename> -t capacityFlash 命令。例如,esxcli vsan storage tag remove -t capacityFlash
-d mpx.vmhba1:C0:T4:L0 命令,其中 mpx.vmhba1:C0:T4:L0 是设备名称。
2. 验证是否已取消标记闪存设备。
a 在输出中,确定设备的 IsCapacityFlash 属性是否设置为 0。
示例: 命令输出
您可以运行 vdq -q -d <device name> 命令以验证 IsCapacityFlash 属性。例如,运行 vdq -q -d
mpx.vmhba1:C0:T4:L0 命令将返回以下输出。
[
\{
"Name" : "mpx.vmhba1:C0:T4:L0",
"VSANUUID" : "",
"State" : "Eligible for use by VSAN",
"ChecksumSupport": "0",
"Reason" : "None",
"IsSSD" : "1",
"IsCapacityFlash": "0",
"IsPDL" : "0",
\},
使用 RVC 将闪存设备标记为容量设备
运行 vsan.host_claim_disks_differently RVC 命令,将存储设备标记为闪存、容量闪存或磁盘(HDD)。
您可以使用 RVC 工具通过指定设备的型号,将闪存设备单独或批量标记为容量设备。如果您希望将闪存设备标记为容量设备,可以将其加入全闪存磁盘组。
注: vsan.host_claim_disks_differently 命令在标记设备前不会检查设备类型。该命令将标记任何使用 capacity_flash 命令选项附加的设备(包括已在使用中的磁盘和设备)。确保在标记前验证设备状态。
有关 vSAN 管理的 RVC 命令的信息,请参见《RVC 命令参考指南》。
前提条件
a. 确认您使用的是 vSAN 6.5 或更高版本。
b. 验证 vCenter Server Appliance 上是否启用了 SSH。
步骤
1. 打开与 vCenter Server Appliance 的 SSH 连接。
2. 使用具有管理员特权的本地帐户登录到设备。
3. 通过运行以下命令启动 RVC。
rvc local_user_name@target_vCenter_Server
例如,要使用同一 vCenter Server Appliance 将容量闪存设备标记为用户 root,运行以下命令:
rvc root@localhost
4. 输入该用户名的密码。
5. 导航到 vSphere 基础架构中的 vcenter_server/data_center/computers/cluster/hosts 目录。
6. 运行带有 --claim-type capacity_flash--modelmodel_name 选项的vsan.host_claim_disks_differently 命令,将群集中所有主机上的所有同一型号的闪存设备标记为容量设备。
vsan.host_claim_disks_differently --claim-type capacity_flash --model model_name *