使用 Snow 系列设备的先决条件 - Amazon Snowball Edge 开发者指南
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 Snow 系列设备的先决条件

在开始使用 Snow Family 设备之前,如果您还没有,则需要注册一个 Amazon 帐户。我们还建议您学习如何配置您的数据和计算实例以用于 Snow Family 设备。

Amazon Snowball Edge 是一项特定于区域的服务。因此,在规划作业之前,请确保服务在您的 Amazon Web Services 区域可用。请确保您的位置和 Amazon S3 存储桶位于相同 Amazon Web Services 区域 或相同的国家/地区,因为这会影响您订购设备的能力。

要在带有计算优化设备的 Snow 系列设备上使用兼容 Amazon S3 的存储来执行本地边缘计算和存储作业,您需要在预定时在设备上预置 S3 容量。Snow 系列设备上与 Amazon S3 兼容的存储支持本地存储桶管理,因此您可以在收到一个或多个设备后在设备或集群上创建 S3 存储桶。

作为订购流程的一部分,您需要创建一个 Amazon Identity and Access Management (IAM) 角色和一个 Amazon Key Management Service (Amazon KMS) 密钥。该 KMS 密钥用于加密您的作业的解锁代码。有关创建 IAM 角色和 KMS 密钥的更多信息,请参阅创建订购 Snow Family 设备的任务

注意

在亚太地区(孟买), Amazon Web Services 区域 服务由亚马逊互联网服务私人有限公司(AISPL)提供。有关在亚太地区(孟买)注册亚马逊 Web Services 的信息 Amazon Web Services 区域,请参阅注册 AISPL

注册获取 Amazon Web Services 账户

如果您没有 Amazon Web Services 账户,请完成以下步骤来创建一个。

报名参加 Amazon Web Services 账户
  1. 打开 https://portal.aws.amazon.com/billing/signup

  2. 按照屏幕上的说明进行操作。

    在注册时,将接到一通电话,要求使用电话键盘输入一个验证码。

    当您注册时 Amazon Web Services 账户,就会创建Amazon Web Services 账户根用户一个。根用户有权访问该账户中的所有 Amazon Web Services 和资源。作为安全最佳实践,请为用户分配管理访问权限,并且只使用根用户来执行需要根用户访问权限的任务

Amazon 注册过程完成后会向您发送一封确认电子邮件。在任何时候,您都可以通过转至 https://aws.amazon.com/ 并选择我的账户来查看当前的账户活动并管理您的账户。

保护 IAM 用户

注册后 Amazon Web Services 账户,开启多重身份验证 (MFA),保护您的管理用户。有关说明,请参阅 IAM 用户指南中的 为 IAM 用户启用虚拟 MFA 设备(控制台)

要允许其他用户访问您的 Amazon Web Services 账户 资源,请创建 IAM 用户。为了保护您的 IAM 用户,请启用 MFA 并仅向 IAM 用户授予执行任务所需的权限。

有关创建和保护 IAM 用户的更多信息,请参阅《IAM 用户指南》中的以下主题:

关于本地环境的问题

了解您的数据集以及本地环境的设置方式将如何帮助您完成数据传输。下订单之前,请注意以下事项。

您要传输什么数据?

Amazon Snowball Edge 无法很好地传输大量小文件。这是因为 Snowball Edge 会对每个单独的对象进行加密。小文件包含大小小于 1 MB 的文件。我们建议您在将它们传输到 Amazon Snowball Edge 设备之前先将其压缩。还建议每个目录包含的文件或目录数不超过 500,000 个。

传输期间会访问数据吗?

拥有一个静态数据集(即在传输过程中,没有用户或系统访问数据)十分重要。否则,文件传输可能会因为校验和不匹配而失败。此时,文件不会传输,且文件将标记为 Failed

为防止数据损坏,请勿在传输数据时断开 Amazon Snowball Edge 设备或更改其网络设置。文件在写入设备时应处于静态状态。在文件写入设备时修改文件可能会导致读取/写入冲突。

网络是否支持 Amazon Snowball 数据传输?

Snowball Edge 支持 RJ45SFP+QSFP+ 网络适配器。确认您的交换机为千兆位交换机。交换机上可能会标明千兆位10/100/1000,因交换机品牌而异。Snowball Edge 设备不支持兆位交换机或 10/100 交换机。

处理包含特殊字符的文件名

请务必注意,如果对象的名称包含特殊字符,则可能会遇到错误。尽管 Amazon S3 允许使用特殊字符,但我们强烈建议您避免使用以下字符:

  • 反斜杠(“\”)

  • 左大括号(“{”)

  • 右大括号(“}”)

  • 左方括号(“[”)

  • 右方括号(“]”)

  • “小于”符号(“<”)

  • “大于”符号(“>”)

  • 不可打印的 ASCII 字符(128–255 十进制字符)

  • 插入符号(“^”)

  • 百分比字符(“%”)

  • 重音符/反勾号(“`”)

  • 引号

  • 波浪字符(“~”)

  • “井号”字符(“#”)

  • 竖线(“|”)

如果您的文件在对象名称中包含一个或多个这些字符,请在将对象复制到 Amazon Snowball Edge 设备之前对其进行重命名。文件名中有空格的 Windows 用户在复制单个对象或运行递归命令时应注意。在命令中,将名称中包含空格的对象名称用引号括起来。此类文件的示例如下:

操作系统 文件名:test file.txt

Windows

“C:\Users\<username>\desktop\test file.txt”

iOS

/Users/<username>/test\ file.txt

Linux

/home/<username>/test\ file.txt

注意

传输的唯一对象元数据是对象名称和大小。

亚马逊 S3 加密使用 Amazon KMS

在导入或导出数据时,您可以使用默认的托 Amazon 管或客户管理的加密密钥来保护您的数据。

使用带有 Amazon KMS 托管密钥的 Amazon S3 默认存储桶加密

使用启用 Amazon 托管加密 Amazon KMS
  1. 打开 Amazon S3 控制台,网址为:https://console.aws.amazon.com/s3/

  2. 请选择您想要加密的 Amazon S3 存储桶。

  3. 在右侧显示的向导中,选择属性

  4. 默认加密框中,选择已禁用(此选项显示为灰色)来启用默认加密。

  5. 选择 Amazon-KMS 作为加密方法,然后选择要使用的 KMS 密钥。此密钥用于对放入存储桶的对象进行加密。

  6. 选择保存

创建 Snowball Edge 作业后,在导入数据之前,请向现有 IAM 角色策略添加一个语句。这是您在预定过程中创建的角色。根据作业类型,默认角色名称与 Snowball-import-s3-only-roleSnowball-export-s3-only-role 类似。

以下是此类语句的示例。

对于导入数据

如果您使用带有 Amazon KMS 托管密钥的服务器端加密 (SSE-KMS) 来加密与导入任务关联的 Amazon S3 存储桶,则还需要在您的 IAM 角色中添加以下语句。

例 示例 Snowball 导入 IAM 角色
{ "Effect": "Allow", "Action": [ "kms: GenerateDataKey", "kms: Decrypt" ], "Resource":"arn:aws:kms:us-west-2:123456789012:key/abc123a1-abcd-1234-efgh-111111111111" }

对于导出数据

如果您使用带有 Amazon KMS 托管密钥的服务器端加密来加密与导出任务关联的 Amazon S3 存储桶,则还必须将以下语句添加到您的 IAM 角色中。

例 Snowball 导出 IAM 角色
{ "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource":"arn:aws:kms:us-west-2:123456789012:key/abc123a1-abcd-1234-efgh-111111111111" }

对 Amazon KMS 客户密钥使用 S3 默认存储桶加密

您可以将默认 Amazon S3 存储桶加密与您自己的 KMS 密钥结合使用,用以保护您正在导入和导出的数据。

对于导入数据

使用启用客户托管加密 Amazon KMS
  1. 登录 Amazon Web Services Management Console 并打开 Amazon Key Management Service (Amazon KMS) 控制台,网址为 https://console.aws.amazon.com/kms

  2. 要更改 Amazon Web Services 区域,请使用页面右上角的区域选择器。

  3. 在左侧导航窗格中,选择客户托管密钥,然后选择与您要使用的存储桶相关联的 KMS 密钥。

  4. 如果密钥政策尚未展开,请将其展开。

  5. 秘钥用户部分,选择添加并搜索 IAM 角色。选择 IAM 角色,然后选择添加

  6. 或者,您可以选择切换到策略视图来显示密钥政策文档并向密钥政策添加语句。以下是该策略的示例。

例 Amazon KMS 客户托管密钥的政策
{ "Sid": "Allow use of the key", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:role/snowball-import-s3-only-role" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*" }

将此策略添加到 Amazon KMS 客户托管密钥后,还需要更新与 Snowball 任务关联的 IAM 角色。默认情况下,该角色为 snowball-import-s3-only-role

例 Snowball 导入 IAM 角色
{ "Effect": "Allow", "Action": [ "kms: GenerateDataKey", "kms: Decrypt" ], "Resource": "arn:aws:kms:us-west-2:123456789012:key/abc123a1-abcd-1234-efgh-111111111111" }

有关更多信息,请参阅 使用基于身份的策略(IAM 策略) Amazon Snowball

正在使用的 KMS 密钥如下所示:

“Resource”:“arn:aws:kms:region:AccoundID:key/*”

对于导出数据

例 Amazon KMS 客户托管密钥的政策
{ "Sid": "Allow use of the key", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:role/snowball-import-s3-only-role" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*" }

将此策略添加到 Amazon KMS 客户托管密钥后,还需要更新与 Snowball 任务关联的 IAM 角色。默认情况下,角色如下所示:

snowball-export-s3-only-role

例 Snowball 导出 IAM 角色
{ "Effect": "Allow", "Action": [ "kms: GenerateDataKey", "kms: Decrypt" ], "Resource": "arn:aws:kms:us-west-2:123456789012:key/abc123a1-abcd-1234-efgh-111111111111" }

将此策略添加到 Amazon KMS 客户托管密钥后,还需要更新与 Snowball 任务关联的 IAM 角色。默认情况下,该角色为 snowball-export-s3-only-role

在 Snow 系列设备上使用 Amazon S3 Adapter 执行导入和导出作业的先决条件

当您使用 Snow Family 设备将数据从本地数据源移动到云端或从云端移动到本地数据存储时,可以在 Snow Family 设备上使用 S3 适配器。有关更多信息,请参阅 使用 Amazon S3 Adapter 传输文件来进行数据迁移

与作业关联的 Amazon S3 存储桶必须使用 Amazon S3 Standard 存储类别。创建第一个作业时,请谨记以下信息。

对于将数据导入 Amazon S3 的作业,应按照以下步骤执行:

  • 确认根据 Amazon S3 的对象键命名指南对要传输的文件和文件夹进行命名。其名称不满足这些指南的任何文件或文件夹将不会导入到 Amazon S3 中。

  • 计划要导入 Amazon S3 中的数据。有关更多信息,请参阅 规划您的大型传输

从 Amazon S3 导出数据之前,请执行以下步骤:

  • 了解在您创建作业时将导出的数据。有关更多信息,请参阅 使用导出范围

  • 对于文件名中包含冒号(:)的任何文件,先在 Amazon S3 中更改文件名,然后创建导出作业以获取这些文件。文件名中包含冒号的文件将无法导出到 Microsoft Windows Server。

在 Snow 系列设备上使用与 Amazon S3 兼容的存储的先决条件

在 Snow Family 设备上存储数据并将数据用于本地计算操作时,您可以在 Snow Family 设备上使用与 Amazon S3 兼容的存储。返回设备时,用于本地计算操作的数据不会导入到 Amazon S3。

在预定具有与 Amazon S3 兼容的存储的 Snow 设备用于本地计算和存储时,请记住以下几点。

  • 您将在预定设备时预配置 Amazon S3 存储容量。因此,在预定设备之前,请考虑您的存储需求。

  • 您可以在收到设备后在设备上创建 Amazon S3 存储桶,而不必在预定 Snow 系列设备时创建。

  • 您需要下载最新版本的 Amazon CLI (v2.11.15 或更高版本)、Snowball Edge 客户端,或者将其安装在计算机上,才能在 Snow Family 设备上使用与 Amazon S3 兼容的存储。 Amazon OpsHub

  • 收到设备后,按照本指南中的在 Snow 系列设备上使用与 Amazon S3 兼容的存储来在 Snow 系列设备上配置、启动和使用与 Amazon S3 兼容的存储。

在 Snow 系列设备上使用计算实例的先决条件

您可以运行托管在 E Amazon Snowball dge 上的兼容 Amazon EC2 的计算实例,sbe-g实例类型为sbe1sbe-c、和:

  • sbe1 实例类型适用于具有 Snowball Edge Storage Optimized 选项的设备。

  • sbe-c 实例类型适用于具有 Snowball Edge Compute Optimized 选项的设备。

  • sbe-csbe-g 实例类型均适用于具有 Snowball Edge Compute Optimized with GPU 选项的设备。

支持在 Amazon Snowball Edge 设备选项上使用的所有三种计算实例类型对于 Snowball Edge 设备都是唯一的。与基于云的对应情况类似,这些实例需要亚马逊机器映像(AMI)来启动。在创建 Snowball Edge 作业之前,您要为实例选择 AMI。

要在 Snowball Edge 上使用计算实例,请创建一个任务来订购 Snow Family 设备并指定您的 AMI。您可以使用 Amazon Snowball 管理控制台、 Amazon Command Line Interface (Amazon CLI) 或其中一个 Amazon SDK 来执行此操作。通常情况下,要使用您的实例,您必须在创建作业之前先执行一些事务管理先决条件。

注意

不再支持 Ubuntu 16.04 LTS-Xenial (HVM) 镜像,但仍支持通过亚马逊 EC2 虚拟机导入/导出在 Snowball Edge 设备上使用,并在 AMI 中本地运行。 Amazon Web Services Marketplace

您可以从 Amazon Web Services Marketplace 获取这些映像。

如果您正在使用 SSH 连接在 Snowball Edge 上运行的实例,则可以使用自己的密钥对,也可以在 Snowball Edge 上创建密钥对。 Amazon OpsHub 要用于在设备上创建密钥对,请参阅使用密钥对。要使用在 Amazon CLI 设备上创建密钥对,请参见create-key-pair中的Snowball Edge 上支持的与 Amazon EC2 兼容的 Amazon CLI 命令列表。有关密钥对和亚马逊 Linux 2 的更多信息,请参阅亚马逊 EC2 用户指南中的亚马逊 EC2 密钥对和 Linux 实例

有关特定于在设备上使用计算实例的更多信息,请参阅 使用与 Amazon EC2 兼容的计算实例