迁移任务执行失败如何处理?
如果迁移工作流完成后显示工作流状态为失败,请通过以下方式尝试解决。
方式一:通过LTS查询失败原因
如果在创建集群时启用了LTS日志,可以通过下列步骤查询任务失败原因,获得迁移失败的ERROR日志,可以自行分析失败原因或者提交给华为云技术支持人员分析原因并给出修复建议。

- 登录云日志服务控制台。
- 在mgc迁移集群对应region的LTS中找到日志组,对应的格式为oms_lts_log_group_{迁移集群的id}。

- 单击日志组,调整日志统计时间并搜索对应失败日志。
例如搜索迁移节点的ERROR日志,输入hostName:oms_cluster_ecs_LIST_* AND ERROR。

搜索迁移节点的ERROR日志,输入hostName:oms_cluster_ecs_MIGRATION_* AND ERROR。

按上述方法可以得到迁移失败的ERROR日志,可以自行分析失败原因或者提交给华为云技术支持人员分析原因并给出修复建议。
- (可选)部分版本的集群存在LTS日志组默认采集路径不正确导致日志采集失败,请参照以下步骤处理。
- 单击页面右上角“日志设置”,在设置页面选择“日志接入”,找到对应的接入配置,默认名称为oms_lts_access_config_集群ID。单击操作列“修改”。

- “接入日志”页面单击右下角“下一步:选择主机组(可选)>下一步:采集配置”,将基本配置下的“路径配置”设置为/opt/cloud/**/*.log,单击右下角“提交”即可。

- 单击页面右上角“日志设置”,在设置页面选择“日志接入”,找到对应的接入配置,默认名称为oms_lts_access_config_集群ID。单击操作列“修改”。
方式二: 查看失败对象列表
对象存储迁移场景中,海量小文件迁移时常因源端与目的端校验失败导致部分文件迁移异常。传统排查方式需人工逐条分析OBS桶中的错误日志,效率低且难以快速定位核心问题。针对该场景,系统新增迁移失败文件错误原因统计与分类功能:通过环形图动态展示Top4错误类型占比,其余归类为“其他”,并支持导出 Excel格式的失败对象清单及处理建议。用户可在“资源迁移详情”窗口直观查看失败文件数量、错误码分布及对应解决方案。
- 查看失败对象原因统计:在标准存储旅程的“迁移与校验”页面,找到运行状态为“失败”的任务,单击任务名称,右侧弹出“资源迁移详情”窗口,在“失败对象原因统计”区域查看错误原因分类与数量。
- 下载失败原因统计清单:在“资源迁移详情”窗口的“失败对象原因统计”区域,单击“下载失败统计”,将失败对象清单及处理建议以Excel格式下载至本地。
失败对象列表为json格式,每条记录代表一个对象,其中content_handle_result记录了失败原因,如下图:

| 失败对象列表错误码(Content_handle_result) | 说明 | 处理措施 |
|---|---|---|
| READ_ATTRIBUTE_FAIL_4_LIST | 列举时读属性失败。 | 排查该文件属性是否正常,是否是异常字符。 |
| COMPARISON_ATTRIBUTE_NOT_SAME | 迁移后源端目的端对象属性不一致,可能是在列举之后源端有变化导致。 | 确保源端对象不会被改变下且覆盖策略不为不覆盖的情况,重试工作流。 |
| WRITE_STREAM_FAIL | 目的端写流失败,大概率是因为目的端写流抢占导致断流。 |
|
| UNSUPPORTED_FILE_TYPE | 不支持的文件类型。 | 目前不支持的文件类型无法迁移,例如: 管道文件。 |
| WRITE_ATTRIBUTE_FAIL | 目的端写属性失败。 | 排查目的端是否有修改元数据/属性权限。 |
| READ_ATTRIBUTE_FAIL | 源端对象读元数据/属性失败。 | 排查指定源端对象是否有获取元数据权限。 |
| SRC_OBJECT_IS_ARCHIVE | 源端对象为归档对象。 | 源端对象需要手动解冻之后才能迁移。 |
| SRC_FILE_NOT_EXISTS | 源端对象不存在,列举的时候还存在到迁移时可能被移动了。 | 无,取不到源端对象迁移一定会失败 。 |
| COMPARISON_LAST_MODIFY_TIME_OF_SRC_IS_LATER_THAN_DST | 对象已经迁移到目的端,在一致性校验时,迁移后对比最后修改时间-源端对象的最后修改时间新于目的端的最后修改时间。 通常是由于源端还在写入/修改对象导致。 | 如果源端存在写入/修改源端对象会出现这类错误。需要保证源端不更改的情况下,重试迁移工作流。 |
| COMPLETE_COMPARISON_KMS_NOT_SAME | 对象已经迁移到目的端,在一致性校验时,KMS加密状态不一致。通常是根据迁移时是否启用kms加密有关, 例如: 源端有KMS加密;未启用kms加密;目的端没有KMS加密;KMS加密状态不一致。 |
|
| INIT_SLICE_UPLOAD_FAILED | 初始化分段报错。 | 重试失败对象,此类错误通常是网络原因导致。 |
| MIGRATION_SYM_LINK_FAILED | OBS不支持源端类型的软链接。 | 无,OBS兼容问题。 |
| CREATE_LINK_FAILED | 创建链接文件失败。 | 请排查是否需要失败的链接文件,如果需要请联系华为云技术支持。 |
| COMBINE_OBJECT_SLICE_FAILED | 合并分段文件失败。 | 排查目的端AKSK所属账号是否有列举分段账号权限,需要添加上以下权限后再重试工作流/任务: obs:bucket:ListBucketMultipartUploads 权限参考: 如何获取源端桶权限和目的端桶权限? |
| HANDLE_SLICE_ERROR | 分片处理异常,网络异常/没权限读流。 | 重试工作流/任务,如果还是不能解决请联系华为云技术支持。 |
| SYM_LINK_IS_NOT_SUPPORT_MIG | SMB不支持软链接迁移。 | 无,兼容性问题导致无法迁移。 |
| UNPROCESSED_ERROR | 未知异常。 | 请联系华为云技术支持。 |
| READ_ATTRIBUTE_FAIL_FOR_SRC | 迁移完成后,一致性校验时读取源端对象元数据失败,一般是由于源端流控导致。 | 重试工作流/任务,如果仍然失败排查下源端指定对象的元数据情况。 |
| READ_ATTRIBUTE_FAIL_FOR_DST | 迁移完成后,一致性校验时读取目的端对象元数据失败,一般是由于目的端流控导致。 | 重试工作流/任务,如果仍然失败排查下目的端指定对象的元数据情况。 |
| FILE_SIZE_OVER_MAX_SIZE | 分片超过最大值10000。 | 每个分片最大支持5GB,单个对象超过48.8TB无法进行迁移。 |
| FILE_PATH_TOO_LONG | OBS文件路径超过最大值1024。 | OBS最大路径只支持1024位,超过最大值无法迁移。 |