Storage vMotion 迁移失败,并出现以下错误:“SYMC-INCR dd-mm-yyyy hh:mm”已禁用该方法 (The method is disabled by 'SYMC-INCR dd-mm-yyyy hh:mm')
search cancel

Storage vMotion 迁移失败,并出现以下错误:“SYMC-INCR dd-mm-yyyy hh:mm”已禁用该方法 (The method is disabled by 'SYMC-INCR dd-mm-yyyy hh:mm')

book

Article ID: 343045

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

Symptoms:

免责声明:本文为 Storage vMotion migration fails with the error:The method is disabled by 'SYMC-INCR dd-mm-yyyy hh:mm' (2008957) 的翻译版本。尽管我们会不断努力为本文提供最佳翻译版本,但本地化的内容可能会过时。有关最新内容,请参见英文版本。


  • Storage vMotion 迁移失败。
  • 在 vCenter Server 5.0 中,迁移选项不可用。
  • 无法将虚拟机从一个文件夹拖放到另一个文件夹。
  • 无法在文件夹之间移动虚拟机。
  • 虚拟机从清单中移除选项不可用。
  • 在 vSphere Client 中,显示以下错误:

    • “_DP-VEPA_BACKUP_RESTORE_LOCK_”已禁用该方法 (The method is disabled by '_DP-VEPA_BACKUP_RESTORE_LOCK_')
      错误堆栈 (Error Stack)
      在 vCenter Server“vCenter-Name”上对“VM-NAME”对象调用“VirtualMachine.Relocate”失败 (Call "VirtualMachine.Relocate" for object "VM-NAME" on vCenter Server "vCenter-Name" failed)

    • “SYMC-INCR dd-mm-yyyy hh:mm”已禁用该方法 (The method is disabled by 'SYMC-INCR dd-mm-yyyy hh:mm')
      错误堆栈 (Error Stack)
      在 vCenter Server“vCenter-Name”上对“VM-NAME”对象调用“VirtualMachine.Relocate”失败 (Call "VirtualMachine.Relocate" for object "VM-NAME" on vCenter Server "vCenter-Name" failed)

    • “Data Recovery”已禁用该方法 (The method is disabled by 'Data Recovery')

    • “vSphere Data Protection”已禁用该方法 (The method is disabled by 'vSphere Data Protection')

    • “moref=vm-ID”已禁用该方法 (This method is disabled by 'moref=vm-ID')

    • 错误: fault.MethodDisabled.summary (Error:fault.MethodDisabled.summary)

  • Storage vMotion 失败,并显示一般错误消息:

    XXXXXXXXXXX 已禁用该方法 (The method is disabled by XXXXXXXXXXX)

  • 启动 vMotion 时,您会看到以下消息:

    调用的状态操作无效/已明确禁用 (Invalid / explicitly disabled state operation is invoked)


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


Environment

VMware vCenter Server Appliance 5.0.x
VMware vCenter Server Appliance 6.0.x
VMware vCenter Server Appliance 6.5.x
VMware vCenter Server Appliance 5.1.x
VMware vCenter Server 6.0.x
VMware vCenter Server 5.1.x
VMware vCenter Server 5.0.x
VMware vCenter Server Appliance 5.5.x
VMware vCenter Server 4.0.x
VMware vCenter Server 5.5.x
VMware vCenter Server 4.1.x

Cause

出现此问题的原因是,在虚拟机备份任务完成后,未移除VPX_DISABLED_METHODS表中的条目。开始进行虚拟机级别的备份时,备份系统会通知 vCenter Server 为该虚拟机禁用 Storage vMotion,以确保备份能够成功完成。如果出现此错误时该虚拟机没有有效的备份,则不会自动重新启用 Storage vMotion。

Resolution

警告:此过程将修改数据库。请确保在继续执行任一可选方案之前,首先生成现有数据库的完整备份。如果在执行这些步骤时遇到任何困难,请咨询数据库管理员。

这是一个影响 VMware vCenter Server 的已知问题。

当前,没有解决办法。

要临时解决此问题,请使用以下可选方案之一:

计划另一个备份

为受影响的虚拟机计划另一个备份。如果成功完成,则这些条目应从 vCenter Server 数据库中移除,并将允许对虚拟机进行 Storage vMotion。

从 vCenter Server SQL 数据库中手动移除条目

要从 vCenter Server 数据库中手动移除条目,请执行以下操作:

警告:此过程将修改数据库。 请确保在继续执行此权宜措施之前,首先生成现有数据库的完整备份。如果在执行这些步骤时遇到任何困难,请咨询数据库管理员。
  1. 停止 vCenter Server 服务。
  2. 生成 vCenter Server 数据库备份。
  3. 对 vCenter Server 数据库运行以下SQL 语句:

    select * from VPX_VM WHERE FILE_NAME LIKE'%Virtual-Machine-Name%'

    其中 Virtual-Machine-Name 是虚拟机的名称。保留名称两侧的百分比 (%) 符号。

  4. 记下步骤 3 中的 SQL 语句所返回的vm-ID_Number值,因为步骤 5 和 6 中的 SQL 语句需要使用此值。
  5. 要确认失效条目,请对 vCenter Server 数据库运行以下 SQL 语句:

    select * from VPX_DISABLED_METHODS WHERE ENTITY_MO_ID_VAL = 'vm-ID from step 4'

  6. 要移除失效条目,请对 vCenter Server 数据库运行以下 SQL 语句:

    delete from VPX_DISABLED_METHODS WHERE ENTITY_MO_ID_VAL = 'vm-ID from step 4'

  7. 启动 vCenter Server 服务,然后重试 Storage vMotion。有关详细信息,请参见 Stopping, starting, or restarting vCenter services (1003895)

从 vCenter Server 和 vCenter Server Appliance vPostgres 数据库中手动移除条目

警告:此过程将修改数据库。请确保在继续执行此权宜措施之前,首先生成现有数据库的快照和/或完整备份。 有关备份 vCenter Server Appliance 的 vPostgres 数据库的指导,请参见Backing up and restoring the vCenter Server Appliance vPostgres database (2034505)。如果在执行这些步骤时遇到任何困难,请咨询数据库管理员。

要从 vCenter Server Appliance 5.0 Update 1、5.1、5.5、6.0, 和 6.5 的 vCenter Server Appliance vPostgres 数据库中手动移除条目,请执行以下操作:

  1. 使用 SSH 连接到 vCenter Server Appliance。有关详细信息,请参见vCenter Server and Host Management Guide中的“在 VMware vCenter Server Appliance 上启用或禁用 SSH 管理员登录”部分。
  2. 使用以下命令停止 VMware VirtualCenter Server 服务:

    service vmware-vpxd stop

  3. 生成 vCenter Server 数据库备份。有关详细信息,请参见Backing up and restoring the vCenter Server Appliance vPostgres database (2034505)
  4. 对 vCenter Server 数据库运行以下命令:

    sudo /opt/vmware/vpostgres/1.0/bin/psql -d VCDB vc -c "select * from VPX_VM WHERE FILE_NAME LIKE '%Virtual-Machine-Name%';"

    其中 Virtual-Machine-Name 是虚拟机的名称。保留名称两侧的百分比 (%) 符号。

  5. 记下步骤 4 中的 SQL 语句所返回的numerical ID值,因为步骤 6 和 7 中的 SQL 语句需要使用此值。
  6. 要确认失效条目,请对 vCenter Server 数据库运行以下命令:

    sudo /opt/vmware/vpostgres/1.0/bin/psql -d VCDB vc -c "select * from VPX_DISABLED_METHODS WHERE ENTITY_MO_ID_VAL = 'vm-ID from step 4';"

  7. 要移除失效条目,请对 vCenter Server 数据库运行以下命令:

    sudo /opt/vmware/vpostgres/1.0/bin/psql -d VCDB vc -c "delete from VPX_DISABLED_METHODS WHERE ENTITY_MO_ID_VAL = 'vm-ID from step 4';"

  8. 启动 VMware VirtualCenter Server 服务,然后重试 Storage vMotion。有关详细信息,请参见 Stopping, starting, or restarting vCenter Server Appliance services (2054085)
安装在 Windows 上的 vCenter Server 以及 Postgres 数据库
  1. 停止 vCenter Server 服务。
  2. 连接到 Postgres 数据库。 有关详细信息,请参见Connecting to the embedded vPostgres Database in a Windows installed vCenter Server 6.0 (2108848)
  3. 对 vCenter Server 数据库运行以下命令。

    select * from VPX_VM WHERE FILE_NAME LIKE '%Virtual-Machine-Name%';

    其中Virtual-Machine-Name 是虚拟机的名称。保留名称两侧的百分比 (%) 符号。

  4. 记下步骤 4 中的 SQL 语句所返回的 numerical ID 值,因为步骤 6 和 7 中的 SQL 语句需要使用此值。
  5. 要确认失效条目,请对 vCenter Server 数据库运行以下命令:

    select * from VPX_DISABLED_METHODS WHERE ENTITY_MO_ID_VAL = 'vm-ID from step 4';

  6. 要移除失效条目,请对 vCenter Server 数据库运行以下命令:

    delete from VPX_DISABLED_METHODS WHERE ENTITY_MO_ID_VAL = 'vm-ID from step 4';

  7. 启动 VMware VirtualCenter Server 服务,然后重试 Storage vMotion。有关详细信息,请参见 Stopping, starting, or restarting vCenter Server Appliance services (2054085)

从清单中移除虚拟机,然后重新添加

要从清单中移除虚拟机,然后重新添加,请执行以下操作:

警告:从清单中移除虚拟机,会移除与虚拟机相关的所有性能统计信息和历史数据。只有在上述过程不成功或您不需要保留定义的虚拟机的任何历史和性能数据时,才能使用该过程。
  1. 关闭虚拟机电源。
  2. 在 vSphere Client 中,右键单击该虚拟机,然后单击从清单中移除。
  3. 浏览到虚拟机所在的数据存储。
  4. 右键单击虚拟机的.vmx文件,然后单击添加到清单。

    注意:这样虚拟机即可获得一个新的 ID。

  5. 打开虚拟机电源,然后重试 Storage vMotion。

从清单中移除 ESX/ESXi,然后重新添加

警告:从清单中移除 ESX/ESXi 主机,会移除与主机相关的所有性能统计信息和历史数据移除。只有在上述过程不成功或您不需要保留定义的 ESX/ESXi 主机的任何历史和性能数据时,才能使用该过程。
  1. 在 vSphere Client 中,右键单击 ESXi/ESX 主机,然后单击断开连接。
  2. 右键单击已断开连接的 ESXi/ESX 主机,然后单击从清单中移除。
  3. 从清单中移除主机后,右键单击群集并单击添加主机。
  4. 提供 ESXi/ESX 主机的 IP 地址和主机名以及 root 用户名和密码。
本文档的内容按“现状”提供,效力范围为适用法律所允许的最大范围,VMware 不承认与此内容有关的所有其他声明或担保(无论是明示或默认形式),包括这些声明或担保对特定用途的适用性、商业性或非侵权性。VMware 对因使用此内容而造成的任何损害或与之相关的任何损害概不负责,包括直接、间接、后果性的损害、营利损失或特殊损害,即使 VMware 已被告知上述损害的可能性。


Additional Information

  • 为某个数据存储群集启用了StorageDRS后,可能会在数据存储群集的某些虚拟磁盘上禁用 Storage DRS。这可能会导致出现类似于症状部分中的那些错误。有关详细信息,请参见 vSphere Troubleshooting Guide 的“在虚拟磁盘上禁用了 Storage DRS”部分。
  • 有关此问题的详细信息,请参见 Manually enable vSphere solutions (1021265)

Storage vMotion migration fails with the error: The method is disabled by 'SYMC-INCR dd-mm-yyyy hh:mm'

Impact/Risks:

在继续执行本文中的任何解决方法之前,请先生成现有数据库的完整备份。 如果遇到任何困难,请咨询数据库管理员。

从清单中移除虚拟机,会导致丢失历史性能数据。 从清单中移除 ESXi/ESX 主机会导致主机和使用该主机注册的所有虚拟机的历史性能数据均丢失。 如果要从清单中移除主机,请从主机迁移除受影响虚拟机之外的所有虚拟机,以便其他虚拟机不受影响。