本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Google 云存储配置AWS DataSync传输
以下教程显示了AWS DataSync如何使用将对象从 Google Cloud Storage 存储桶迁移到 Amazon S3 存储桶。
概览
由于DataSync与 Google Cloud Storage XML API
成本
与本次迁移相关的费用包括:
-
运行 Google Compute Engine
虚拟机 (VM) 实例(如果您在 Google Cloud 中部署DataSync代理) -
运行 A mazon EC2
实例(如果您在 VPC 内的 VPC 中部署DataSync代理AWS) -
使用以下方式传输数据 DataSync
-
将数据传输出谷歌云存储
-
在 Amazon S3
中存储数据
先决条件
开始之前,请执行以下操作(如果尚未完成):
-
使用您要转移到的对象@@ 创建 Google 云存储分区
AWS。 -
创建一个 Amazon S3 存储桶,用于在对象进入后对其进行存储AWS。
第 1 步:为Google Cloud Storage Bucket Bucket
DataSync使用与您的 Google 服务帐号关联的 HMAC 密钥对您从中传输数据的存储分区进行身份验证和读取。(有关如何创建 HMAC 密钥的详细说明,请参阅 Google 云存储文档
创建 HMAC 密钥
-
为您的 Google 服务帐号创建 HMAC 密钥。
-
确保您的 Google 服务帐号至少具有
Storage Object Viewer
权限。 -
将 HMAC 密钥的访问 ID 和密钥保存在安全位置。
稍后您将需要这些物品来配置您的DataSync源位置。
步骤 2:配置网络
此迁移的网络要求取决于您要如何部署DataSync代理。
如果您想在 Google Cloud 中托管DataSync代理,请将您的网络配置为允许通过公共终端节点进行DataSync传输。
如果您想在其中托管代理AWS,则需要一个带有接口终端节点的 VPC。DataSync使用 VPC 终端节点来促进传输。
为 VPC 终端节点配置您的网络
-
如果还没有存储桶,请在与 S3 存储桶AWS 区域相同的 VPC 中创建 VPC。
-
使用@@ 为创建 VPC 终端节点AWS PrivateLink。DataSync
-
将您的网络配置为允许通过 VPC 终端节点进行DataSync传输。
要进行必要的配置更改,您可以修改与 VPC 终端节点关联的安全组。有关安全组的更多信息,请参阅《Amazon VPC 用户指南》中的使用安全组控制到资源的流量。
步骤 3:创建DataSync代理
您需要一个可以访问和读取您的 Google 云存储分区的DataSync代理。
在这种情况下,DataSync代理在您的 Google Cloud 环境中运行。
开始之前:安装谷歌云命令行界面
为谷歌云创建代理
-
通过 https://console.aws.amazon.com/datasync/
打开AWS DataSync主机。 -
在左侧导航窗格中,选择代理,然后选择创建代理。
-
对于虚拟机管理程序,选择 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 CLI 命令,将代理
.vmdk
文件导入谷歌云中: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
文件最多可能需要两个小时。 -
为刚刚导入的代理映像创建并启动虚拟机实例。
该实例需要为您的代理配置以下配置。(有关如何创建实例的详细说明,请参阅 Google 云计算引擎文档
。) -
对于机器类型,请选择以下选项之一:
-
e2-standard-8 — 适用于传输多达 2000 万个文件的DataSync任务。
-
e2-standard-16 — 适用于传输超过 2000 万个文件的DataSync任务。
-
-
有关启动磁盘设置,请转到自定义映像部分。然后选择刚才导入的DataSync代理映像。
-
对于服务帐号设置,请选择您的 Google 服务帐号(与您在步骤 1 中使用的帐号相同)。
-
对于防火墙设置,选择允许 HTTP(端口 80)流量的选项。
要激活DataSync代理,必须在代理上打开端口 80。该端口不需要公开访问。激活后,DataSync关闭端口。
-
-
虚拟机实例运行后,记录其公有 IP 地址。
您需要此 IP 地址来激活代理。
-
返回到 DataSync 控制台。在下载代理映像的创建代理屏幕上,执行以下操作以激活代理:
-
对于端点类型,选择公共服务终端节点选项(例如,美国东俄亥俄州的公共服务终端节点)。
-
对于激活密钥,选择自动从代理获取激活密钥。
-
对于代理地址,输入您刚刚创建的代理虚拟机实例的公有 IP 地址。
-
选择 “获取密钥”。
-
-
为您的代理命名,然后选择 “创建代理”。
您的代理已联机并准备好移动数据。
在这种情况下,代理作为 Amazon EC2 实例运行,该实例在与您关联的 VPC 中运行AWS 账户。
开始之前:设置AWS Command Line Interface (AWS CLI)。
为您的 VPC 创建代理
-
打开 终端。确保将您的配置AWS CLI文件配置为使用与您的 S3 存储桶关联的账户。
-
复制以下命令。
替换为AWS 区域您的 VPC 所在的位置(例如vpc-region
us-east-1
)。aws ssm get-parameter --name /aws/service/datasync/ami --region
vpc-region
-
运行 命令。在输出中,记录该
"Value"
属性。该值是您指定区域的DataSync Amazon Machinch Image(AMI)ID。例如,AMI ID 可能如下所示
ami-1234567890abcdef0
。 -
复制以下 URL。同样,替换
为您的 VPCAWS 区域 所在的位置。然后,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 实例之一。
-
对于 key p air,选择现有密钥对,或新建一个密钥对。
-
对于网络设置,选择要在其中部署代理的 VPC 和子网。
-
选择 Launch instance (启动实例)。
-
在 Amazon EC2 实例运行后,选择您的 VPC 终端节点。
第 4 步:为您的 Google 云存储分区创建DataSync源位置
要为您的 Google Cloud Storage 存储分区设置DataSync位置,您需要在步骤 1 中创建的 HMAC 密钥的访问权限 ID 和密钥。
创建DataSync源位置
通过 https://console.aws.amazon.com/datasync/
打开AWS DataSync主机。 在左侧导航窗格中,展开数据传输,然后选择位置和创建位置。
-
对于位置类型,选择对象存储。
-
对于代理,请选择您在步骤 3 中创建的代理。
-
对于服务器,输入
storage.googleapis.com
。 -
在存储分区名称中,输入您的 Google 云存储分区的名称。
-
展开 Additional settings(其他设置)。对于服务器协议,选择 HTTPS。对于服务器端口,选择 443。
-
向下滚动到认证部分。确保选中 “需要凭据” 复选框,然后执行以下操作:
-
对于访问密钥,请输入您的 HMAC 密钥的访问 ID。
-
对于私有密钥,请输入 HMAC 密钥的密钥。
-
-
选择 “创建地点”。
步骤 5:为您的 S3 存储桶创建DataSync目标位置
你需要一个DataSync位置,用于存放你希望数据存放到哪里。
创建DataSync目标位置
通过 https://console.aws.amazon.com/datasync/
打开AWS DataSync主机。 在左侧导航窗格中,展开数据传输,然后选择位置和创建位置。
-
如果您在 VPC 中部署DataSync代理,则本教程假定 S3 存储桶与您的 VPC 和DataSync代理位于AWS 区域相同的 VPC 中。
步骤 6:创建并启动DataSync任务
配置好来源和目标位置后,即可开始将数据移入AWS。
创建和启动DataSync任务
通过 https://console.aws.amazon.com/datasync/
打开AWS DataSync主机。 在左侧导航窗格中,展开 “数据传输”,然后选择 “任务”,然后选择 “创建任务”。
-
在 Conf igure L ogs 页面上,执行以下操作:
选择 “选择现有地点”。
-
选择您在步骤 4 中创建的源位置,然后选择下一步。
-
在 Conf igure L ogs 页面上,执行以下操作:
选择 “选择现有地点”。
-
在 Conf igure L aunch 页面上,执行以下操作:
在 “数据传输配置” 下,展开其他设置并清除 “复制对象标签” 复选框。
重要
由于使用 Amazon S3 APIDataSync 与 Google Cloud Storage 通信,因此存在一个限制,如果您尝试复制对象标签,可能会导致DataSync任务失败。
-
配置所需的任何其他任务设置,然后选择 “下一步”。
-
在 Reviu ch 页面上,检查您的设置,然后选择 Creviuch Ta unch 页面上。
-
在任务的详细信息页面上,选择 Start(开始),然后选择以下选项之一:
-
要在不修改的情况下运行任务,请选择 “以默认值启动”。
-
要在运行任务之前对其进行修改,请选择 “使用替代选项开始”。
-
任务完成后,您将在 S3 存储分区中看到 Google Cloud Storage 存储分区中的对象。