AWS Snowball
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本指南适用于 Snowball Edge。如果您正在查找 Snowball 的相关文档,请参阅 AWS Snowball 用户指南

受支持的 REST API 操作

在下文中,您可以找到可与 Snowball Edge 结合使用的 REST API 操作。

受支持的 Snowball Edge REST API 操作

HEAD Snowball Edge

说明

目前,只有一个 Snowball Edge REST API 操作,它可用于返回特定设备的状态信息。此操作返回 Snowball Edge 的状态。此状态包括可供 AWS Support 用于问题排查的信息。

您不能将此操作与 AWS 开发工具包或 AWS CLI 配合使用。建议您使用 curl 或 HTTP 客户端。对于此操作,请求无需经过签名。

请求

在以下示例中,Snowball Edge 的 IP 地址为 192.0.2.0。将此值替换为您的实际设备的 IP 地址。

curl -X HEAD http://192.0.2.0:8080

响应

<Status xsi:schemaLocation="http://s3.amazonaws.com/doc/2006-03-01/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <snowballIp>127.0.0.1</snowballIp> <snowballPort>8080</snowballPort> <snowballId>device-id</snowballId> <totalSpaceInBytes>499055067136</totalSpaceInBytes> <freeSpaceInBytes>108367699968</freeSpaceInBytes> <jobId>job-id</jobId> <snowballServerVersion>1.0.1</snowballServerVersion> <snowballServerBuild>DevBuild</snowballServerBuild> <snowballClientVersion>Version 1.0</snowballClientVersion> <snowballRoundTripLatencyInMillis>33</snowballRoundTripLatencyInMillis> </Status>

受支持的 Amazon S3 REST API 操作

在下文中,您可以找到使用 适用于 Snowball 的 Amazon S3 Adapter 时可使用的 Amazon S3 REST API 操作的列表。此列表包括有关 API 操作如何与 Amazon S3 配合使用的信息的链接。此列表还列出了 Amazon S3 API 操作和 AWS Snowball Edge 设备 API 操作之间的所有行为差异。从 AWS Snowball Edge 设备返回的所有响应都声明 ServerAWSSnowball,如以下示例所示。

HTTP/1.1 200 OK x-amz-id-2: JuKZqmXuiwFeDQxhD7M8KtsKobSzWA1QEjLbTMTagkKdBX2z7Il/jGhDeJ3j6s80 x-amz-request-id: 32FE2CEB32F5EE25 Date: Fri, 08 2016 21:34:56 GMT Server: AWSSnowball

Amazon S3 REST API 调用需要 SigV4 签名。如果您使用 AWS CLI 或 AWS 开发工具包进行这些 API 调用,则会为您处理 SigV4 签名。否则,您需要实施自己的 SigV4 签名解决方案。有关更多信息,请参阅 Amazon Simple Storage Service 开发人员指南 中的对请求进行身份验证(AWS 签名版本 4)

  • GET Bucket (List Objects) 版本 1 – 支持。但是,唯一支持的分隔符是正斜杠。仅支持版本 1。不支持 GET Bucket (List Objects) 版本 2。

  • GET 服务

  • HEAD 存储桶

  • HEAD 对象

  • GET 对象 – 在使用 GET Object 将对象上传至 AWS Snowball Edge 设备时,除非使用分段上传的方法上传对象,否则不会生成实体标签 (ETag)。ETag 是该对象的哈希。ETag 仅反映对对象的内容的更改,而不反映对对象的元数据的更改。ETag 可能是该对象数据的 MD5 摘要,也可能不是。有关 ETag 的更多信息,请参阅 Amazon Simple Storage Service API Reference 中的常用响应标头

  • PUT 对象 – 在使用 PUT Object 将对象上传至 AWS Snowball Edge 设备时,除非使用分段上传的方法上传对象,否则不会生成 ETag。

  • DELETE 对象

  • 发起分段上传 – 在实施此操作时,针对 AWS Snowball Edge 设备上已有对象发起分段上传请求会先删除该对象。然后将其分段复制到 AWS Snowball Edge 设备。

  • 列出分段上传

  • 上传分段

  • 完成分段上传

  • 中止分段上传

注意

不支持此处未列出的任何 Amazon S3 REST API 操作。将任何不受支持的 REST API 操作与 Snowball Edge 结合使用会返回错误消息,说明不支持此操作。