从其他云提供商导入数据

借助 Migration Center,您可以从托管在其他云提供商(例如 Amazon Web Services [AWS] 和 Azure)的基础架构中导入性能和使用情况数据。

如需从其他云服务商导入数据,请执行以下步骤:

  1. 下载收集脚本
  2. 在云基础架构中运行脚本并生成输出表。
  3. 输出表格上传到 Migration Center。

运行收集脚本的最佳实践

运行收集脚本时,请考虑以下事项:

  • 使用 AWS CloudShell 实例(从 AWS 收集数据时)或 Azure Cloud Shell 实例(从 Azure 收集数据时)运行收集脚本。使用这些 Shell 时,您无需生成、分发和维护身份验证密钥,也能在其他运行时环境中运行收集脚本。
  • 通过模拟具有最小只读权限的账号运行收集脚本。使用只读权限可避免您的 AWS 或 Azure 资源发生意外修改。
  • 这些脚本是开源的,因此如果贵组织有特定的监管要求,请查看代码,以确切了解收集了哪些类型的数据。

限制

  • 上传文件的大小上限为 100 Mb。

下载脚本:

如需下载脚本,请选择以下任一链接,具体取决于您的云提供商:

运行脚本

如需运行该脚本,请按照代码库的 README 文件中的说明操作。该脚本会生成一个包含收集数据表的 ZIP 文件。提取 ZIP 文件中的文件。

ZIP 文件包含您上传到迁移中心的以下文件:

  • vmInfo.csv
  • perfInfo.csv
  • diskInfo.csv
  • tagInfo.csv

它可能还包含您无法上传到迁移中心的其他文件,例如 resources.json 文件。将 JSON 文件上传到 Migration Center 时出错。

上传收集脚本结果

如需上传文件,请按以下步骤操作:

控制台

  1. 前往数据导入页面。

    前往“数据导入”页面

  2. 依次点击添加数据 > 上传文件

  3. 设置文件上传部分,输入文件上传的名称。

  4. 文件格式列表中,选择 AWS 导出Azure 导出

  5. 点击选择要上传的文件,然后选择要上传的所有文件。

  6. 如需确认并开始上传文件,请点击上传文件

  7. 如果文件验证成功,如需根据文件创建素材资源,请点击导入数据,然后点击确认

API

  1. 创建导入作业。

    POST https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs?importJobId=IMPORT_JOB_ID
    
    {
      "asset_source": "projects/PROJECT_ID/locations/REGION/sources/SOURCE_ID"
    }
    

    替换以下内容:

    • PROJECT_ID:用于创建导入作业的项目的 ID。
    • REGION:用于创建导入作业的区域。
    • IMPORT_JOB_ID:新导入作业的 ID。
    • SOURCE_ID:要与导入作业关联的现有来源的 ID。
  2. 可选:如需确认导入作业是否已正确创建,请获取导入作业。

    GET https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID
    
  3. 创建一个附加到导入作业的导入数据文件。

    POST https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID/importDataFiles?import_data_file_id=DATA_FILE_ID
    
    {
      "format": "IMPORT_JOB_FORMAT"
    }
    

    替换以下内容:

    • DATA_FILE_ID:新数据文件的 ID
    • IMPORT_JOB_FORMATIMPORT_JOB_FORMAT_EXPORTED_AWS_CSVIMPORT_JOB_FORMAT_EXPORTED_AZURE_CSV
  4. 获取数据文件。

    GET https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID/importDataFiles/DATA_FILE_ID
    
  5. 从响应的 signedUrl 字段中复制网址。

  6. 将文件上传到复制的网址。

    PUT -H 'Content-Type: application/octet-stream' --upload-file UPLOAD_FILE_PATH 'COPIED_URL'
    

    替换以下内容:

    • UPLOAD_FILE_PATH:上传文件的本地路径。
    • COPIED_URL:从预览步骤复制的签名网址。
  7. 可选:重复第 3-6 步,在同一导入作业下创建更多数据文件。

  8. 可选:获取导入作业的所有数据文件。

    GET https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID/importDataFiles
    
  9. 验证导入作业。

    POST https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID:validate
    
  10. 获取导入作业并查看验证报告。 如果状态为 READY,则可以继续执行后续步骤。否则,您需要修正作业或特定文件,这可能需要删除文件或上传新文件。

    GET https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID
    
  11. 运行导入作业。

    POST https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID:run
    
  12. 获取导入作业并查看执行报告。 如果状态为 COMPLETED,则表示作业已成功执行。否则,如果作业失败且处于终止状态,则执行报告会包含错误。创建新的导入作业并应用所需的更改。

    GET https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID
    

如果您在上传文件时遇到问题,请参阅如何排查常见错误消息

查看上传内容

您上传文件后,迁移中心会对其进行验证,以检查其是否符合正式要求。如果验证成功,Migration Center 会处理数据以创建新的素材资源或更新现有素材资源。您可以通过 Google Cloud 控制台查看上传作业的状态。

如需查看上传作业的状态,请按以下步骤操作:

  1. 前往数据导入页面,然后点击文件上传
  2. 从文件导入列表中,选择要查看的上传内容。
  3. 在文件上传页面上的数据导入进度下,查看已上传文件的状态

您会看到文件处于以下某种状态。

状态列表

  • 已完成。您的文件已成功导入。
  • 准备就绪。您的文件已通过验证,可以导入了。
  • 待处理。您的文件正在等待另一个文件完成处理。
  • 正在运行。您的文件正在处理中。
  • 正在验证。您的文件正在验证阶段。
  • 验证失败。您的文件包含一些错误。请修正错误,然后尝试重新上传文件。
  • 失败。无法导入您的文件。

查看错误详情

如果您在导入文件后遇到错误,可以直接在 Google Cloud 控制台中查看错误消息。

如需查看上传作业的错误,请按以下步骤操作:

  1. 前往数据导入页面,然后点击文件上传
  2. 点击显示警告或错误的导入文件。 “导入文件详情”页面会显示完整的错误列表。

在导入文件详情页面上,您可以查看导致错误的资产和数据字段,以及查看错误说明。文件导入作业中的错误可能会导致迁移中心无法使用新更改创建新的素材资源或更新现有素材资源。如需修正此错误,请修改文件并创建新的文件导入作业以重新上传这些文件。

如需详细了解可能出现的错误消息,请参阅排查文件导入错误

后续步骤