要在AWS上归档数据,可以使用AWS Glacier 。 该服务提供的存储空间比S3服务便宜,但缺点是无法像使用S3一样立即访问您的数据。 恢复数据可能需要几个小时,但是如果您出于真正的存档目的使用此服务,那么这不是真正的问题。 让我们使用管理控制台设置Glacier Vault。 在管理控制台中选择Glacier服务:
点击“创建保险柜”并为其命名:
设置一个新的SNS主题,以便我们在归档操作完成后可以接收消息。
如果一切顺利,将创建保管库:
与库一起,还创建了一个新的SNS。 要接收发布在SNS上的消息,请订阅它。 在控制台中选择SNS服务:
选择刚刚创建的SNS主题:
现在,单击按钮以创建对该主题的订阅。 我只是创建一个电子邮件订阅,以便将该主题上发布的每条消息发送到提供的电子邮件地址:
管理控制台中的Glacier服务没有提供向Glacier归档文件或从Glacier归档文件或从中恢复文件的功能(与S3一样)。 但是,当然要使用一个API和几个SDK来传输文件。 当然,有一个社区加入了该社区,并创建了很多基于GUI和CLI的工具。 我只是选择了其中一个并安装了它。
安装和配置Glacier-cli后,我可以检查是否找到了创建的保管库:
pascal$ ./glacier.py --region eu-west-1 vault list
PascalBackuPVault
让我们将一些数据放入保管库。 我以CLI工具的示例为灵感。 创建本地文件:
pascal$ echo 42 > example.txt
将文件上传到之前创建的Vault中:
pascal$ ./glacier.py --region eu-west-1 archive upload PascalBackuPVault example.txt
让我们检查文件是否在库中:
pascal$ ./glacier.py --region eu-west-1 archive list PascalBackuPVault
example.txt
现在,删除本地文件并恢复已存档的文件:
pascal$ rm example.txt
pascal$ ./glacier.py --region eu-west-1 archive retrieve PascalBackuPVault example.txt
glacier: queued retrieval job for archive 'example.txt'
pascal$ ./glacier.py --region eu-west-1 archive retrieve PascalBackuPVault example.txt
glacier: job still pending for archive 'example.txt'
pascal$ ./glacier.py --region eu-west-1 job list
a/p 2013-05-20T18:40:25.107Z PascalBackuPVault example.txt
pascal$ ./glacier.py --region eu-west-1 archive retrieve --wait PascalBackuPVault example.txt
几个小时后,工作完成,我们可以再次访问本地文件“ example.txt”。
pascal$ cat example.txt
42
在邮件中,我发现以下通知,告诉我存档文件已可供检索:
{"Action":"ArchiveRetrieval"
,"ArchiveId":"CggVcXvaWKfRn5tDR_UKna0GsYyXyZzlALPvjEFkcLdRq4NRBXra36m7hBOJSNCbOmEkQ04VoyTQyMt_
pXdrNggms13e3vjUqwW3tZwps8BiA1gprQQZyUQPDwwWkuKAFZoqahzA-g"
,"ArchiveSHA256TreeHash":
"084c799cd551dd332d5c5f9a5d593b2e931f5e36122ee5c793c1d08a19839cc0"
,"ArchiveSizeInBytes":3
,"Completed":true
,"CompletionDate":"2013-05-20T22:40:31.040Z"
,"CreationDate":"2013-05-20T18:40:25.107Z"
,"InventorySizeInBytes":null
,"JobDescription":null
,"JobId":"rxRUKT0QVWyOEMu4VYW_zrhXXYZC0ZrVo63sCtQJDBpFyhO-pPRJ7Z_Af02Hvn-bge-yGrKzRw78xG9d-Nvxjv2LcQho"
,"RetrievalByteRange":"0-2"
,"SHA256TreeHash":
"084c799cd551dd1d6e535f9a5d593b2e931f5e36122ee5c793c1d08a19839cc0"
,"SNSTopic":null
,"StatusCode":"Succeeded"
,"StatusMessage":"Succeeded"
,"VaultARN":"arn:aws:glacier:eu-west-1:678658091597:vaults/PascalBackuPVault"}
--
...
当然,有关AWS Glacier的内容还有很多要说的。 此页面将是与Glacier交往的好下一步。
翻译自: https://www.javacodegeeks.com/2013/06/archiving-data-to-aws-glacier.html