Search the VMware Knowledge Base (KB)
View by Article ID

Virtual SAN 6.2 磁盘上升级完成 10% 时失败 (2146519)

  • 0 Ratings

Symptoms

免责声明:本文为 Virtual SAN 6.2 on disk upgrade fails at 10% (2144881) 的翻译版本。尽管我们会不断努力为本文提供最佳翻译版本,但本地化的内容可能会过时。有关最新内容,请参见英文版本。

  • 将 VMware Virtual SAN (VSAN) 升级至 6.2 版本时,Virtual SAN 磁盘格式转换任务在完成 10% 时失败。
  • 在 vSphere Web Client 中,您将看到类似以下内容的错误:

    出现常规系统错误: 无法重新对齐以下 Virtual SAN 对象: <uuid list>,原因是 vmdk 描述符文件已被锁定或缺失,请手动修复 (A general system error occurred: Failed to realign following Virtual SAN objects: <uuid list>, due to being locked or lack of vmdk descriptor file which requires manual fix)

  • Virtual SAN 磁盘格式转换任务失败,并显示常规 Virtual SAN 错误状态。

注意:有关其他症状和日志条目的信息,请参见“Additional Information” 部分。

Purpose

在升级 VSAN 至6.2 时去要排除常规 Virtual SAN 错误状态,请确定受影响的对象,然后采取本文建议的纠正措施。

Cause

升级磁盘上格式时,进行到 10% 到 15% 期间,Virtual SAN 会重新对齐对象,使其准备好使用新功能。该过程分为两步执行:
  • 第一步是,Virtual SAN 重新对齐对象及其组件,使得它们具有 1 MB 地址空间。在此期间,如果群集不稳定,或者磁盘空间不足,该过程将失败。
  • 第二步是,Virtual SAN 重新对齐 vsanSparse 对象,使其实现 4k 对齐。在此期间,如果对象无法升级到 2.5 版本,该过程将失败。

    在以下情况下,对象升级将失败:

    • 对象处于孤立状态,没有被任何内容引用。
    • 磁盘链不完整或已损坏。

      注意:有关对象失败的示例场景,请参见“Additional Information” 部分。

Resolution

注意:以下视频特定于 6.2,但也适用于 vSAN 6.0 / 6.1 至 6.5 升级
 
 
警告:移除磁盘和对象会面临风险,因为这些对象可能仍在使用。删除任何对象前,始终要再三确认。如果对本文详细说明的步骤有任何疑问,请联系 VMware 技术支持。
 
要解决此问题,必须先确定孤立的对象,然后采取必要措施满足升级条件。
 
  1. 确保初始重新对齐操作已完成:

    • 要排查在磁盘上升级检查第一步期间发生的故障,请查看 vmware-health-service.log 文件。

      注意:vmware-health-servicelog 文件位于以下目录:

      • Windows vCenter Server:%Programdata%\VMware\vCenterServer\logs\vsan-health\
      • vCenter Server Appliance:/storage/log/vmware/vsan-health/

        重新对齐对象期间,您会看到类似以下内容的条目:

        2016-01-26T21:54:43.650Z INFO vsan-health[Thread-19] [VsanRealignClusterLib::QueryUnalignedStatus] Found 6 objects which aren't MB aligned
        2016-01-26T21:54:43.650Z INFO vsan-health[Thread-19] [VsanRealignClusterLib::CheckForUnalignedObjects] Fixing MB alignment on 2deaa756-0d63-0f53-690e-020003c607e5
        .
        .
        .
    • 看到此条目时,即表明第一步对象重新对齐已完成:

      [VsanRealignClusterLib::CheckForUnalignedObjects] All Objects now MB aligned

      这意味着,如果群集稳定,且具有可用空间,则此时不存在已知问题。
      如果未在 vmware-health-service.log 文件中找到此行内容,请在对齐输出后查看返回的错误。

  2. 查看磁盘上升级失败错误堆栈的输出,并将受影响的 UUID 记到文本文件中。您将使用此 UUID 列表与脚本输出作交叉比对,并确认问题是否得到解决。

    错误堆栈报告以下错误:

    无法重新对齐以下 Virtual SAN 对象: <UUID>,原因是 vmdk 描述符文件已被锁定或缺失,请手动修复 (Failed to realign following virtual SAN objects:<UUID> due to being locked or lack of vmdk descriptor file, which requires manual fix)。

    复制无法重新对齐以下 Virtual SAN 对象:字符串后的 UUID 并另存到文本文件。


  3. 在用于访问 vSphere Client 的 Windows 计算机上,下载并保存附件中的 zip 文件2144881_VsanRealign.zip。

  4. 解压缩 2144881_VsanRealign.zip,然后使用数据存储浏览器将 VsanRealign.pyscript 复制到 ESXi 主机上的共享数据存储。

  5. VMware 建议先将该脚本复制到数据存储,然后再使用命令行将其复制到/var/tmp。

    例如:

    cp /vmfs/volumes/VMFS1/VsanRealign.py/var/tmp/VsanRealign.py

  6. 在 ESXi shell 会话中,切换到 VsanRealign.pyscript 的保存目录。

    例如:

    cd /var/tmp/

  7. 运行以下命令,启动脚本:

    python VsanRealign.py precheck

    注意:命名空间扫描比较耗时。

    脚本会返回 VSAN 对象列表,其中会列出相关问题以及顺利完成磁盘格式升级所需采取的建议措施。

    您会看到类似以下内容的输出:

    Finished scanning, compiling results
    -------------------------------------------------------------------
    The following objects were missing descriptor files.
    The recorded path doesn't exist and no other reference to the object was found.
    -------------------------------------------------------------------
    This will create descriptor files automatically for all disks under
    lostAndFoundin the VSAN datastore.

    Other objects that aren't disks missing a descriptor will be removed permanently.

    NOTE: Recovered disks will not have any snapshot chain information in them.
    Any snapshots deltas will not be correctly recovered.

    39aef356-e4b9-c5bc-7c08-0200170d326c
    Object UUID: 4698f356-7865-aaae-fc20-0200170d326c
    Recorded Path: /vmfs/volumes/vsan:523e23728ba31d24-84ab9fc2821d6bdf/c695f356-3e2e-a40e-2ede-0200170d326c/linux-vm08-25632575.vswp
    Recorded VM: linux-vm08
    Object Class: vmswap
    Object Size: 536870912
    Parent directory exists
    AutoFix: Will remove object

    Object UUID: 8efdf456-c408-a163-2f8e-02001645d63b
    Recorded Path: /vmfs/volumes/vsan:5228981f7117d6eb-94106da8ad4a6377/88fdf456-85f5-bfac-51ff-02001645d63b/linux-vm-a.vmdk
    Recorded VM: None
    Object Class: vdisk
    Object Size: 2147483648
    Parent directory exists
    AutoFix: Will create new descriptor

    Descriptors will be created in /vmfs/volumes/vsan:5228981f7117d6eb-94106da8ad4a6377/lostAndFound

    NOTE: Recovered disks will not have any snapshot chain information in them.
    Any snapshots deltas will not be correctly recovered.

    Create 'linux-vm-a-8efdf456-c408-a163-2f8e-02001645d63b.vmdk' for 8efdf456-c408-a163-2f8e-02001645d63b
    Remove 4698f356-7865-aaae-fc20-0200170d326c type: vmswap vm name: linux-vm08


    在系统提示您决定是否采取 AutoFix 建议措施时,输入 yes 采取 Autofix 措施。在此情况下,系统会重新创建 vdisk 对象的描述符文件。不属于缺少描述符的虚拟磁盘的 vmswap 对象和所有其他对象都会永久移除,因为它们不含有用的数据。

    注意:如果输入 no,则不会采取 AutoFix 措施,而是需要手动采取措施。

  8. 查看脚本针对更改块跟踪使用的对象提供的报告,这些对象可能会导致磁盘上升级出现问题。

    您会看到类似以下内容的报告:

    以下对象正在由更改块跟踪使用,并可能在升级期间遇到问题。
    如果升级失败,请使用“fixcbt” 选项重新运行此脚本 (The following objects are in use by Change Block Tracking and may encounter issues during upgrade. Rerun this script with the 'fixcbt' option if upgrade fails)。

    如果需要采取措施,请按照 VMware Virtual SAN 6.2 on disk upgrade fails due to CBT enabled virtual disks (2144882) 中的说明先解决 CBT 问题,然后再转至步骤 9。如果无需采取措施,请转至步骤 9。

  9. 按照步骤 7,检查 VSAN 数据存储上的 lostAndFound 目录。检查孤立磁盘,即将孤立磁盘附加到非生产虚拟机,检查其中文件的完整性,并确定此虚拟磁盘是否仍适用于当前环境。

    注意:这些对象仍需要重新对齐。再次运行磁盘上升级过程,执行后续操作。

Additional Information

其他症状和日志条目
  • 在错误堆栈中,您会看到类似于以下内容的条目:

    Failed to realign following Virtual SAN objects: 1e58f256-44f6-0201-3f17-02001823f4e0, f44ff256-11e1-1c0a-a06a-020018428a28, 8959f256-7ab7-f01b-913e-02001823f4e0, db50f256-29a3-2f2f-2404-02001823f4e0, 2358f256-9d3c-8b66-af4b-02001823f4e0, 1c58f256-bf10-b769-fb61-020018428a28, 7559f256-4da3-e787-ecbb-02001823f4e0, e850f256-10e0-eb8d-cac9-020018c78c91, 5858f256-4251-d5aa-d008-02001823f4e0, 0a51f256-f9de-3db4-c75b-020018428a28, 1e58f256-34fc-1cb7-f8aa-020018428a28, dd50f256-fb57-80c0-8894-020018d2303b, ec50f256-9792-1ddb-d757-020018428a28, 534ff256-4b1c-05e5-1092-020018428a28, de57f256-0c14-8bf0-635b-020018c78c91, 1658f256-3ae8-fcf7-a9a3-020018d2303b, due to being locked or lack of vmdk descriptor file, which requires manual fix.

  • 在 vmware-vsan-health-service.log 文件中,您会看到类似以下内容的条目:

    注意:vmware-vsan-health-service.log 文件位于以下目录:

    • Windows vCenter Server:%Programdata%\VMware\vCenterServer\logs\vsan-health\vmware-vsan-health-service.log
    • vCenter Server Appliance:/storage/log/vmware/vsan-health/vmware-vsan-health-service.log

2016-03-24T11:03:00.148Z DEBUG vsan-health[Thread-1223] [VsanRealignClusterLib::RealignClusterV3] Finished namespaces
2016-03-24T11:03:00.620Z INFO vsan-health[Thread-1223] [VsanRealignClusterLib::RealignClusterV3] After namespace realign 22 objects need realign, previously 22
2016-03-24T11:03:00.621Z INFO vsan-health[Thread-1223] [VsanRealignClusterLib::RealignClusterV3] Made no progress.22 objects still need realigning
2016-03-24T11:03:00.621Z INFO vsan-health[Thread-1223] [VsanRealignClusterLib::RealignClusterV3] (str) [
'6e94f356-4d25-f804-5792-02001760ad31',
'fa90f356-e0bf-430b-ccc0-02001760ad31',
....
'e78ff356-bc5d-56ee-aa62-0200170d326c',
'818df356-3c44-d5f5-cf77-0200170d326c'
]
2016-03-24T11:03:00.623Z ERROR vsan-health[Thread-1223] [VsanVcDiskFormatConverterImpl::_Run] Failed to migrate vsanSparse objects.
2016-03-24T11:03:00.623Z ERROR vsan-health[Thread-1223] [VsanVcDiskFormatConverterImpl::_Run] Made no progress
Traceback (most recent call last):
File "/usr/lib/vmware-vpx/vsan-health/pyMoVsan/VsanVcDiskFormatConverterImpl.py", line 1633, in _Run
self._HandleUserCancellation)
File "/usr/lib/vmware-vpx/vsan-health/pyMoVsan/VsanRealignClusterLib.py", line 335, in RealignClusterV3
uuidRemaining=objectsNeedingRealign)
RealignFailed: Made no progress

注意:上述日志摘录仅为示例。日期、时间和环境变量可能会因环境而有所不同。

监控升级状态
 
要监控任意时间点的升级状态,请参见 Monitoring the upgrade status in Virtual SAN (2146218)

Tags

vSAN 错误, 磁盘升级失败, vSAN 对象被锁定, 常规 vSAN 错误

See Also

Request a Product Feature

To request a new product feature or to provide feedback on a VMware product, please visit the Request a Product Feature page.

Feedback

  • 0 Ratings

Did this article help you?
This article resolved my issue.
This article did not resolve my issue.
This article helped but additional information was required to resolve my issue.

What can we do to improve this information? (4000 or fewer characters)




Please enter the Captcha code before clicking Submit.
  • 0 Ratings
Actions
KB: