本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用谷歌云存储配置 AWS DataSync 传输
以下教程展示了 AWS DataSync 如何使用将对象从 Google 云存储存储分区迁移到 Amazon S3 存储桶。
概览
由于 DataSync 与 Google 云存储 XML API
成本
与此迁移相关的费用包括:
-
运行 Google Compute En
gine 虚拟机 (VM) 实例(如果您在 Google Cloud 中部署 DataSync 代理) -
运行 A mazon EC2
实例(如果您在其中的 VPC 中部署 DataSync 代理 AWS) -
使用传输数据 DataSync
,包括与 Google 云存储 和 Amazon S3 相关的请求费用(如果 S3 是您的传输地点之一) -
将数据从 Google Cloud Storage
中传出 -
在 Amazon S3
中存储数据
先决条件
开始之前,请完成以下先决条件(如果尚未完成):
-
使用要传入 AWS的对象,创建 Google Cloud Storage 存储桶
。 -
创建 Amazon S3 存储桶,用于在对象存入 AWS后存储这些对象。
为 Google Cloud Storage 存储桶创建 HMAC 密钥
DataSync 使用与您的 Google 服务帐号关联的 HMAC 密钥对您要从中传输数据的存储桶进行身份验证和读取。(有关如何创建 HMAC 密钥的详细说明,请参阅 Google Cloud Storage 文档
创建 HMAC 密钥
-
为您的 Google 服务帐号创建 HMAC 密钥。
-
请确保您的 Google 服务帐号至少具有
Storage Object Viewer
权限。 -
将 HMAC 密钥访问 ID 和私有密钥存储在安全位置。
稍后您将需要这些物品来配置您的 DataSync 来源位置。
第 2 步:配置网络
此迁移的网络要求取决于您要如何部署 DataSync 代理。
如果您想在 Google Cloud 中托管 DataSync 代理,请将您的网络配置为允许通过公共端点进行 DataSync 传输。
如果要在中托管代理 AWS,则需要一个带有接口终端节点的 VPC。 DataSync 使用 VPC 终端节点来促进传输。
为 VPC 端点配置您的网络
-
如果您没有 VPC,请在与您的 S3 存储桶 AWS 区域 相同的 VPC 中创建。
-
为创建 VPC 服务终端节点 DataSync。
-
将您的网络配置为允许通过 VPC 服务终端节点进行 DataSync 传输。
为此,请修改与 VPC 服务端点关联的安全组。
步骤 3:创建 DataSync代理
您需要一个可以访问和读取您的 Google 云存储分区的 DataSync 代理。
在这种情况下, DataSync 代理将在您的 Google Cloud 环境中运行。
开始之前:安装 Google Cloud CLI
为 Google Cloud 创建代理
-
打开 AWS DataSync 控制台,网址为https://console.aws.amazon.com/datasync/
。 -
在左侧的导航窗格中,选择 代理,然后选择 创建代理。
-
对于 Hypervisor VMware ESXi,选择,然后选择 “下载映像” 以下载包含代理的
.zip
文件。 -
打开终端。运行以下命令来对映像解压缩:
unzip AWS-DataSync-Agent-VMWare.zip
-
运行以下命令提取以
aws-datasync
开头的代理.ova
文件中的内容:tar -xvf aws-datasync-2.0.1655755445.1-x86_64.xfs.gpt.ova
-
运行以下 Google Cloud CLI 命令,将代理的
.vmdk
文件导入到 Google Cloud 中:gcloud compute images import aws-datasync-2-test \ --source-file INCOMPLETE-aws-datasync-2.0.1655755445.1-x86_64.xfs.gpt-disk1.vmdk \ --os centos-7
注意
导入
.vmdk
文件最多可能需要两个小时。 -
为您刚刚导入的代理映像创建并启动 VM 实例。
该实例需要为代理进行以下配置。(有关如何创建实例的详细说明,请参阅 Google 云计算引擎文档
。) -
对于计算机类型,请选择下列选项之一:
-
e2-standard-8 — 适用于处理多达 2000 万个对象的 DataSync任务执行。
-
e2-standard-16 — 适用于处理超过 2000 万个对象的 DataSync任务执行。
-
-
对于启动磁盘设置,请转到自定义映像部分。然后选择您刚刚导入的 DataSync 代理映像。
-
对于服务帐号设置,请选择 Google 服务帐号(与您在第 1 步 中使用的帐号相同)。
-
对于防火墙设置,请选择允许 HTTP(端口 80)通信的选项。
要激活您的 DataSync 代理,必须在代理上打开端口 80。不要求该端口可供公开访问。激活后, DataSync 关闭端口。
-
-
VM 实例运行后,记录其公有 IP 地址。
您需要此 IP 地址来激活代理。
-
返回 DataSync 控制台。在下载代理映像的 创建代理屏幕上,执行以下操作以激活代理:
-
对于端点类型,选择公共服务端点选项(例如,美国东部俄亥俄州的公共服务端点)。
-
对于激活密钥,选择自动从代理处获取激活密钥。
-
对于代理地址,输入您刚创建的代理 VM 实例的公有 IP 地址。
-
选择 获取密钥。
-
-
为您的代理指定名称,然后选择 创建代理。
代理处于在线状态,可以随时传输数据。
在这种情况下,代理在与您的关联的 VPC 中作为 Amazon EC2 实例运行 AWS 账户。
开始之前:设置 AWS Command Line Interface (AWS CLI)。
为 VPC 创建代理
-
打开终端。请务必将您的 AWS CLI 个人资料配置为使用与您的 S3 存储桶关联的账户。
-
复制以下 命令。将
替换为您的 VPC 所在的 AWS 区域 (例如,vpc-region
us-east-1
)。aws ssm get-parameter --name /aws/service/datasync/ami --region
vpc-region
-
运行命令。在输出中,记录
"Value"
属性。此值是您指定区域的 DataSync 亚马逊系统映像 (AMI) ID。例如,AMI ID 可能类似于
ami-1234567890abcdef0
。 -
复制以下 URL。再次将
替换为您的 VPC 所在的 AWS 区域 。接着,将vpc-region
替换为您在上一步中记录的 AMI ID。ami-id
https://console.aws.amazon.com/ec2/v2/home?region=
vpc-region
#LaunchInstanceWizard:ami=ami-id
-
将该 URL 粘贴到浏览器中。
屏幕中 AWS Management Console 显示了 Amazon EC2 实例启动页面。
-
对于实例类型,请为 DataSync 代理选择一个推荐的 Amazon EC2 实例。
-
对于密钥对,选择现有密钥对或新建一个密钥对。
-
对于网络设置,选择要部署代理的 VPC 和子网。
-
选择 启动实例。
-
Amazon EC2 实例运行后,选择您的 VPC 终端节点。
第 4 步:为您的 Google 云存储分区创建 DataSync源位置
要为您的 Google Cloud Storage 存储分区设置 DataSync 位置,您需要在步骤 1 中创建的 HMAC 密钥的访问权限 ID 和密钥。
创建 DataSync 源位置
打开 AWS DataSync 控制台,网址为https://console.aws.amazon.com/datasync/
。 在左侧导航窗格中,展开数据传输,然后选择 位置和 创建位置。
-
对于 位置类型,选择 对象存储。
-
对于代理,选择您在步骤 3 中创建的代理。
-
对于服务器,输入
storage.googleapis.com
。 -
对于存储桶名称,输入您的 Google Cloud Storage 存储桶的名称。
-
展开 其他设置。对于服务器协议,请选择 HTTPS。对于服务器端口,请选择 443。
-
向下滚动到身份验证部分。确保选中 需要凭据复选框,然后执行以下操作:
-
对于访问密钥,输入您的 HMAC 密钥访问 ID。
-
对于私有密钥,输入您的 HMAC 密钥的私有密钥。
-
-
选择创建位置。
步骤 5:为您的 S3 存储桶创建 DataSync 目标位置
你需要一个 DataSync 位置来存放你想要的数据存放位置。
创建 DataSync 目标位置
打开 AWS DataSync 控制台,网址为https://console.aws.amazon.com/datasync/
。 在左侧导航窗格中,展开数据传输,然后选择 位置和 创建位置。
-
如果您在您的 VPC 中部署了 DataSync 代理,则本教程假定 S3 存储桶与您的 VPC 和 DataSync 代理位于同一 AWS 区域 位置。
步骤 6:创建并启动 DataSync 任务
配置好源位置和目标位置后,就可以开始将数据移入 AWS了。
创建并启动 DataSync 任务
打开 AWS DataSync 控制台,网址为https://console.aws.amazon.com/datasync/
。 在左侧导航窗格中,展开数据传输,然后选择任务,然后选择创建任务。
-
在配置源位置页面上,执行以下操作:
选择 选择现有位置。
-
选择您在第 4 步 中创建的源位置,然后选择 下一步。
-
在配置目标位置页面上,执行以下操作:
选择 选择现有位置。
-
选择您在第 5 步 中创建的目标位置,然后选择 下一步。
-
在 配置设置 页面上,执行以下操作:
在 数据传输配置下,展开 其他设置,然后清除 复制对象标签复选框。
重要
由于使用 Amazon S3 API DataSync 与 Google 云存储进行通信,因此如果您尝试复制对象标签,则存在一个限制,可能会导致 DataSync 任务失败。
-
配置所需的任何其他任务设置,然后选择 下一步。
-
在 审核页面上,审核您的设置,然后选择 创建任务。
-
在任务的详细信息页面上,选择开始,然后选择以下选项之一:
-
如需运行任务而不进行修改,请选择从默认值开始。
-
如需修改任务再运行,请选择使用覆盖选项开始。
-
任务完成后,您会在 S3 存储桶中看到 Google Cloud Storage 存储桶中的对象。