IDCFの「オブジェクトストレージ」を「s3cmd」で操作してみました!
IDCFのドキュメントはあるんですが、2016年6月現在「s3cmd」のバージョンが古かったので、
ハマりました!メモっておきマース!
もくじ
環境
- CentOS 6.8
- s3cmd 1.6.1(epel)
- epelリポジトリ導入済み
- IDCFオブジェクトストレージAPI 接続情報取得済み
IDCFのドキュメント
s3cmd のご利用方法|IDCFヘルプサイトs3cmd のインストール
epelのリポジトリを導入済みで、話を進めます!sudo yum install s3cmd --enablerepo epel
Amazon S3 Tools: S3cmd News
s3cmd の設定
s3cmd --configureで、API関連の設定以外はすべてデフォルトで!$ s3cmd --configure Enter new values or accept defaults in brackets with Enter. Refer to user manual for detailed description of all options. Access key and Secret key are your identifiers for Amazon S3. Leave them empty for using the env variables. Access Key: # コントロールパネルで発行したAccess Keyを入力 Secret Key: # コントロールパネルで発行したSecret Keyを入力 Default Region [US]: Encryption password is used to protect your files from reading by unauthorized persons while in transfer to S3 Encryption password: Path to GPG program [/usr/bin/gpg]: When using secure HTTPS protocol all communication with Amazon S3 servers is protected from 3rd party eavesdropping. This method is slower than plain HTTP, and can only be proxied with Python 2.7 or newer Use HTTPS protocol [Yes]: New settings: Access Key: Secret Key: Default Region: US Encryption password: Path to GPG program: /usr/bin/gpg Use HTTPS protocol: True HTTP Proxy server name: HTTP Proxy server port: 0 Test access with supplied credentials? [Y/n] n Save settings? [y/N] y Configuration saved to '/home/snickerjp/.s3cfg'
- 設定ファイル
--- /home/snickerjp/.s3cfg.dist 2016-07-05 19:26:35.103986993 +0900 +++ /home/snickerjp/.s3cfg 2016-07-05 19:29:50.329986811 +0900 @@ -29,8 +29,8 @@ gpg_encrypt = %(gpg_command)s -c --verbose --no-use-agent --batch --yes --passphrase-fd %(passphrase_fd)s -o %(output_file)s %(input_file)s gpg_passphrase = guess_mime_type = True -host_base = s3.amazonaws.com -host_bucket = %(bucket)s.s3.amazonaws.com +host_base = ds.jp-xxx.xxx.com # コントロールパネルでエンドポイント確認 +host_bucket = %(bucket)s.ds.jp-xxx.xxx.com # コントロールパネルでエンドポイント確認 human_readable_sizes = False invalidate_default_index_on_cf = False invalidate_default_index_root_on_cf = True @@ -55,9 +55,9 @@ requester_pays = False restore_days = 1 secret_key = -send_chunk = 65536 +send_chunk = 32768 server_side_encryption = False -signature_v2 = False +signature_v2 = True simpledb_host = sdb.amazonaws.com skip_existing = False socket_timeout = 300signature_v2 = Trueここが、キモ!
オブジェクトストレージの操作
- バケット参照
# s3cmd ls
- バケット内参照
# s3cmd ls s3://バケット名
- ディレクトリ内参照
# s3cmd ls s3://バケット名/ディレクトリ名/ 最後の/は必須です。
- バケット作成
# s3cmd mb s3://バケット名
- オブジェクトアップロード
# s3cmd put オブジェクト名 s3://バケット名
- オブジェクト上書き
# s3cmd put オブジェクト名A s3://バケット名/オブジェクト名A
- ディレクトリアップロード
# s3cmd put -r ディレクトリ名 s3://バケット名
s3cmdのコマンド一覧 | オブジェクトストレージ
関連サイト
オブジェクトストレージ 特長|クラウドならIDCフロンティア