使用设置应用配置 Google Cloud 项目,以便从 Cloud Storage 将数据导出到设备

本文档介绍了如何使用设备云设置应用配置 Google Cloud 权限和 Cloud Storage。

设备云设置应用程序会提示您输入相关信息,例如 转移会话 ID、Cloud Storage 存储桶和 Cloud Key Management Service (Cloud KMS) 偏好设置。利用您提供的信息, 设备云设置应用会配置您的 Google Cloud 权限(首选) Cloud Storage 存储桶和 Cloud KMS 密钥。

准备工作

确保您具备以下各项:

  • 项目名称和营业地点, 设备。

  • 订购设备时指定的设备 ID、会话 ID、存储桶名称和加密密钥。您可以在标题为 Google Transfer Appliance 权限的电子邮件中找到这些信息。

  • Storage Transfer Service 服务代理列在标题为 Google Transfer Appliance 权限。它类似于以下示例:

    project-TENANT_IDENTIFIER@storage-transfer-service.iam.gserviceaccount.com

    在此示例中,TENANT_IDENTIFIER 是特定于此项目的生成编号。

    我们使用 Storage Transfer Service 在您的 Cloud Storage 存储桶和设备。

分配 IAM 角色

您必须要有正确的 项目的 IAM 角色以及 Cloud Storage 存储桶。

如果您是项目所有者,使用 roles/owner 就足够了。跳到下一个 下载 Appliance Cloud 设置应用部分。

如果您没有 roles/owner,则必须拥有以下角色:

  • roles/storagetransfer.admin:创建 Storage Transfer Service 服务账号。
  • roles/transferappliance.viewer:用于提取 Cloud Storage 存储桶和 Cloud Key Management Service 密钥详细信息。
  • roles/storage.admin:如果您尚未创建 Cloud Storage 存储桶,则可以在项目级授予;如果您使用的是现有 Cloud Storage 存储桶,则可以在存储桶级授予。
  • roles/cloudkms.admin:可在项目级授予(如果尚未授予) 创建 Cloud KMS 密钥,也可以在以下情况下在密钥级别授予: 您使用的是现有的 Cloud KMS 密钥。

查看角色

如需查看您的主账号对某个项目拥有的 IAM 角色以及 请执行以下操作:

  1. 在 Google Cloud 控制台中,转到 IAM 页面。

    前往 IAM 页面

  2. 此页面会显示您的项目中针对该项目具有 IAM 角色的所有主账号。

下载 Appliance Cloud 设置应用

如需下载 Appliance Cloud 设置应用,请执行以下操作:

  1. 打开 Google Cloud 控制台欢迎页面。

    打开 Google Cloud 控制台“欢迎”页面

  2. 验证用于传输的项目的名称是否显示在 项目选择器。项目选择器会显示您属于哪个项目 。

    从项目选择器中选择 Google Cloud 项目

    如果您没有看到要用于转移的项目的名称,请点击项目选择器,然后选择正确的项目。

  3. 点击“激活 Cloud Shell”。

    从菜单栏启动 devshell。

  4. 在 Cloud Shell 中,使用 wget 命令下载 Appliance Cloud 设置应用:

    wget https://storage.googleapis.com/transferappliance/cloudsetup/ta_cloudsetup_x86_64-linux -O ta_cloudsetup_x86_64-linux
    

运行 Appliance Cloud 设置应用

在 Cloud Shell 中,运行以下命令以启动设备云设置应用:

chmod 0777 ta_cloudsetup_x86_64-linux && ./ta_cloudsetup_x86_64-linux

该应用将引导您完成配置项目所需的步骤。

应用输出

设备云设置应用会完成以下操作:

  • 向设备服务账号授予权限 用于从 Cloud Storage 存储桶导出数据。
  • 仅支持使用客户管理的加密密钥从 Cloud Storage 存储桶导出数据。向设备服务账号授予访问 Cloud KMS 密钥数据的权限。
  • 显示以下信息:

    • Google Cloud 加密密钥资源名称
    • Google Cloud Cloud Storage 目标存储桶名称

显示的信息也会存储在 Cloud Shell 的主目录中,该目录名为 SESSION_ID-output.txt,其中 SESSION_ID 是此次转移的会话 ID。

获准执行此特定传输的服务账号的名称存储在 Cloud Shell 的主目录(名为 cloudsetup.log)中。

将 CMEK 信息发送给 Google

请填写标题为 Google Transfer Appliance 权限的电子邮件中链接的表单,向我们发送关键信息。

问题排查

错误 400:服务账号不存在

问题

设备云设置应用会显示以下消息:

Service account ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com
does not exist.

其中 SESSION_ID 是提供给设备云设置应用的会话 ID。

解决方案:

验证转移的会话 ID。每个会话的会话 ID 由 Transfer Appliance 团队共享。如果您尚未收到会话 ID,请发送电子邮件至 data-support@google.com

错误:列出 KMS 位置

问题:

设备云设置应用会显示以下消息:

Error: listing kms locations

解决方案:

在 Cloud Shell 中执行以下操作:

  1. 运行 gcloud auth login 以重新进行身份验证。

  2. 重试设备云设置应用。

如果错误仍然存在,请发送电子邮件至 data-support@google.com 与 Transfer Appliance 团队联系。

错误:创建 Cloud KMS 密钥约束条件时出错

问题:

设备云设置应用会显示类似以下内容的消息:

Error: creating cloud kms key violates constraint error: code = FailedPrecondition
desc= europe-west6 violates constraint 'constraints/gcp.resourceLocations' on
the resource 'projects/test/locations/europe-west6'

解决方案:

您的 Google Cloud 项目可能存在禁止在特定位置创建 Cloud Key Management Service 密钥的组织政策。以下是可能的解决方案:

  • 选择其他位置来创建 Cloud Key Management Service 密钥。
  • 更新组织政策以允许在 所需位置

如需了解详情,请参阅 限制资源位置