Для архивирования ваших данных в AWS вы можете использовать AWS Glacier . Этот сервис предлагает более дешевое хранилище, чем сервис S3, но недостатком является то, что ваши данные не будут доступны сразу же, как в S3. Восстановление данных может занять несколько часов, но если вы используете этот сервис для реальных целей архивирования, это не должно быть реальной проблемой. Позволяет настроить Glacier Vault с помощью консоли управления . Выберите сервис Glacier в консоли управления: нажмите «Создать хранилище» и дайте ему имя: установите новую тему SNS, чтобы мы могли получать сообщения, когда действия по архивированию завершены. Если все прошло хорошо, Хранилище создано:
Вместе с хранилищем также создается новый SNS. Чтобы получать сообщения, размещенные на SNS, давайте подпишемся на него. Выберите службу SNS в консоли. Выберите только что созданную тему SNS. Теперь нажмите кнопку, чтобы создать подписку на эту тему. Я просто создаю подписку по электронной почте, чтобы каждое сообщение, опубликованное в теме, отправлялось на указанный адрес электронной почты:
Служба 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
|
Загрузите файл в хранилище, созданное ранее:
pascal$ ./glacier.py --region eu-west-1 archive upload PascalBackuPVault example.txt
Давайте проверим, находится ли файл в хранилище:
pascal$ ./glacier.py --region eu-west-1 archive list PascalBackuPVault example.txt
Now remove the local file and restore the archived one:
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
After a few hours the job is finished and we can access the local file ‘example.txt’ again.
pascal$ cat example.txt 42
And in the mail I find the following notification telling me the archive file is ready for retrieval:
{"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"} -- ...
There is of course a lot more to tell about AWS Glacier. This page will be a good next step to get familiair with Glacier.