本文介绍了如何使用 AWS DataSync 在 Snowball Edge 装置上设定 Amazon S3 相容存储以自动和有效地移动数据。随著 AWS Snow 家族的变化,越来越多的用户希望不仅仅是简单的数据迁移。本文将步骤化地介绍如何在 AWS Snowball Edge 上安装 DataSync 代理,并配置任务以将数据从 Snowball Edge 复制到 AWS 区域中的 S3 存储。这不仅能提高数据处理效率,还能实现数据的持续同步,从而满足实时或近实时的需求。
用户自 2015 年 AWS Snowball 上线以来,成功利用 Amazon Web Services (AWS) Snow 家族在本地和 AWS 区域 之间转移 PB千兆字节的数据。用户不再仅仅依赖 AWS Snow 家族进行数据迁移,而是利用 AWS Snowball Edge Compute Optimized 装置,应用于需要数据处理的环境。此外,边缘计算提供快速的洞察,但用户常将收集的数据存储在企业数据湖中以便长期保存。
在本篇文章中,我们将详述如何将 AWS DataSync 代理加载到 AWS Snowball Edge 装置上并将数据从 Snowball Edge 相容存储桶复制到 AWS 区域中的 S3 存储桶。这一过程包括可重试和网络恢复机制,适合在不稳定的网络环境中运行。
在本文示例中,我们有一台相机将高解析度、未压缩的视频存储到 Snowball Edge 装置上的 S3 存储桶,并在 Amazon EC2 兼容的计算实例上运行人工智能 (AI) 应用程序,以分析视频并识别感兴趣的物体。视频分析后,原始视频需要进行降采样并存档,以便将来可能的人类审查。
该解决方案包括以下 AWS 服务和功能:
服务描述AWS Snowball Edge Compute Optimized 装置用于本地计算和存储作业的雪球装置。Amazon S3 相容存储提供两个存储桶,用于数据和 Amazon 机器映像 (AMI)Amazon EC2 DataSync 代理配置以将物件复制到 AWS 区域中的 S3 存储桶AWS S3 存储桶用于在 AWS 区域中存储数据DataSync数据转移服务图 1 Snowball Edge S3 DataSync 架构
在遵循本篇文章的过程中,您需要以下先决条件:
拥有一个 AWS 帐户并具备至少一个 AWS 区域的管理访问权限我们的示例使用 useast1 区域。创建独立的 AWS 帐户。拥有配备 Amazon S3 相容存储的 AWS Snowball Edge 装置、解锁码和清单文件,同时具有互联网连接。更多信息请参考 开始使用 Snowball Edge。支持 Snowball Edge 装置及工作站的设施:电力、网络电缆和网络设备,以便将 Snow 装置、工作站和互联网互连。拥有 90GB 可用空间的 Windows 或 Mac 工作站,并且需安装以下软件:AWS 命令行界面 (AWS CLI) gt= 21115AWS Snowball Edge 客户端 (SBE CLI) gt= 120AWS OpsHub for Snow Family gt= 11511Terraform gt= 150要从 Snow 家族设备的 Amazon S3 相容存储复制物件到 S3 存储桶,请按照以下步骤进行:
在 AWS Snowball Edge 装置上启动 Amazon S3 相容存储服务。配置 AWS CLI,以便与 S3 控制桶和 S3 API物件端点互动。在 AWS Snowball Edge 装置上创建两个相容的 S3 存储桶。创建一个 AWS 身份与访问管理 (IAM) 角色和策略,以在 AWS Snowball Edge 装置上启用 虚拟机导入/导出 (VMIE) 服务。从 EC2 实例创建 DataSync AMI 并将其本地导出。将 DataSync 代理导入并启动为 AWS Snowball Edge 装置上的 Amazon EC2 兼容计算实例。部署基础架构即代码 (IaC),以启用代理并创建 DataSync 任务,以便按照用户定义的计划从 AWS Snowball Edge 装置复制到 Amazon S3 区域桶。验证 DataSync 复制任务和执行结果。在订购、接收、安装 Snowball Edge 装置并建立网络连接后,下一步是连接到该装置、配置并启动 Amazon S3 相容服务。此服务称为 S3snow,以下配置步骤中将以此为参考。
注意:我们使用 SBE CLI 解锁并启动 S3snow 服务。或者,您可以使用 AWS OpsHub for Snow Family 来实现图形界面操作。
从 AWS Snow Family 管理控制台下载一份清单文件,并记下当您下载清单时显示的解锁码。我们建议您将解锁码和清单保存在不同的位置,以防止未经授权访问您的 AWS Snowball Edge 装置。在工作站上使用 Snowball Edge CLI,配置名为 “snowsbe” 的配置文件,并输入 Snowball Edge 凭证:snowballEdge configure profile snowsbe
系统会要求您输入清单文件的路径、解锁码和 Snowball Edge 端点,格式为:https//ltIP 地址gt。
使用以下命令解锁 Snowball Edge 装置:snowballEdge unlockdevice profile snowsbe
通过以下命令确认您已经解锁装置:snowballEdge describedevice profile snowsbe
随后,您需设置 Snow 服务上的 Amazon S3 相容存储。该服务需要两个 虚拟网络接口 (VNI) 一个用于 S3 API物件端点,另一个则用于 S3 控制桶端点。稍后,您将设置一个 Terraform 变数值,指向 DataSync 代理与 AWS 区域中的 S3 存储桶进行同步操作的 S3 端点的主机名或 IP 地址。
通过以下命令检索该装置的物理网络接口 ID:snowballEdge describedevice profile snowsbe
确定两个在您 Snowball Edge 装置同一子网上可用的 IP 地址。运行以下命令创建 VNI,并检索 VirtualNetworkingInterfaceArn 值。必须针对每个 Amazon S3 端点运行此命令每个 IP 地址应分开输入:snowballEdge createvirtualnetworkinterface ipaddressassignment static physicalnetworkinterfaceid ltPHYSICALINTIDgt staticipaddressconfiguration IpAddress=ltIPADDRESSgtNetMask=ltNETMASKgt profile snowsbe
启动 S3snow 服务,指定先前创建的 VNI 的 ARN:snowballEdge startservice serviceid s3snow deviceipaddresses ltSNOWBALLIPgt virtualnetworkinterfacearns ltS3CONTROLVNIARNgt ltS3OBJECTVNIARNgt profile snowsbe
可选:通过以下命令验证服务是否已启动:
snowballEdge describeservice serviceid s3snow profile snowsbe
现在我们已启用 Amazon S3 相容存储服务,接下来需要配置 AWS CLI 凭证,以使用 S3 控制和 S3 API 命令。
运行以下命令从 Snowball Edge 检索访问密钥:snowballEdge listaccesskeys profile snowsbe
使用前述的访问密钥检索配对的密码访问密钥:snowballEdge getsecretaccesskey accesskeyid ltACCESSKEYIDgt profile snowsbe
列出 Snowball Edge 的凭证及其相应的 ARN:snowballEdge listcertificates profile snowsbe
使用此 ARN 值下载并本地保存 Snowball Edge 凭证,将输出凭证保存至 “pem” 文件中:snowballEdge getcertificate certificatearn ltCERTARNgt profile snowsbe gt /aws/snowsbecertpem
将 pem 文件的权限设置为只读并且其他用户无法访问:
在 Linux chmod 400 /aws/snowsbecertpem
在 Windows 右击文件 gt 属性 gt 切换为只读模式
编辑 /aws/config 文件,并为该 Snowball Edge 装置创建一个配置文件。
设置好 Snowball Edge 装置的 AWS CLI 配置后,您可以通过 AWS CLI 使用 Amazon S3 控制 API 来创建 S3 存储桶。
在 Snowball Edge 上创建一个存储桶以存储降采样后的视频:aws s3control createbucket bucket ltdownsampledbucketvideogt profile snowsbe endpointurl https//ltS3CONTROLIPgt
然后创建一个存储 DataSync 代理的 AMI 的桶:aws s3control createbucket bucket ltamibucketgt profile snowsbe endpointurl https//ltS3CONTROLIPgt
要将 DataSync 代理导入为 Snow EC2 兼容计算实例,我们使用 VMIE 服务来代替执行此任务。Snow VMIE 服务需要一个 IAM 角色和 IAM 政策,以便他们假设所需的权限来完成导入过程。
在我的示例中,我们使用 CLI 来创建 IAM 政策、IAM 角色,将政策附加到角色上,并创建信任策略以允许 Snowball VMIE 服务假设此角色。要详细了解如何使用 OpsHub GUI 配置策略,请参考 这篇 Amazon Storage 文章 中的第 3 步。
本地下载 IAM 信任策略文件 并命名为 “trustpolicyjson”:
使用参考的 trustpolicyjson 文件创建 IAM 角色:
aws iam createrole rolename vmimport assumerolepolicydocument file//trustpolicyjson profile snowsbe endpoint https//ltSNOWBALLIPgt6089
本地下载 IAM 政策文件 并命名为 “iampolicyjson”。根据您的 AWS 帐户 ID、Snow 工作 ID 和第 32 步中创建的 编辑该文件。
使用 iampolicyjson 文件在 Snowball Edge 上创建 IAM 政策:
aws iam createpolicy policyname vmimportresourcepolicy policydocument file//iampolicyjson profile snowsbe endpoint https//ltSNOWBALLIPgt6089
使用上一步中 IAM 政策 ARN 将 vmimportresourcepolicy IAM 政策附加到 vmimport IAM 角色:aws iam attachrolepolicy rolename vmimport policyarn arnawsiamltACCOUNTIDgtpolicy/vmimportresourcepolicy profile snowsbe endpoint https//ltSNOWBALLIPgt6089
配置 DataSync 的第一步是部署 DataSync。选择将 DataSync 部署在与 Snowball Edge 较近的位置,以降低延迟并利用 DataSync 的线内压缩,减少传输时间和网络运输成本。在我们的范例中,我们将 DataSync 代理直接部署在 SnowBall Edge 上,以便利用本地计算能力,同时降低与 Amazon S3 相容存储服务的延迟。
在 AWS 区域中创建一个私有 DataSync 代理 AMI 指定,将最新的 DataSync 代理部署在 EC2 实例上。此方法可以在 AWS Snowball Edge 中运行的 DataSync 代理上提供本地控制台访问,步骤如下:
准备将 DataSync 代理映像导出到 Amazon S3,进行必要的区域 VMIE 服务前置条件类似于第 4 步对 Snowball Edge VMIE 服务的指导:
a 创建一个 S3 存储桶,存储您的映像,并确保与 DataSync 服务相同的 AWS 区域。b 为 VMIE 创建服务角色。
加速器下载免费永久版
将 DataSync 代理作为 Amazon EC2 实例部署,遵循以下指导:
a DataSync AMI 的 AWS 区域应与 DataSync 服务和 S3 桶的区域相同。b 使用以下设置启动您的实例:
i 使用 c4xlarge 实例,因为这在先前的世代 xen 虚拟机器上运行,确保在导入到 AWS Snowball Edge 之前安装必要的网络和存储驱动程序。ii 不使用登录密钥对,因为我们稍后可以在 Snowball Edge 装置上创建密钥对进行本地操作。iii 选择该区域的默认 VPC 子网。iv 禁
Llama 31 模型现已在 Amazon SageMaker JumpStart 提供 机器学习
现在可以在 Amazon SageMaker JumpStart 中使用 Llama 31 模型by Saurabh Trikande Eissa Jamil Helen Suk James Park Jonathan Guinegagne 和 Kyle Ulrich于2024年7月23日发布于 A...
使用亚马逊 Comprehend 有害内容检测标记有害内容 机器学习博客
使用 Amazon Comprehend 进行有害内容标记关键要点key takeawaysAmazon Comprehend提供了一项新的毒性检测功能,旨在帮助自动检测用户或机器生成文本中的有害内容。该工具使用自然语言处理技术,通过毒性分数和分类来帮助内容审核。支持的文本类型包括普通文本、图片提取...