将 VMFS 5 数据存储迁移到 VMFS 6 数据存储
search cancel

将 VMFS 5 数据存储迁移到 VMFS 6 数据存储

book

Article ID: 301245

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

免责声明:本文为 Migrating VMFS 5 datastore to VMFS 6 datastore (2147824) 的翻译版本。尽管我们会不断努力为本文提供最佳翻译版本,但本地化的内容可能会过时。有关最新内容,请参见英文版本。

本文提供了有关将现有 VMFS 5 数据存储迁移到 VMFS 6 数据存储的信息。

VMFS 6 是 vSphere 6.5 的新文件系统。该新文件系统支持 512e 高级格式化驱动器,并且采用 4098 扇区 (4K) 对齐。它还支持自动 UNMAP,其异步跟踪已释放的块并在后台将 UNMAP 发送到后端存储。

VMFS 5 和 VMFS 6 可以共存。但是,由于在 VMFS 6 元数据结构中进行的更改使其 4K 对齐,因此,您不能进行从 VMFS5 到 VMFS6 的内嵌/脱机升级。

您可以通过创建一个新的 VMFS 6 数据存储并为其置备新的虚拟机,或者将现有虚拟机从 VMFS 5 数据存储迁移到 VMFS 6 数据存储来利用新的 VMFS 6 功能。


Environment

VMware vSphere ESXi 6.5
VMware vSphere ESXi 6.0

Resolution

数据存储迁移的必备条件

在此知识库文章中,我们假定 vSphere 管理员一次升级一个 VMFS 数据存储。下面的描述通常适用于这些情况。即使需要并行执行多个数据存储的升级,基本工作流也不会改变。
在计划 VMFS 数据存储升级时,请随手保留以下信息:
  • 确定必须升级到 VMFS 6 文件系统类型的 VMFS 数据存储。例如,DS-1。
  • 确定 vCenter Server 的名称以及通过凭据共享数据存储的所有 ESX 主机的列表。
  • 所有 ESX 主机和 vCenter Server 都必须升级到 vSphere 6.5。

    注意:只有在共享数据存储的所有 ESX 主机都升级到 vSphere 6.5 后,才能继续进行数据存储升级。如果不升级相关主机,则数据存储升级后,较旧的 ESX 主机将失去与新 VMFS 6 数据存储的连接。这可能会影响业务连续性。

  • 具有相同或更大容量的备用数据存储,为所有 ESX 主机共享。例如,在此知识库文章中为 DS-2。DS-2 数据存储用于临时托管 DS-1 数据存储中的所有虚拟机。

使用 Windows PowerShell 脚本自动执行过程时的要求:
  • Windows 2008/2008 R2/2012(64 位,在域环境中)。用于启动实用程序的 Windows 主机。
  • PowerShell 2.0 或更高版本,已设置所有策略。已安装 vSphere PowerShell 插件。应能以管理员身份启动。在 64 位 PowerShell 环境中执行。

不同的部署用例和迁移步骤

注意:您可以使用 Storage vMotion 直接将虚拟机从 VMFS 5 数据存储迁移到 VMFS 6 数据存储。但我们针对不同部署方案建议如下过程。
用例 1:一个 vCenter Server 具有从数据存储 DS-1 运行的已注册虚拟机的清单。
VMFS 5(或 VMFS 3)的 DS-1 数据存储必须升级到文件系统类型为 VMFS 6 的数据存储。此数据存储与清单中的所有 ESX 主机共享,并且有一些虚拟机从此数据存储运行。
要升级,请执行以下操作:
  1. 对 vCenter Server 和所有 ESX 主机执行版本检查。

    注意:所有 ESXi 主机和 vCenter Server 必须是 vSphere 6.5。如果任一 ESXi 主机不是 vSphere 6.5,请不要继续。继续进行意味着业务连续性丢失,新的数据存储在旧 ESX 主机中不可见。

  2. 对数据存储 DS-2 上的可用空间可用性执行所有预检查。DS-2 上的可用空间必须等于或大于数据存储 DS-1 空间。
  3. 确保数据存储 DS-2 是 VMFS 5 类型。
  4. 准备 vCenter Server 清单中托管在数据存储 DS-1 上的所有虚拟机的列表。
  5. 撤出数据存储 DS-1。为此,将从数据存储 DS-1 运行的所有虚拟机迁移到数据存储 DS-2。将在这些虚拟机上执行 Storage vMotion 操作。

    每次仅执行一个迁移,以避免干扰其余数据中心实体的性能。跟踪任何迁移故障,如果有,则重新触发这些虚拟机的迁移。

  6. 通过列出此数据存储上的文件,确保数据存储 DS-1 为空。

    注意:只有当数据存储 DS-1 为空时,才能继续进行。

  7. 从所有 ESX 主机卸载数据存储 DS-1。
  8. 删除数据存储 DS-1。
  9. 使用相同的 Lun 创建具有 VMFS 6 文件系统的新数据存储。例如,DS-1。
  10. 在所有主机上触发存储重新扫描操作,并等待几分钟以完成此操作。
  11. 通过执行 Storage vMotion 操作将所有虚拟机从数据存储 DS-2 移回到数据存储 DS-1。建议一次迁移一个虚拟机。跟踪任何迁移故障(如果有),重新触发这些虚拟机的迁移。
注意:如果您在此环境中配置了 Storage DRS 并且正在使用 SDC,则还可以使用数据存储维护模式功能来帮助执行上述步骤。有关详细信息,请参见用例 5。
用例 2:一个 vCenter Server 具有从数据存储 DS-1 运行的已注册虚拟机的清单。数据存储 DS-1 还具有一些未在 vCenter Server 清单中注册的孤立数据。
要升级,请执行以下操作:
  1. 对 vCenter Server 和所有 ESX 主机执行版本检查。

    注意:所有 ESXi 主机和 vCenter Server 必须是 vSphere 6.5。如果任一 ESXi 主机不是 vSphere 6.5,请不要继续。继续进行意味着业务连续性丢失,新的数据存储在旧 ESX 主机中不可见。

  2. 对数据存储 DS-2 上的可用空间可用性执行所有预检查。DS-2 上的可用空间必须等于或大于数据存储 DS-1 空间。
  3. 确保数据存储 DS-2 是 VMFS 5 类型。
  4. 准备 vCenter Server 清单中托管在数据存储 DS-1 上的所有虚拟机的列表。
  5. 撤出数据存储 DS-1。为此,将从数据存储 DS-1 运行的所有虚拟机迁移到数据存储 DS-2。将在这些虚拟机上执行 Storage vMotion 操作。

    每次仅执行一个迁移,以避免干扰其余数据中心实体的性能。跟踪任何迁移故障(如果有),重新触发这些虚拟机的迁移。

  6. 准备数据存储 DS-1 上存在的文件(孤立文件,未注册到 vCenter Server 清单)的列表。
  7. 开始将这些文件逐个移动到数据存储 DS-2。建议使用推荐的方法之一移动 VMFS 数据存储上的文件。

    例如,ESX 命令行上的 vmkfstools 实用程序、powershell cmdlet。

  8. 通过列出此数据存储上的文件,确保数据存储 DS-1 为空。只有当数据存储 DS-1 为空时,才能继续进行。
  9. 从所有 ESX 主机卸载数据存储 DS-1。
  10. 删除数据存储 DS-1。
  11. 使用相同的 Lun 创建具有 VMFS 6 文件系统的新数据存储。例如,DS-1。
  12. 在所有主机上触发存储重新扫描操作,并等待几分钟以完成此操作。
  13. 通过执行 Storage vMotion 操作将所有虚拟机从数据存储 DS-2 移回到数据存储 DS-1。建议一次迁移一个虚拟机。跟踪任何迁移故障,如果有,则重新触发这些虚拟机的迁移。
  14. 将孤立数据文件逐个移回到数据存储 DS-2。建议使用推荐的方法之一移动 VMFS 数据存储上的文件。

    例如,ESX 命令行上的 vmkfstools 实用程序、powershell cmdlet。
注意:在这种情况下,Storage DRS 和 SDC 不能可靠地利用,因为数据存储维护操作仅撤出具有已知虚拟机对象的数据存储。例如,注册到 vCenter Server 清单的虚拟机。数据存储上的任何其他数据都会保留下来。
用例 3:一个 vCenter Server 具有从数据存储 DS-1 运行的已注册虚拟机的清单。数据存储 DS-1 有一些虚拟机配置了虚拟磁盘关联性规则。
要升级,请执行以下操作:
  1. 对 vCenter Server 和所有 ESX 主机执行版本检查。

    注意:所有 ESXi 主机和 vCenter Server 必须是 vSphere 6.5。如果任一 ESXi 主机不是 vSphere 6.5,请不要继续。继续进行意味着业务连续性丢失,新的数据存储在旧 ESX 主机中不可见。

  2. 对数据存储 DS-2 上的可用空间可用性执行所有预检查。DS-2 上的可用空间必须等于或大于数据存储 DS-1 空间。
  3. 确保数据存储 DS-2 是 VMFS 5 类型。
  4. 准备 vCenter Server 清单中托管在数据存储 DS-1 上的所有虚拟机的列表。
  5. 确定针对磁盘关联性规则而配置并从数据存储 DS-1 进行托管的虚拟机和虚拟磁盘。如果在群集中配置了自动存储负载平衡,请将其更改为手动设置。记下当前配置的所有存储关联性规则。
  6. 撤出数据存储 DS-1。为此,将从数据存储 DS-1 运行的所有虚拟机迁移到数据存储 DS-2。将在这些虚拟机上执行 Storage vMotion 操作。

    每次仅执行一个迁移,以避免干扰其余数据中心实体的性能。跟踪任何迁移故障,如果有,重新触发这些虚拟机的迁移。

  7. 通过列出此数据存储上的文件,确保数据存储 DS-1 为空。只有当数据存储 DS-1 为空时,才能继续进行。
  8. 从所有 ESX 主机卸载数据存储 DS-1。
  9. 删除数据存储 DS-1。
  10. 使用相同的 Lun 创建具有 VMFS 6 文件系统的新数据存储。例如,DS-1。
  11. 在所有主机上触发存储重新扫描操作,并等待几分钟以完成此操作。
  12. 将此数据存储重新添加到数据存储群集(与之前一样)。
  13. 通过执行 Storage vMotion 操作将所有虚拟机从数据存储 DS-2 移回到数据存储 DS-1。建议一次迁移一个虚拟机。跟踪任何迁移故障,如果有,则重新触发这些虚拟机的迁移。
  14. 从步骤 5 重新添加所有存储关联性规则(与之前一样)。如果在群集中配置了自动存储负载平衡,请将其更改回原始设置(自动模式)。

注意:如果您在此环境中配置了 Storage DRS 并且正在使用 SDC,则还可以使用数据存储维护模式功能来帮助执行上述步骤。有关此方面的更多详细描述,请参见下面的用例 5。

用例 4:一个 vCenter Server 具有从数据存储 DS-1 运行的已注册虚拟机的清单。数据存储 DS-1 有一些带有多个虚拟磁盘的虚拟机。这些虚拟机的至少一个虚拟磁盘从数据存储 DS-1 进行托管。
要升级,请执行以下操作:
  1. 对 vCenter Server 和所有 ESX 主机执行版本检查。

    注意:所有 ESXi 主机和 vCenter Server 必须是 vSphere 6.5。如果任一 ESXi 主机不是 vSphere 6.5,请不要继续。继续进行意味着业务连续性丢失,新的数据存储在旧 ESX 主机中不可见。

  2. 对数据存储 DS-2 上的可用空间可用性执行所有预检查。DS-2 上的可用空间必须等于或大于数据存储 DS-1 空间。
  3. 确保数据存储 DS-2 是 VMFS 5 类型。
  4. 准备 vCenter Server 清单中托管在数据存储 DS-1 上的所有虚拟机的列表。
  5. 撤出数据存储 DS-1。为此,将从数据存储 DS-1 运行的所有虚拟机迁移到数据存储 DS-2。将在这些虚拟机上执行 Storage vMotion 操作。

    每次仅执行一个迁移,以避免干扰其余数据中心实体的性能。跟踪任何迁移故障,如果有,则重新触发这些虚拟机的迁移。

  6. 在具有多个虚拟磁盘的虚拟机中,至少有一个磁盘从数据存储 DS-1 进行托管。仅将这些特定虚拟磁盘迁移到数据存储 DS-2。保留此类虚拟机和虚拟磁盘的列表。
  7. 通过列出此数据存储上的文件,确保数据存储 DS-1 为空。只有当数据存储 DS-1 为空时,才能继续进行。
  8. 从所有 ESX 主机卸载数据存储 DS-1。
  9. 删除数据存储 DS-1。
  10. 使用相同的 Lun 创建具有 VMFS 6 文件系统的新数据存储。例如,DS-1。
  11. 在所有主机上触发存储重新扫描操作,并等待几分钟以完成此操作。
  12. 通过执行 Storage vMotion 操作将所有虚拟机从数据存储 DS-2 移回到数据存储 DS-1。建议一次迁移一个虚拟机。跟踪任何迁移故障,如果有,则重新触发这些虚拟机的迁移。
  13. 将步骤 6 中确定的虚拟磁盘迁移回数据存储 DS-1。
用例 5:一个 vCenter Server 具有从数据存储 DS-1 运行的已注册虚拟机的清单。正在使用 Storage DRS,并且数据存储 DS-1 是存储数据存储群集 (Storage Datastore Cluster, SDC) 的一部分。在此 SDC 中,自动负载平衡功能处于打开状态,以实现空间和 IO 负载平衡。
这是环境中具有一个 vCenter Server 的用例。数据存储 DS-1 的类型为 VMFS 5(或 VMFS 3),并且必须升级到文件系统类型为 VMFS 6 的数据存储。vCenter Server 还配置了 Storage DRS。已创建存储数据存储群集 (SDC),并且数据存储 DS-1 是此数据存储群集的一部分。此数据存储群集还配置为在全自动模式下进行存储空间和 IO 负载平衡。
要升级,请执行以下操作:
  1. 对 vCenter Server 和所有 ESX 主机执行版本检查。

    注意:所有 ESXi 主机和 vCenter Server 必须是 vSphere 6.5。如果任一 ESXi 主机不是 vSphere 6.5,请不要继续。继续进行意味着业务连续性丢失,新的数据存储在旧 ESX 主机中不可见。

  2. 对数据存储 DS-2 上的可用空间可用性执行所有预检查。DS-2 上的可用空间必须等于或大于数据存储 DS-1 空间。
  3. 确保数据存储 DS-2 是 VMFS 5 类型并且为空。
  4. 将数据存储 DS-2 添加到此数据存储群集。
  5. 将数据存储 DS-1 置于维护模式。这应该在虚拟机上使用 Storage vMotion 操作开始撤出数据存储 DS-1。您还观察到一些虚拟机移向数据存储 DS-2。
  6. 通过列出此数据存储上的文件,确保数据存储 DS-1 为空。只有当数据存储 DS-1 为空时,才能继续进行。
  7. 从所有 ESX 主机卸载数据存储 DS-1。
  8. 删除数据存储 DS-1。
  9. 使用相同的 Lun 创建具有 VMFS 6 文件系统的新数据存储。例如,DS-1。
  10. 在所有主机上触发存储重新扫描操作,并等待几分钟以完成此操作。
  11. 将数据存储 DS-1 重新添加到存储数据存储群集。
  12. 将数据存储 DS-2 置于维护模式。这将在虚拟机上使用 Storage vMotion 操作开始撤出数据存储 DS-2。
  13. 将数据存储 DS-2 从数据存储群集中移出。
  14. 将数据存储 DS-2 退出维护模式。
用例 6:vCenter Server 具有从数据存储 DS-1 运行的已注册虚拟机的清单。至少有一个 ESX 服务器,它也具有从同一数据存储 DS-1 运行的已注册虚拟机的清单。此 ESX 服务器未添加到任何 vCenter Server 清单中。
环境中有一个 vCenter Server。数据存储 DS-1 的类型为 VMFS 5(或 VMFS 3),并且必须升级到文件系统类型为 VMFS 6 的数据存储。此数据存储与 vCenter 清单中的所有 ESX 主机共享,并且有一些虚拟机从此数据存储运行。此外,此数据存储还与至少一个 ESX 主机共享。此 ESX 主机未添加到 vCenter Server 清单中。有一些虚拟机从此 ESX 主机和数据存储 DS-1 运行。我们在下面的步骤中将此 ESX 主机称为 ESX-1。
要升级,请执行以下操作:
  1. 对 vCenter Server 和所有 ESX 主机执行版本检查。

    注意:所有 ESXi 主机和 vCenter Server 必须是 vSphere 6.5。如果任一 ESXi 主机不是 vSphere 6.5,请不要继续。继续进行意味着业务连续性丢失,新的数据存储在旧 ESX 主机中不可见。

  2. 对 ESX 服务器 EWSX-1 执行版本检查。此 ESX 主机必须是 vSphere 6.5。

    注意:如果任一 ESXi 主机不是 vSphere 6.5,请不要继续。

  3. 对数据存储 DS-2 上的可用空间可用性执行所有预检查。DS-2 上的可用空间必须等于或大于数据存储 DS-1 空间。
  4. 确保数据存储 DS-2 是 VMFS 5 类型。
  5. 确保数据存储 DS-2 从主机 ESX-1 中可见。
  6. 将 ESX-1 添加到 vCenter Server 清单。
  7. 准备 vCenter Server 清单中托管在数据存储 DS-1 上的虚拟机的列表。
  8. 准备从 ESX 服务器 ESX-1 运行并托管在数据存储 DS-1 上的虚拟机的列表。
  9. 撤出数据存储 DS-1。为此,通过在这些虚拟机上执行 Storage vMotion 操作,将从数据存储 DS-1 运行的所有虚拟机迁移到数据存储 DS-2。

    每次仅执行一个迁移,以避免干扰其余数据中心实体的性能。跟踪任何迁移故障,如果有,则重新触发这些虚拟机的迁移。

  10. 通过列出此数据存储上的文件,确保数据存储 DS-1 为空。只有当数据存储 DS-1 为空时,才能继续进行。
  11. 从所有 ESX 主机卸载数据存储 DS-1。
  12. 删除数据存储 DS-1。
注意:您可能有其他部署情况,可能需要您在执行此迁移时采取一些额外的预防措施。本文中附带的是2147824_SampleMigrationVMFS5ToVMFS6.ps1脚本。确保您了解您的环境并相应地执行迁移步骤。
附带的示例脚本的名称为 "2147824_SampleMigrationVMFS5ToVMFS6.ps1"。


Additional Information

Migrating VMFS 5 datastore to VMFS 6 datastore