此页面仅适用于使用 Vaults 和 2012 年原始 REST API 的 Amazon Glacier 服务的现有客户。
如果您正在寻找档案存储解决方案,我们建议您在亚马逊 S3、S3 Glacier 即时检索、S3 Glacier 灵活检索和 S3 Glacier Deep Archive Deep Archive 中使用 Amazon Glacier 存储类。要了解有关这些存储选项的更多信息,请参阅 Amazon Glacier 存储类别
从 2025 年 12 月 15 日起,Amazon Glacier(最初基于保管库的独立服务)将不再接受新客户,对现有客户不产生任何影响。Amazon Glacier 是一项独立的服务 APIs ,拥有自己的服务,可将数据存储在文件库中,不同于亚马逊 S3 和 Amazon S3 Glacier 存储类别。在 Amazon Glacier 中,您的现有数据将保持安全且可以无限期地访问。无需迁移。对于低成本、长期的存档存储, AWS 建议使用 Amazon S3 Glacier 存储类别,这些存储类别
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Amazon Glacier 中配置文件库通知
从 Amazon Glacier 检索任何内容(例如文件库中的档案或文件库库存)需要分为两个步骤。
-
启动检索任务。
-
任务完成后,下载任务输出。
您可以在文件库上设置通知配置,以便在任务完成时向 Amazon Simple Notification Service (Amazon SNS) 主题发送消息。
主题
在 Amazon Glacier 中配置文件库通知:一般概念
Amazon Glacier 取回任务请求是异步运行的。您必须等到 Amazon Glacier 完成任务后才能获得其输出。您可以定期轮询 Amazon Glacier 来确定任务状态,但这不是最佳方法。亚马逊 Glacier 还支持通知。任务完成后,任务可以将消息发布到 Amazon Simple Notification Service (Amazon SNS) 主题。要使用此功能,您必须在文件库上设置通知配置。在配置中,您可以确定一个或多个事件以及一个您希望 Amazon Glacier 在事件发生时向其发送消息的 Amazon SNS 主题。
Amazon Glacier 定义了与任务完成 (ArchiveRetrievalCompleted,InventoryRetrievalCompleted) 具体相关的事件,您可以将其添加到文件库的通知配置中。特定任务完成后,Amazon Glacier 会向 SNS 主题发布一条通知消息。
通知配置是 JSON 文档,如以下示例所示。
{ "SNSTopic": "arn:aws:sns:us-west-2:012345678901:mytopic", "Events": ["ArchiveRetrievalCompleted", "InventoryRetrievalCompleted"] }
请注意,对于一个文件库,您只能配置一个 Amazon SNS 主题。
注意
向文件库添加通知配置会导致 Amazon Glacier 在通知配置中指定的事件发生时发送通知。此外,您还可以选择性地在每个任务启动请求中指定 Amazon SNS 主题。如果您在文件库中添加了通知配置,并在启动任务请求中指定了 Amazon SNS 主题,Amazon Glacier 会同时发送这两个通知。
Amazon Glacier 发送的任务完成消息包括任务类型 (InventoryRetrieval,ArchiveRetrieval)、任务完成状态、SNS 主题名称、任务状态代码和文件库 ARN 等信息。以下是 Amazon Glacier 在InventoryRetrieval任务完成后向 SNS 主题发送的通知示例。
{ "Action": "InventoryRetrieval", "ArchiveId": null, "ArchiveSizeInBytes": null, "Completed": true, "CompletionDate": "2012-06-12T22:20:40.790Z", "CreationDate": "2012-06-12T22:20:36.814Z", "InventorySizeInBytes":11693, "JobDescription": "my retrieval job", "JobId":"HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID", "SHA256TreeHash":null, "SNSTopic": "arn:aws:sns:us-west-2:012345678901:mytopic", "StatusCode":"Succeeded", "StatusMessage": "Succeeded", "VaultARN": "arn:aws:glacier:us-west-2:012345678901:vaults/examplevault" }
此外,如果 Completed 字段为 true,则您还必须检查 StatusCode 以查看任务是成功完成了还是失败了。
注意
请注意,Amazon SNS 主题必须允许文件库发布通知。默认情况下,只有 Amazon SNS 主题拥有者才能向主题发布消息。但是,如果 Amazon SNS 主题和文件库归其他人所有 AWS 账户,则必须将 Amazon SNS 主题配置为接受文件库中的出版物。您可以在 Amazon SNS 控制台中配置 Amazon SNS 主题策略。
有关 Amazon SNS 的更多信息,请参阅 Amazon SNS 入门。