了解适用于 VMware vSphere 的 ONTAP 工具中的 igroup 和导出策略
启动器组 (igroup) 是包含 FC 协议主机全球端口名称 (WWPN) 或 iSCSI 主机限定节点名称的表。您可以定义 igroup 并将其映射到 LUN,以控制哪些启动器有权访问 LUN。
在适用于 VMware vSphere 9.x 的 ONTAP 工具中,igroup 是在扁平结构中创建和管理的,其中 vCenter 中的每个数据存储库都与单个 igroup 关联。这种模型限制了 igroup 在多个数据存储库之间的灵活性和重用性。适用于 VMware vSphere 10.x 的 ONTAP 工具引入了嵌套 igroup,其中 vCenter 中的每个数据存储库都与一个父 igroup 关联,而每个主机都链接到该父 igroup 下的子 igroup。您可以使用用户定义的名称定义自定义父 igroup,以便在多个数据存储库之间重用,从而实现更灵活、更互联的 igroup 管理。了解 igroup 工作流对于在适用于 VMware vSphere 的 ONTAP 工具中有效管理 LUN 和数据存储库至关重要。不同的工作流会生成不同的 igroup 配置,如以下示例所示:
|
上述名称仅供参考,并非真实的 igroup 名称。ONTAP工具管理的 igroup 使用前缀“otv_”。自定义 igroup 可以指定任意名称。 |
学期 |
说明 |
DS<编号> |
数据存储库 |
iqn<数字> |
启动程序IQN |
主机<编号> |
主机 MoRef |
lun<数字> |
LUN ID |
<DS名称>Igroup<编号> |
默认(ONTAP 工具管理)父 igroup |
<Host-Moref>Igroup<编号> |
儿童组 |
CustomIgroup<number> |
用户定义的自定义父 igroup |
ClassicIgroup<编号> |
ONTAP 工具 9.x 版本中使用的 Igroup。 |
使用一个启动器在单个主机上创建数据存储
工作流程:[创建] DS1 (lun1): host1 (iqn1)
结果:
-
DS1I组:
-
host1Igroup → (iqn1:lun1)
-
在 ONTAP 系统上为 DS1 创建了一个父 igroup DS1Igroup,并有一个子 igroup host1Igroup 映射到 lun1。LUN始终映射到子 igroup。
将现有数据存储挂载到其他主机
工作流程:[挂载] DS1 (lun1): host2 (iqn2)
结果:
-
DS1I组:
-
host1Igroup → (iqn1:lun1)
-
host2Igroup → (iqn2:lun1)
-
创建子 igroup host2Igroup 并将其添加到现有的父 igroup DS1Igroup。
从主机卸载数据存储
工作流程:[卸载] DS1 (lun1): host1 (iqn1)
结果:
-
DS1I组:
-
host2Igroup → (iqn2:lun1)
-
host1Igroup 已从层次结构中移除。子 igroup 不会被明确删除。以下两种情况会发生删除:• 如果没有映射任何 LUN,ONTAP 系统将删除子 igroup。• 计划清理作业会移除没有 LUN 映射的悬空子 igroup。这些情况仅适用于 ONTAP 工具管理的 igroup,不适用于自定义创建的 igroup。
删除数据存储区
工作流程:[删除] DS1 (lun1): host2 (iqn2)
结果:
-
DS1I组:
-
host2Igroup → (iqn2:lun1)
-
如果其他数据存储不重用父 igroup,则父 igroup 和子 igroup 将被移除。子 igroup 永远不会被明确删除
在自定义父 igroup 下创建多个数据存储区
工作流程:
-
[创建] DS2(lun2):host1(iqn1),host2(iqn2)
-
[创建] DS3(lun3):host1(iqn1),host3(iqn3)
结果:
-
自定义I组1:
-
主机 1I 组 → (iqn1: lun2, lun3)
-
host2Igroup → (iqn2:lun2)
-
host3Igroup → (iqn3:lun3)
-
为 DS2 创建 CustomIgroup1,并将其重用于 DS3。在共享父级下创建或更新子 igroup,每个子 igroup 都映射到其相关的 LUN。
删除自定义父 igroup 下的数据存储。
工作流程:[删除] DS2 (lun2): host1 (iqn1), host2 (iqn2)
结果:
-
自定义I组1:
-
host1Igroup → (iqn1:lun3)
-
host3Igroup → (iqn3:lun3)
-
-
即使 CustomIgroup1 没有被重复使用,也不会被删除。
-
如果没有映射任何 LUN,则 ONTAP 系统将删除 host2Igroup。
-
host1Igroup 不会被删除,因为它已映射到 DS3 的 lun3。自定义 igroup 永远不会被删除,无论其重用状态如何。
扩展 vVols 数据存储(添加卷)
工作流程:
扩展前:
[展开] DS4 (lun4): host4 (iqn4)
-
DS4Igroup:host4Igroup→(iqn4:lun4)
扩展后:
[展开] DS4 (lun4, lun5): host4 (iqn4)
-
DS4Igroup:host4Igroup→(iqn4:lun4,lun5)
创建一个新的 LUN 并将其映射到现有的子 igroup host4Igroup。
缩小 vVols 数据存储(删除卷)
工作流程:
收缩前:
[收缩] DS4 (lun4, lun5): host4 (iqn4)
-
DS4Igroup:host4Igroup→(iqn4:lun4,lun5)
收缩后:
[收缩] DS4 (lun4): host4 (iqn4)
-
DS4Igroup:host4Igroup→(iqn4:lun4)
指定的 LUN (lun5) 已从子 igroup 取消映射。只要该 igroup 至少有一个映射的 LUN,它就会保持活动状态。
从 ONTAP 工具 9 迁移到 10(igroup 规范化)
-
工作流 *
适用于 VMware vSPhere 9.x 版本的 ONTAP 工具不支持分层 igroup。在迁移到 10.3 或更高版本期间,必须将 igroup 规范化到分层结构中。
迁移之前:
[迁移] DS6 (lun6, lun7): host6 (iqn6), host7 (iqn7) → ClassicIgroup1 (iqn6 & iqn7: lun6, lun7)
ONTAP 工具 9.x 逻辑允许每个 igroup 有多个启动器,而无需强制一对一主机映射。
迁移后:
[迁移] DS6 (lun6, lun7): host6 (iqn6), host7 (iqn7) → ClassicIgroup1: otv_ClassicIgroup1 (iqn6 & iqn7: lun6, lun7)
迁移期间:
-
创建了一个新的父 igroup (ClassicIgroup1)。
-
原始 igroup 以 otv_ 前缀重命名并成为子 igroup。
这确保符合分层模型。
导出策略
导出策略控制 VMware vSphere ONTAP 工具中对 NFS 数据存储区的访问。它们定义哪些客户端可以访问数据存储区以及它们拥有哪些权限。导出策略在 ONTAP 系统中创建和管理,并可与 NFS 数据存储区关联以强制执行访问控制。每个导出策略都包含一些规则,这些规则指定允许访问的客户端(IP 地址或子网)以及授予的权限(只读或读写)。
在适用于 VMware vSphere 的 ONTAP 工具中创建 NFS 数据存储库时,您可以选择现有的导出策略或创建新的导出策略。导出策略随后会应用于该数据存储库,确保只有授权的客户端才能访问它。
在新的 ESXi 主机上挂载 NFS 数据存储库时,适用于 VMware vSphere 的 ONTAP 工具会将该主机的 IP 地址添加到与该数据存储库关联的现有导出策略中。这样,新主机无需创建新的导出策略即可访问该数据存储库。
当您从 ESXi 主机删除或卸载 NFS 数据存储库时,适用于 VMware vSphere 的 ONTAP 工具会从导出策略中删除该主机的 IP 地址。如果没有其他主机正在使用该导出策略,则该策略将被删除。当您删除 NFS 数据存储库时,如果该数据存储库关联的导出策略未被任何其他数据存储库重用,则适用于 VMware vSphere 的 ONTAP 工具会删除该导出策略。如果重用了该导出策略,它将保留主机 IP 地址并保持不变。当您删除数据存储库时,导出策略会取消分配主机 IP 地址并分配默认导出策略,以便 ONTAP 系统可以在需要时访问它们。
在不同数据存储之间重复使用导出策略时,分配导出策略的方式会有所不同。重复使用导出策略时,您可以将新的主机 IP 地址附加到策略中。删除或卸载使用共享导出策略的数据存储时,该策略不会被删除。它会保持不变,并且主机 IP 地址不会被移除,因为它与其他数据存储共享。不建议重复使用导出策略,因为这可能会导致访问和延迟问题。