LoginSignup
5
3

More than 5 years have passed since last update.

Amazon Glacierの一通りの流れ

Last updated at Posted at 2018-11-18

目的

S3のライフサイクルポリシーでGlacierに移動することはあるが、直接Glacierをさわることがあまりないので再度やってみる。
S3のライフサイクルポリシーでGlacierに移動した場合は、Glacierのコンソールから操作できず、S3のコンソールから操作することになる。

Glacierのコンソール操作は、Vaultの作成、削除が可能
その他、アーカイブのダウンロードや削除はCLIかAPI経由で実施する必要がある
それぞれの操作は、数時間かかるものもある
https://docs.aws.amazon.com/amazonglacier/latest/dev/downloading-an-archive.html

Glacierで使用する用語

ボールト
ボールトは、アーカイブを格納するコンテナ
https://docs.aws.amazon.com/ja_jp/amazonglacier/latest/dev/working-with-vaults.html

アーカイブ
写真、動画、ドキュメントなど、ボールトに格納するオブジェクト
https://docs.aws.amazon.com/ja_jp/amazonglacier/latest/dev/working-with-archives.html

インベントリ
ボールトの情報が格納されている
Amazon Glacier はボールトインベントリを約 1 日 1 回のペースで更新される

ジョブ

ジョブ
Amazon Glacier ジョブを開始して、アーカイブに SELECT クエリを実行したり、アーカイブを取得したり、またはボールトインベントリを取得することができます。
以下は、Amazon Glacier ジョブのタイプです。
select— アーカイブに SELECT クエリを実行。
archive-retrieval— アーカイブを取得。
inventory-retrieval— ボールトのインベントリ。

流れ

ボールトの作成(管理コンソール/CLI/API)※即時完了
アーカイブの登録(CLI/API)
アーカイブのダウンロード(CLI/API)
アーカイブの削除(CLI/API)
ボールトの削除(管理コンソール/CLI/API)※即時完了

ボールト作成

image.png

image.png

image.png

image.png

ここまでは待ち時間なく終わる

アーカイブの登録

アーカイブとして、CloudFormationのYamlファイルを登録する

test.yml

AWSTemplateFormatVersion: '2010-09-09'
Resources:
  SecurityGroupB:
    Type: AWS::EC2::SecurityGroup
    Properties:
      VpcId: vpc-26505643
      GroupDescription: SecurityGroupB
      SecurityGroupIngress:
      - IpProtocol: tcp
        FromPort: '80'
        ToPort: '80'
        CidrIp: 0.0.0.0/0
  SecurityGroupC:
    Type: AWS::EC2::SecurityGroup
    Properties:
      VpcId: vpc-26505643
      GroupDescription: SecurityGroupC
      SecurityGroupIngress:
      - IpProtocol: tcp
        FromPort: '22'
        ToPort: '22'
        CidrIp: 172.0.0.0/32

aws glacier upload-archiveコマンドでファイルをアップロードする

$ aws glacier upload-archive --account-id - --vault-name sample-vault --body test.yaml 
{
    "archiveId": "85L5vbNDcG7IxIC32_aXfDxoN8WFNkX7qM1XtKvdQhHvbeOlv_brvdS6QysS2oQANkz5bGSYt45bF3uG4WFBNnkYLM3BLeLjMCqTO1Fgi1tu8dYXKqJSJWIE2p0pv_uiM_ckBclsMA",
    "checksum": "069ea4906c8c23a7f9a2e87ef6c3c104a10921ed794933d8d874133d7a3f9f6f",
    "location": "/*******/vaults/sample-vault/archives/85L5vbNDcG7IxIC32_aXfDxoN8WFNkX7qM1XtKvdQhHvbeOlv_brvdS6QysS2oQANkz5bGSYt45bF3uG4WFBNnkYLM3BLeLjMCqTO1Fgi1tu8dYXKqJSJWIE2p0pv_uiM_ckBclsMA"
}

Glacierのコンソールに表示されるのに数時間がかかる
archiveIdを控えておく。ダウンロードする際に必要となる。

archiveIDを忘れた場合は、インベントリから取得する。

aws glacier initiate-job   --account-id - --vault-name sample-vault --job-parameters '{"Type": "inventory-retrieval"}'

インベントリからarchiveidを確認

aws glacier get-job-output --account-id - --vault-name sample-vault --job-id q14SmZRD91RxroYz08Ck6STEB9yTagRp40a7MMFgz5QGJuo9GweKAHSTZlbWjRDijFM7R9Eh5axgmAJpAm5NSYSNJANq output.json
cat output.json 
{"VaultARN":"arn:aws:glacier:ap-northeast-1:******:vaults/sample-vault","InventoryDate":"2017-03-11T12:17:12Z","ArchiveList":[{"ArchiveId":"85L5vbNDcG7IxIC32_aXfDxoN8WFNkX7qM1XtKvdQhHvbeOlv_brvdS6QysS2oQANkz5bGSYt45bF3uG4WFBNnkYLM3BLeLjMCqTO1Fgi1tu8dYXKqJSJWIE2p0pv_uiM_ckBclsMA","ArchiveDescription":"","CreationDate":"2017-03-11T07:48:53Z","Size":629,"SHA256TreeHash":"5d088045dde3c9025e2a7ab9433834e9119cb2c41a03d6b3e49641145e444233"}]}

アーカイブのダウンロード

$ cat archive.json 
{
  "Type": "archive-retrieval",
  "ArchiveId": "85L5vbNDcG7IxIC32_aXfDxoN8WFNkX7qM1XtKvdQhHvbeOlv_brvdS6QysS2oQANkz5bGSYt45bF3uG4WFBNnkYLM3BLeLjMCqTO1Fgi1tu8dYXKqJSJWIE2p0pv_uiM_ckBclsMA",
  "Description": "download"
}
aws glacier initiate-job --account-id - --vault-name sample-vault --job-parameters file://archive.json
aws glacier list-jobs --account-id - --vault-name sample-vault
        {
            "ArchiveSHA256TreeHash": "069ea4906c8c23a7f9a2e87ef6c3c104a10921ed794933d8d874133d7a3f9f6f",
            "JobDescription": "download",
            "ArchiveSizeInBytes": 562,
            "Tier": "Standard",
            "StatusCode": "Succeeded",
            "VaultARN": "arn:aws:glacier:ap-northeast-1:******:vaults/sample-vault",
            "StatusMessage": "Succeeded",
            "CompletionDate": "2018-11-18T06:19:15.468Z",
            "Completed": true,
            "SHA256TreeHash": "069ea4906c8c23a7f9a2e87ef6c3c104a10921ed794933d8d874133d7a3f9f6f",
            "JobId": "0042iEYqslXqASauSliWh-fUK4ryR3ESBE0allQJlMVSukZCXesyhOy5V0ekXtHIWppFsn2rDaHzk-mWsIm8M5lCx_wu",
            "ArchiveId": "85L5vbNDcG7IxIC32_aXfDxoN8WFNkX7qM1XtKvdQhHvbeOlv_brvdS6QysS2oQANkz5bGSYt45bF3uG4WFBNnkYLM3BLeLjMCqTO1Fgi1tu8dYXKqJSJWIE2p0pv_uiM_ckBclsMA",
            "RetrievalByteRange": "0-561",
            "Action": "ArchiveRetrieval",
            "CreationDate": "2018-11-18T02:31:07.857Z"
        }

Statusがコンプリートになっていること
JobIDを確認する

ダウンロードする

aws glacier get-job-output --account-id - --vault-name sample-vault --job-id 0042iEYqslXqASauSliWh-fUK4ryR3ESBE0allQJlMVSukZCXesyhOy5V0ekXtHIWppFsn2rDaHzk-mWsIm8M5lCx_wu sample.yaml
{
    "acceptRanges": "bytes",
    "checksum": "069ea4906c8c23a7f9a2e87ef6c3c104a10921ed794933d8d874133d7a3f9f6f",
    "contentType": "application/octet-stream",
    "status": 200
}
sample.yaml
AWSTemplateFormatVersion: '2010-09-09'
Resources:
  SecurityGroupB:
    Type: AWS::EC2::SecurityGroup
    Properties:
      VpcId: vpc-26505643
      GroupDescription: SecurityGroupB
      SecurityGroupIngress:
      - IpProtocol: tcp
        FromPort: '80'
        ToPort: '80'
        CidrIp: 0.0.0.0/0
  SecurityGroupC:
    Type: AWS::EC2::SecurityGroup
    Properties:
      VpcId: vpc-26505643
      GroupDescription: SecurityGroupC
      SecurityGroupIngress:
      - IpProtocol: tcp
        FromPort: '22'
        ToPort: '22'
        CidrIp: 172.0.0.0/32

アーカイブの削除

aws glacier delete-archive --account-id - --vault-name 'sample-vault' --archive-id 85L5vbNDcG7IxIC32_aXfDxoN8WFNkX7qM1XtKvdQhHvbeOlv_brvdS6QysS2oQANkz5bGSYt45bF3uG4WFBNnkYLM3BLeLjMCqTO1Fgi1tu8dYXKqJSJWIE2p0pv_uiM_ckBclsMA

インベントリに反映されるのは最大1日かかる

ボールト削除

GUIで実施

お約束

投稿内容は私個人の意見であり、所属企業・部門見解を代表するものではありません。

5
3
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3