导入手动生成的表

借助 Migration Center,您可以上传使用提供的模板手动填充的数据表。如果您的基础架构只有有限数量的资产,并且您想手动创建数据,此方法非常有用。

如需导入您手动填充的表格,请执行以下步骤:

  1. 可用模板列表下载模板。
  2. 使用基础架构中的数据手动填写表格。
  3. 将表上传到 Migration Center。

限制

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

可用的数据模板

下表提供了可用于将基础架构数据上传到 Migration Center 的文件模板。模板包含示例数据,可作为填写表格的建议。如需详细了解所需的数据格式,请参阅导入文件规范

文件名 数据类型 说明
vmInfo.csv 计算机相关信息 使用此模板提供有关各个资产的信息,包括 CPU、内存和其他配置参数。每次创建新的导入内容时,都必须使用此表格。
perfInfo.csv 性能数据 可选:使用此模板以时间序列格式提供资产的性能数据。
diskInfo.csv 磁盘数据 可选:使用此模板提供有关磁盘及其利用率的信息。
tagInfo.csv 系统代码 可选:使用此模板为资产分配标签。标签必须符合 Google Cloud 中标签的要求

如需详细了解每种文件的规范,请参阅导入文件规范

上传表

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

控制台

  1. 前往数据导入页面。

    前往“数据导入”页面

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

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

  4. 文件格式列表中,选择手动填充的 CSV 模板

  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_MANUAL_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. 点击显示警告或错误的导入文件。 “导入文件详情”页面会显示完整的错误列表。

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

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

导入文件规范

下表显示了用于手动导入的模板文件的技术规范。

vmInfo 文件

预期类型 说明
MachineId 字符串 虚拟机唯一标识符。
MachineName 字符串 虚拟机显示名称。
PrimaryIPAddress 字符串 机器的 IP 地址。
PrimaryMACAddress 字符串 机器的 MAC 地址。此值仅用于标识机器。
PublicIPAddress 字符串 机器的公共 IP 地址。
IpAddressListSemiColonDelimited 消息列表 分配或指定的网络地址的列表。
TotalDiskAllocatedGiB int64 磁盘的总容量。
TotalDiskUsedGiB int64 磁盘中已使用的空间总量。
MachineTypeLabel 字符串 AWS 或 Azure 机器类型标签。
AllocatedProcessorCoreCount int64 虚拟机中的 CPU 核心数。
MemoryGiB int32 虚拟机的内存量。
HostingLocation 字符串 机器的位置(采用 AWS 或 Azure 格式)。
OsType 字符串 机器的操作系统。
OsName 字符串 机器的操作系统。
OsVersion 字符串 机器的操作系统版本。
MachineStatus 字符串 机器的电源状态。
ProvisioningState 字符串 预配状态,仅适用于 Azure 虚拟机。
CreateDate 时间戳 机器的创建时间戳。
IsPhysical 字符串 机器是物理机还是虚拟机。
来源 消息 AWS 或 Azure 机器的来源详细信息。

diskInfo 文件

预期类型 说明
MachineId 字符串 虚拟机唯一标识符。
DiskLabel 字符串 磁盘标签。
SizeInGib int64 磁盘的总容量。
UsedInGib int64 磁盘中已使用的空间总量。
StorageTypeLabel 字符串 磁盘标签类型(例如 BIOS 或 GPT)。

perfInfo 文件

预期类型 说明
MachineId 字符串 虚拟机唯一标识符。
TimeStamp 样本收集时间。
CpuUtilizationPercentage 浮点数 已使用的总 CPU 容量百分比。必须介于 0 到 100 之间。
MemoryUtilizationPercentage 浮点数 已用系统内存的百分比。必须介于 0 到 100 之间。
UtilizedMemoryBytes 浮点数 已用总内存(以字节为单位)。
DiskReadOperationsPerSec 浮点数 在短时间段内采样的平均 IOPS。
DiskWriteOperationsPerSec 浮点数 在短时间段内采样的平均 IOPS。
NetworkBytesPerSecSent 浮点数 平均网络出站流量(以 B/s 为单位),基于短时间段内的采样数据。
NetworkBytesPerSecReceived 浮点数 网络入站流量的平均值(以 B/s 为单位),基于短时间段内的采样数据。

tagInfo 文件

预期类型 说明
MachineId 字符串 虚拟机唯一标识符。
字符串 标签键。
字符串 标签值。

标签解析算法

您随 tagInfo 文件上传的标签必须符合 Google Cloud 中标签的要求。如果标签不符合要求,迁移中心会使用以下策略转换标签:

  1. 对于仅限键的操作,它会移除所有非英文字母的前导字符。
  2. 它会将所有大写字母替换为小写字母。
  3. 它会将所有无效字符替换为下划线 (_)。
  4. 系统会将标签截断为最多 62 个字符。
  5. 它会添加 _<CRC32> 后缀,该后缀是根据原始字符串计算得出的。

每次转换标签时,系统都会显示一条警告消息。

如果验证失败或键已存在,导入操作会跳过该行,并显示一条警告消息。

后续步骤