amazon-glacier-cmd-interface を使ってバックアップする
botoのインストール
$ pip install boto
botoで使用する設定ファイルを作成
~/.boto
[Credentials]
aws_access_key_id = YOURACCESSKEY
aws_secret_access_key = YOURSECRETKEY
amazon-glacier-cmd-interfaceのインストール
$ git clone https://github.com/uskudnik/amazon-glacier-cmd-interface
$ cd amazon-glacier-cmd-interface
$ python setup.py install
Amazon SimpleDBのドメインを作成
GlacierはファイルをIDで管理するため、どのIDがどのファイルかがわからなくなる。
そのためSimpleDBを使って、ファイル名とIDの関連付けをする。
SimpleDBはAPIからの操作のみなのでスクリプトからドメインを作成する
create_sdb_domain.py
# !/usr/bin/env python
# coding: utf-8
import boto.sdb
def main():
conn = boto.sdb.connect_to_region('ap-northeast-1')
if conn is None:
# Noneの場合はリージョン名の設定ミス
print 'Invalid Region.'
return
# "jp.mursts.sdb.glacier_backup"という名のドメインを作成
conn.create_domain('jp.mursts.sdb.glacier_backup')
print conn.get_all_domains()
if __name__ == '__main__':
main()
$ create_sdb_domain.py
amazon-glacier-cmd-interfaceで使用する設定ファイルを作成
~/.glacier-cmd
[aws]
access_key=YOURACCESSKEY
secret_key=YOURSECRETKEY
[glacier]
region=ap-northeast-1 #東京リージョン
bookkeeping=True
bookkeeping-domain-name=jp.mursts.sdb.glacier_backup #SimpleDBのdomain名
logfile=~/.glacier-cmd.log
loglevel=INFO
output=print
Vaultを作成
"Test"という名前でVaultを作成する
$ glacier-cmd mkvault Test
ファイルをアップロード
$ glacier-cmd upload Test /path/to/archive
アップロードしたアーカイブの一覧を見る
ここではSimpleDBに保存した情報を取得している
$ glacier-cmd search Test