SlideShare a Scribd company logo
Technical Tips on CLOUDIAN HyperStore #4
Technical Tips on CLOUDIAN HyperStore®
AWS CLI のインストールと使用方法
(CLOUDIAN HyperStore v5.2.x 対応版)
Version 1.0
Feb. 25, 2016
《 目 次 》
1. はじめに........................................................................................................ 3
2. AWS CLI のインストール.................................................................................... 5
3. AWS CLI の構成 ........................................................................................... 7
4. HYPERSTORE への接続方法............................................................................. 8
5. AWS CLI の使用例 ...................................................................................... 10
(1) オブジェクトのリスト表示 / AWS S3 LS............................................................. 11
使用例①: バケットのリスト表示 .......................................................................... 11
使用例②: 指定したバケット/フォルダ内のオブジェクトのリスト表示 ..................................... 12
使用例③: 指定したバケット/フォルダ内のオブジェクトの再帰的リスト表示 ............................ 12
使用例④: ファイルサイズを見やすい形式で表示 ........................................................ 13
使用例⑤: 総オブジェクト数および総容量のサマリー表示 .............................................. 14
(2) バケットの新規作成 / AWS S3 MB ................................................................ 15
使用例①: aws s3 mb .................................................................................. 15
(3) バケットの削除 / AWS S3 RB ...................................................................... 15
使用例①: aws s3 rb.................................................................................... 15
使用例②: aws s3 rb --force ......................................................................... 16
(4) ローカルファイルまたは HYPERSTORE 上のオブジェクトのコピー / AWS S3 CP ................... 17
使用例①: aws s3 cp ................................................................................... 18
使用例②: aws s3 cp --acl --sse .................................................................... 19
使用例③: aws s3 cp --recursive ................................................................... 20
使用例④: aws s3 cp --metadata................................................................... 22
(5) ローカルファイルまたは HYPERSTORE 上のオブジェクトの移動 / AWS S3 MV ................... 24
使用例①: aws s3 mv .................................................................................. 25
使用例②: aws s3 mv --recursive .................................................................. 26
(6) HYPERSTORE 上のオブジェクトの削除 / AWS S3 RM .............................................. 28
使用例①: aws s3 rm................................................................................... 28
使用例②: aws s3 rm --recursive................................................................... 29
(7) ファイル(オブジェクト)やディレクトリの同期 / AWS S3 SYNC ................................... 30
使用例①: aws s3 sync (初期コピー) ............................................................. 31
使用例②: aws s3 sync (新規に保存されたファイルを同期)..................................... 34
使用例③: aws s3 sync --delete (削除されたファイルを含めて同期) ......................... 36
6. おわりに ...................................................................................................... 39
Technical Tips on
CLOUDIAN HyperStore #3
P.2
Copyright © 2010-2016 Cloudian KK. All rights reserved.
本書では、AWS が無償で提供しているツール「AWS CLI」のインストール方法とその使用方法を、簡
単な使用例を掲載して説明します。
本書では説明されていないオプションの説明や、記載されている内容よりもより詳細な情報を確認した
い場合には、AWS CLI の公式ドキュメントページをご参照ください。
★AWS CLI リファレンス
http://docs.aws.amazon.com/cli/latest/reference/
《注意事項》
本書に掲載するサンプルコードを使用したことにより発生したデータの損失またはお客様のコンピューター・システムへの損
傷などのいかなる損害についても、クラウディアン株式会社は一切の責任を負わないものとします。
サンプルコードをそのままご使用になられる場合は、自己判断・自己責任でお願いします。
Technical Tips on
CLOUDIAN HyperStore #3
P.3
Copyright © 2010-2016 Cloudian KK. All rights reserved.
1. はじめに
CLOUDIAN HyperStore®(以下、「HyperStore」)は Amazon S3 完全互換のオブジェクトスト
レージですので、AWSが無償で提供している各種 SDKやコマンドラインツールを利用することができます。
2016 年 1 月 26 日現在、AWS は下図のような、11 種類の SDK を提供しています。
URL: https://aws.amazon.com/jp/tools/
Technical Tips on
CLOUDIAN HyperStore #3
P.4
Copyright © 2010-2016 Cloudian KK. All rights reserved.
前頁の SDK 以外にも下図のような IDE ツールキットやコマンドラインツールも提供しており、その全
てを HyperStore でも利用することができます。
上述のような AWS が提供している様々な SDK やツールを HyperStore でも利用することができます
が、これらのデフォルトの接続先は AWS のリージョン内の S3 エンドポイントが想定されています。これら
SDK やツールを HyperStore に対して使用する場合の大前提として、デフォルトである AWS が想定さ
れた接続先を HyperStore の S3 エンドポイントに上書きする必要があります。
AWS がインターネット上に公開している各種ドキュメントは、接続先として Amazon S3 を前提に作
成されているため、HyperStore を接続先として AWS CLI を使用するための設定に関する記載はあり
ません。本書では、HyperStore で AWS CLI をご活用頂くための設定方法について記載します。
Technical Tips on
CLOUDIAN HyperStore #3
P.5
Copyright © 2010-2016 Cloudian KK. All rights reserved.
2. AWS CLI のインストール
AWS CLI は、Windows-OS 版と Linux/UNIX/OS X 版が提供されています。
Windows-OS 版の AWS CLI は MSI インストーラーをダウンロードできますので、インストールは非常
に簡単です。
Linux/UNIX-OS/OS X 版の AWS CLI は、Python のパッケージマネージャーの pip1
を使用して
インストールすることができます。
# pip install awscli
Collecting awscli
/usr/lib/python2.7/site-
packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90:
InsecurePlatformWarning: A true SSLContext object is not available. This prevents
urllib3 from
configuring SSL appropriately and may cause certain SSL connections to fail. For more
information,
see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
InsecurePlatformWarning
Downloading awscli-1.9.5-py2.py3-none-any.whl (805kB)
100% |????????????????????????????????| 806kB 535kB/s
Collecting rsa<=3.3.0,>=3.1.2 (from awscli)
Downloading rsa-3.2.3-py2.py3-none-any.whl (44kB)
100% |????????????????????????????????| 45kB 8.9MB/s
Collecting botocore==1.3.5 (from awscli)
Downloading botocore-1.3.5-py2.py3-none-any.whl (2.1MB)
100% |????????????????????????????????| 2.1MB 168kB/s
Collecting colorama<=0.3.3,>=0.2.5 (from awscli)
Downloading colorama-0.3.3.tar.gz
Collecting docutils>=0.10 (from awscli)
Downloading docutils-0.12.tar.gz (1.6MB)
100% |????????????????????????????????| 1.6MB 184kB/s
Collecting pyasn1>=0.1.3 (from rsa<=3.3.0,>=3.1.2->awscli)
Downloading pyasn1-0.1.9-py2.py3-none-any.whl
Collecting jmespath<1.0.0,>=0.7.1 (from botocore==1.3.5->awscli)
Downloading jmespath-0.9.0-py2.py3-none-any.whl
Collecting python-dateutil<3.0.0,>=2.1 (from botocore==1.3.5->awscli)
Downloading python_dateutil-2.4.2-py2.py3-none-any.whl (188kB)
100% |????????????????????????????????| 192kB 1.9MB/s
Collecting six>=1.5 (from python-dateutil<3.0.0,>=2.1->botocore==1.3.5->awscli)
Downloading six-1.10.0-py2.py3-none-any.whl
Building wheels for collected packages: colorama, docutils
Running setup.py bdist_wheel for colorama
Stored in directory:
/root/.cache/pip/wheels/e3/24/8d/aec3db961cfbc8e939dc1843126548e7d479349f96659067e9
1
pip は Python で書かれたパッケージソフトウェアをインストール・管理するためのパッケージ管理システムである。多くの Python パッケージは、Python
Package Index(PyPI)上にある。
pip は Python 2.7.9 以降、Python 3.4 以降からデフォルトで付属するようになった。(Wikipedia より引用)
Technical Tips on
CLOUDIAN HyperStore #3
P.6
Copyright © 2010-2016 Cloudian KK. All rights reserved.
Running setup.py bdist_wheel for docutils
Stored in directory:
/root/.cache/pip/wheels/d5/32/4f/1347e8ac67071e8150a5dc69354a51a04ac065d0b48334f608
Successfully built colorama docutils
Installing collected packages: pyasn1, rsa, jmespath, six, python-dateutil, docutils,
botocore,
colorama, awscli
Successfully installed awscli-1.9.5 botocore-1.3.5 colorama-0.3.3 docutils-0.12
jmespath-0.9.0
pyasn1-0.1.9 python-dateutil-2.4.2 rsa-3.2.3 six-1.10.0
AWS CLI をインストールするマシンに Python がインストールされており、その Python のバージョンが
2.7.9 以降あるいは 3.4 以降であれば、pip は標準でインストールされています。これらよりも以前のバ
ージョンをご使用の場合は、Linux/Windows/OS X それぞれの環境に合わせた方法で pip をインスト
ールしてください。例として、以下のような Linux 環境で、pip をインストールする方法を例示します。
(1) Python のバージョン確認
# python --version
Python 2.7.5
(2) pip のインストール
# curl -kL https://raw.github.com/pypa/pip/master/contrib/get-pip.py | python
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- 0:00:06 --:--:-- 0
100 1379k 100 1379k 0 0 115k 0 0:00:11 0:00:11 --:--:-- 358k
Collecting pip
/tmp/tmpUns2I_/pip.zip/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90:
InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3
from configuring SSL appropriately and may cause certain SSL connections to fail. For more
information, see
https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
Downloading pip-7.1.2-py2.py3-none-any.whl (1.1MB)
100% |????????????????????????????????| 1.1MB 222kB/s
Collecting wheel
Downloading wheel-0.26.0-py2.py3-none-any.whl (63kB)
100% |????????????????????????????????| 65kB 7.0MB/s
Installing collected packages: pip, wheel
Successfully installed pip-7.1.2 wheel-0.26.0
/tmp/tmpUns2I_/pip.zip/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90:
InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3
from configuring SSL appropriately and may cause certain SSL connections to fail. For more
information, see
https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
(3) pip のバージョン確認
# pip --version
pip 7.1.2 from /usr/lib/python2.7/site-packages (python 2.7)
Technical Tips on
CLOUDIAN HyperStore #3
P.7
Copyright © 2010-2016 Cloudian KK. All rights reserved.
3. AWS CLI の構成
AWS CLI のインストールが完了したら、続いて S3 アクセスキーやシークレットキー、リージョン等のクレデ
ンシャル情報を設定します。
AWS CLI をインストールしたマシンのコンソールを開き、下記コマンドを実行します。
# aws configure
すると、対話的に以下の情報が設定できるプロンプトが表示されるので、HyperStore の管理 Web
UI である Cloudian Management Console(以下、「CMC」)で確認したアクセスキー(AWS
Access Key ID)とシークレットキー(AWS Secret Access Key)、HyperStore 導入時に設定したリー
ジョン名(Default region name)を入力します。
「Default output format」は、特に設定する必要はありません(何も入力せずにエンターを押下します)。
AWS Access Key ID [None]: <CMC で確認したアクセスキー>
AWS Secret Access Key [None]: <CMC で確認したシークレットキー>
Default region name [None]: <HyperStore のリージョン名>
Default output format [None]:<何も入力せずにエンター押下>
ここで設定したクレデンシャル情報は、aws configure を実行したユーザーのホームディレクトリ直下
の隠しディレクトリ「.aws」内の設定ファイル「credentialls」および「config」に保存されます。
以下は、その設定ファイルの中身の例です。
# cat ~/.aws/credentials
[default]
aws_access_key_id = 17b06232a5c5aa14c191
aws_secret_access_key = 1qEjM/Q+mtudeMtgKfm0dG/D7IQgExEwHtVbgMYf
# cat ~/.aws/config
[default]
region = region1
Technical Tips on
CLOUDIAN HyperStore #3
P.8
Copyright © 2010-2016 Cloudian KK. All rights reserved.
4. HyperStore への接続方法
「1. はじめに」に記載したように、AWS が提供している CLI や SDK 等の各種ツールは、その接続先と
して AWS 上のサービスを想定しています。
そのため、HyperStore に接続するためには、既存の Amazon S3 のエンドポイントを HyperStore
の S3 エンドポイントで上書きする必要があります。本書の検証で使用した HyperStore は、下表のよう
な環境設定になっています。
リージョン名 region1
S3 エンドポイント(サービス URL) s3-region1.shibuya.local
S3 サービスの SSL 使用の有無 無し(80/HTTP 通信)
※SSL 通信を有効化していない状態です。
この設定の HyperStore に AWS CLI で接続するには、コマンドのオプション「--endpoint-url」に
HyperStore の S3 エンドポイントを設定して aws コマンドを実行します。
# aws --endpoint-url http://s3-region1.shibuya.local s3 ls
2015-12-16 12:33:21 auto-tiering
2016-02-09 10:35:16 boto3
2016-02-12 14:36:20 logs
2015-12-18 12:53:45 mybucket001
2016-01-26 12:29:50 nbuvolume01
2015-12-16 12:31:48 owncloud-it
2015-12-16 12:32:31 owncloud-sales
2016-01-14 11:50:16 pythonbucket1
2016-01-14 12:37:19 pythonbucket2
2016-01-07 11:14:53 s3sample-rmatsui
2015-12-24 10:22:05 zidoma-data
AWS CLI は S3 サービスだけではなく、AWS が提供している様々なサービスに接続することができます
が、HyperStore で AWS CLI を利用する場合には、aws コマンドで指定するサービス種別には「s3」を
指定します。
# aws {サービス種別} {コマンド} {パラメータ}
※HyperStore に接続するには、{サービス種別}に「s3」を指定。
Technical Tips on
CLOUDIAN HyperStore #3
P.9
Copyright © 2010-2016 Cloudian KK. All rights reserved.
例えば前頁で例示した
aws --endpoint-url http://s3-region1.shibuya.local s3 ls
は、まず接続先の S3 エンドポイントをコマンドオプションの「--endpoint-url」で指定して、
HyperStore の S3 エンドポイントを指定し、次にサービス種別として「s3」を指定して「ls」というコマンド
を実行しています。
~ 「--endpoint-url」をエイリアスに登録してスッキリ!!! ~
AWS CLI で(Amazon S3 ではなく)HyperStore に接続したい場合には、上述の通り、aws コマンドのオプション
「--endpoint-url」で HyperStore の S3 エンドポイントを指定する必要があります。
しかしながら毎回毎回、「aws --endpoint-url {HyperStore の S3 エンドポイント}を入力するのは面倒ですので、
例えば Linux 環境であれば aws コマンドのエイリアスを設定しておくことにより、入力を減らすことができます。
以下の「~/.bashrc」の設定例では、aws と入力すれば「--endpoint-url」付きで実行されるように、aws のエイリア
スを設定しています。
# .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias aws='aws --endpoint-url http://s3-region1.shibuya.local'
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
このエイリアス設定により、aws コマンドを実行する際に「--endpoint-url {HyperStore の S3 エンドポイント}」を入
力する手間を省けます。
補 足
Technical Tips on
CLOUDIAN HyperStore #3
P.10
Copyright © 2010-2016 Cloudian KK. All rights reserved.
5. AWS CLI の使用例
本章では、aws s3 コマンドの使用例をそのオプションの説明と共に幾つか掲載します。上述のように
(エイリアス設定により「--endpoint-url」が省略可な状態になっていない限り)aws コマンドのオプション「--
endpoint-url」によりHyperStore のS3 エンドポイントを指定する必要があることに注意してください。
本章でのコマンド実行時には、Linux 上で
「alias aws='aws --endpoint-url http://s3-region1.shibuya.local'」
とエイリアスを設定している状態になっていることを前提としています。
aws s3 で使用可能なコマンドは、下記の 8 種類が存在します。
○ cp … ローカルファイルまたは HyperStore 上のオブジェクトのコピー
○ ls … オブジェクトのリスト表示
○ mb … バケットの新規作成
○ mv … ローカルファイルまたは HyperStore 上のオブジェクトの移動
○ rb … バケットの削除
○ rm … オブジェクトの削除
○ sync … ファイルやディレクトリの同期
○ website … バケットのウェブサイト構成の設定
Technical Tips on
CLOUDIAN HyperStore #3
P.11
Copyright © 2010-2016 Cloudian KK. All rights reserved.
(1) オブジェクトのリスト表示 / aws s3 ls
HyperStore 上に作成・保管されているバケットやオブジェクトを、リスト表示します。ls のオプ
ションとしては、再帰的にリスト表示させる「--recursive」やオブジェクトのサイズ表示を見やすく
させる「--human-readable」、指定したバケットやフォルダに格納されているオブジェクトの総容
量や総数を表示させる「--summarize」等があります。
使用例①: バケットのリスト表示
クレデンシャル情報を設定したユーザーが HyperStore 上に作成しているバケットを、リスト表
示します。「ls」コマンドには、何もパラメータを積んでいない状態です。
# aws s3 ls
2015-12-16 12:33:21 auto-tiering
2016-02-09 10:35:16 boto3
2016-02-12 14:36:20 logs
2015-12-18 12:53:45 mybucket001
2016-01-26 12:29:50 nbuvolume01
2015-12-16 12:31:48 owncloud-it
2015-12-16 12:32:31 owncloud-sales
2016-01-14 11:50:16 pythonbucket1
2016-01-14 12:37:19 pythonbucket2
2016-01-07 11:14:53 s3sample-rmatsui
2015-12-24 10:22:05 zidoma-data
aws s3 ls <S3Uri> [--recursive] [--page-size <value>] [--human-readable] [--summarize]
構 文
Technical Tips on
CLOUDIAN HyperStore #3
P.12
Copyright © 2010-2016 Cloudian KK. All rights reserved.
使用例②: 指定したバケット/フォルダ内のオブジェクトのリスト表示
「ls」コマンドのパラメータとしてバケット名を設定し、そのバケットの中のオブジェクトをリスト表示し
ます。
下記の例では、バケット「boto3」の中に格納されているオブジェクトをリスト表示し、このバケット
の中には「200mb_mpu.dat」というオブジェクトが格納されていることが分かります。
# aws s3 ls boto3
2016-02-12 12:50:48 200000000 200mb_mpu.dat
下記の例では、バケット「logs」の中に格納されているオブジェクトをリスト表示しています。
このバケット直下には、オブジェクトのプリフィックスに相当するフォルダ「2016-02-12」が作成さ
れていることが分かります。
# aws s3 ls logs
PRE 2016-02-12/
使用例③: 指定したバケット/フォルダ内のオブジェクトの再帰的リスト表示
「ls」コマンドのパラメータとしてバケット名と、再帰的リスト表示を指定する「--recursive」を設
定して、そのバケットの中のオブジェクトを再帰的にリスト表示します。
下記の例では、バケット「logs」の中に格納されているオブジェクトを再帰的にリスト表示してい
ます。
# aws s3 ls logs --recursive
2016-02-12 14:47:15 6924 2016-02-12/boot.log
2016-02-12 14:47:15 0 2016-02-12/btmp
2016-02-12 14:47:15 0 2016-02-12/btmp-20160209
2016-02-12 14:47:16 5963 2016-02-12/cron
2016-02-12 14:47:16 30006 2016-02-12/cron-20151130
2016-02-12 14:47:16 4590 2016-02-12/cron-20160106
2016-02-12 14:47:16 6789 2016-02-12/cron-20160113
2016-02-12 14:47:16 7996 2016-02-12/cron-20160209
2016-02-12 14:47:16 113564 2016-02-12/dmesg
2016-02-12 14:47:15 113778 2016-02-12/dmesg.old
2016-02-12 14:47:15 1373 2016-02-12/grubby
2016-02-12 14:47:15 292000 2016-02-12/lastlog
2016-02-12 14:47:16 588 2016-02-12/maillog
2016-02-12 14:47:15 1176 2016-02-12/maillog-20151130
2016-02-12 14:47:16 588 2016-02-12/maillog-20160106
2016-02-12 14:47:16 588 2016-02-12/maillog-20160113
2016-02-12 14:47:16 1764 2016-02-12/maillog-20160209
2016-02-12 14:47:16 420207 2016-02-12/messages
2016-02-12 14:47:16 852019 2016-02-12/messages-20151130
2016-02-12 14:47:16 399489 2016-02-12/messages-20160106
2016-02-12 14:47:16 400394 2016-02-12/messages-20160113
Technical Tips on
CLOUDIAN HyperStore #3
P.13
Copyright © 2010-2016 Cloudian KK. All rights reserved.
2016-02-12 14:47:16 1223658 2016-02-12/messages-20160209
2016-02-12 14:47:16 3140 2016-02-12/secure
2016-02-12 14:47:16 6393 2016-02-12/secure-20151130
2016-02-12 14:47:16 2396 2016-02-12/secure-20160106
2016-02-12 14:47:16 2159 2016-02-12/secure-20160113
2016-02-12 14:47:15 7377 2016-02-12/secure-20160209
2016-02-12 14:47:16 0 2016-02-12/spooler
2016-02-12 14:47:16 0 2016-02-12/spooler-20151130
2016-02-12 14:47:16 0 2016-02-12/spooler-20160106
2016-02-12 14:47:16 0 2016-02-12/spooler-20160113
2016-02-12 14:47:15 0 2016-02-12/spooler-20160209
2016-02-12 14:47:15 0 2016-02-12/tallylog
2016-02-12 14:47:15 5689 2016-02-12/vmware-install.log
2016-02-12 14:47:15 152000 2016-02-12/vmware-vmsvc.log
2016-02-12 14:47:15 109824 2016-02-12/wtmp
2016-02-12 14:47:16 3158 2016-02-12/yum.log
2016-02-12 14:47:16 12812 2016-02-12/yum.log-20160106
使用例④: ファイルサイズを見やすい形式で表示
「ls」コマンドのパラメータ「--human-readable」は、ls コマンドの出力内のファイルサイズを人
間に見やすい形式で表示させます。
下記の例では、バケット「mybucket001」の中に格納されているオブジェクトを再帰的にリスト
表示し、ファイルサイズを見やすく表示しています。
# aws s3 ls mybucket001 --recursive --human-readable
2015-12-18 14:20:50 0 Bytes index.files/
2015-12-18 14:21:28 314 Bytes index.files/colorschememapping.xml
2015-12-18 14:21:28 396 Bytes index.files/filelist.xml
2015-12-18 14:21:28 1.9 KiB index.files/header.htm
2015-12-18 14:21:28 2.5 KiB index.files/image001.png
2015-12-18 14:21:28 3.9 KiB index.files/image002.png
2015-12-18 14:21:28 295.2 KiB index.files/image003.png
2015-12-18 14:21:28 8.6 KiB index.files/image004.png
2015-12-18 14:21:28 136.1 KiB index.files/preview.wmf
2015-12-18 14:21:28 3.1 KiB index.files/themedata.thmx
2015-12-18 14:20:31 53.5 KiB index.htm
Technical Tips on
CLOUDIAN HyperStore #3
P.14
Copyright © 2010-2016 Cloudian KK. All rights reserved.
使用例⑤: 総オブジェクト数および総容量のサマリー表示
「ls」コマンドのパラメータ「--summarize」は、コマンドの出力の最後に総オブジェクト数と総容
量を表示させます。
下記の例では、バケット「logs」の下にあるフォルダ「2016-02-12」の中に格納されているオブ
ジェクトを再帰的にリスト表示し、最後にサマリーを表示しています。
# aws s3 ls logs/2016-02-12/ --human-readable --summarize
2016-02-12 14:47:15 6.8 KiB boot.log
2016-02-12 14:47:15 0 Bytes btmp
2016-02-12 14:47:15 0 Bytes btmp-20160209
2016-02-12 14:47:16 5.8 KiB cron
2016-02-12 14:47:16 29.3 KiB cron-20151130
2016-02-12 14:47:16 4.5 KiB cron-20160106
2016-02-12 14:47:16 6.6 KiB cron-20160113
2016-02-12 14:47:16 7.8 KiB cron-20160209
2016-02-12 14:47:16 110.9 KiB dmesg
2016-02-12 14:47:15 111.1 KiB dmesg.old
2016-02-12 14:47:15 1.3 KiB grubby
2016-02-12 14:47:15 285.2 KiB lastlog
2016-02-12 14:47:16 588 Bytes maillog
2016-02-12 14:47:15 1.1 KiB maillog-20151130
2016-02-12 14:47:16 588 Bytes maillog-20160106
2016-02-12 14:47:16 588 Bytes maillog-20160113
2016-02-12 14:47:16 1.7 KiB maillog-20160209
2016-02-12 14:47:16 410.4 KiB messages
2016-02-12 14:47:16 832.0 KiB messages-20151130
2016-02-12 14:47:16 390.1 KiB messages-20160106
2016-02-12 14:47:16 391.0 KiB messages-20160113
2016-02-12 14:47:16 1.2 MiB messages-20160209
2016-02-12 14:47:16 3.1 KiB secure
2016-02-12 14:47:16 6.2 KiB secure-20151130
2016-02-12 14:47:16 2.3 KiB secure-20160106
2016-02-12 14:47:16 2.1 KiB secure-20160113
2016-02-12 14:47:15 7.2 KiB secure-20160209
2016-02-12 14:47:16 0 Bytes spooler
2016-02-12 14:47:16 0 Bytes spooler-20151130
2016-02-12 14:47:16 0 Bytes spooler-20160106
2016-02-12 14:47:16 0 Bytes spooler-20160113
2016-02-12 14:47:15 0 Bytes spooler-20160209
2016-02-12 14:47:15 0 Bytes tallylog
2016-02-12 14:47:15 5.6 KiB vmware-install.log
2016-02-12 14:47:15 148.4 KiB vmware-vmsvc.log
2016-02-12 14:47:15 107.2 KiB wtmp
2016-02-12 14:47:16 3.1 KiB yum.log
2016-02-12 14:47:16 12.5 KiB yum.log-20160106
Total Objects: 38
Total Size: 4.0 MiB
Technical Tips on
CLOUDIAN HyperStore #3
P.15
Copyright © 2010-2016 Cloudian KK. All rights reserved.
(2) バケットの新規作成 / aws s3 mb
HyperStore 上に、新規にバケットを作成します。
使用例①: aws s3 mb
クレデンシャル情報を設定したユーザーが HyperStore 上に、バケットを新規作成します。mb
コマンドには、オプションはありません。
# aws s3 mb s3://newbucket1
make_bucket: s3://newbucket1/
(3) バケットの削除 / aws s3 rb
HyperStore 上に存在するバケットを削除します。オプション「--force」を付加して実行する
ことにより、バケット内にオブジェクトが存在しても、バケット削除前に格納されているオブジェクトを
最初に削除し、バケットを削除します。但し、非バージョニングオブジェクトである必要があり、バー
ジョニングされたオブジェクトが存在する場合は「--force」を付加してもエラーになります。
使用例①: aws s3 rb
(オブジェクトが何も格納されていない)空のバケットを削除します。
# aws s3 rb s3://newbucket1
remove_bucket: s3://newbucket1/
aws s3 mb <S3Uri>
aws s3 rb <S3Uri> [--force]
構 文
構 文
Technical Tips on
CLOUDIAN HyperStore #3
P.16
Copyright © 2010-2016 Cloudian KK. All rights reserved.
使用例②: aws s3 rb --force
削除対象のバケット内にオブジェクトが存在していても、強制的にバケットを削除します。
# aws s3 rb s3://newbucket1 --force
delete: s3://newbucket1/cat/
delete: s3://newbucket1/dog/37725915.jpeg
delete: s3://newbucket1/cat/cat00033.jpg
delete: s3://newbucket1/cat/cat00044.jpg
delete: s3://newbucket1/dog/37726810.jpeg
delete: s3://newbucket1/dog/37726675.jpeg
delete: s3://newbucket1/dog/
delete: s3://newbucket1/cat/cat00016.jpg
delete: s3://newbucket1/dog/37235738_480x349.jpeg
delete: s3://newbucket1/cat/cat00020.jpg
remove_bucket: s3://newbucket1/
上記使用例の出力のように、削除対象のバケットを削除する前に、そのバケットに格納されてい
るオブジェクトの削除が実行されます。バケット内にバージョニングされたオブジェクトが存在する場
合には、「--force」オプションを付加して実行してもエラーになります。
「--force」オプションを付加していない場合、バケットを削除するにはバケット内にオブジェクトが存
在しない状態である必要があります。
バケット内にオブジェクトが存在する状態で aws s3 rb を実行すると、下図のような
BucketNotEmpty 例外が発生します。
# aws s3 rb s3://newbucket1
remove_bucket failed: s3://newbucket1/ A client error (BucketNotEmpty)
occurred when calling the DeleteBucket operation: The bucket you tried to
delete is not empty.
注 意
Technical Tips on
CLOUDIAN HyperStore #3
P.17
Copyright © 2010-2016 Cloudian KK. All rights reserved.
(4) ローカルファイルまたは HyperStore 上のオブジェクトのコピー / aws s3 cp
「cp」コマンドは、コマンドを実行するホストと HyperStore 間、あるいは HyperStore 上の異
なる場所にファイルをコピーするコマンドです。以下の構文説明にあるように、非常に多くのコマンド
オプションが存在するため、ここでは全てのオプションは紹介しません。AWS CLI をインストールして
頂き、”aws s3 cp help”で表示されるヘルプ等で、各オプションの動作を確認してください。
コピー元とコピー先は
「コマンドを実行するホスト → HyperStore」 … 動作的には HyperStore へのアップロード
「HyperStore → コマンドを実行するホスト」 … 動作的には HyperStore からのダウンロード
「HyperStore → HyperStore」 … 動作的には HyperStore 内でのコピー
を指定することができます。
aws s3 cp <LocalPath> <S3Uri> | <S3Uri> <LocalPath> | <S3Uri> <S3Uri>
[--dryrun]
[--quiet]
[--include <value>]
[--exclude <value>]
[--acl <value>]
[--follow-symlinks | --no-follow-symlinks]
[--no-guess-mime-type]
[--sse <value>]
[--sse-c <value>]
[--sse-c-key <value>]
[--sse-kms-key-id <value>]
[--sse-c-copy-source <value>]
[--sse-c-copy-source-key <value>]
[--storage-class <value>]
[--grants <value> [<value>...]]
[--website-redirect <value>]
[--content-type <value>]
[--cache-control <value>]
[--content-disposition <value>]
[--content-encoding <value>]
[--content-language <value>]
[--expires <value>]
[--source-region <value>]
[--only-show-errors]
[--page-size <value>]
[--ignore-glacier-warnings]
[--metadata <value>]
[--metadata-directive <value>]
[--expected-size <value>]
[--recursive]
構 文
Technical Tips on
CLOUDIAN HyperStore #3
P.18
Copyright © 2010-2016 Cloudian KK. All rights reserved.
使用例①: aws s3 cp
ファイルをコピーします。
以下の例では、ローカルにあるファイル「cat00462.jpg」を HyperStore 上のバケット
「newbucket2」の中にコピー(アップロード)しています。
# aws s3 cp ./cat00462.jpg s3://newbucket2
upload: ./cat00462.jpg to s3://newbucket2/cat00462.jpg
# aws s3 ls s3://newbucket2
2016-02-16 12:10:36 23209 cat00462.jpg ← アップロードされたファイル
以 下 の 例 で は 、 HyperStore 上 の バ ケ ッ ト 「 newbucket2 」 の 中 に あ る フ ァ イ ル
「cat00462.jpg」を、ローカルにコピー(ダウンロード)しています。
# aws s3 cp s3://newbucket2/cat00462.jpg ./
download: s3://newbucket2/cat00462.jpg to ./cat00462.jpg
# aws s3 cp s3://newbucket2/cat00462.jpg ./cat1.jpg
download: s3://newbucket2/cat00462.jpg to ./cat1.jpg
# ls -l
合計 48
-rw-r--r-- 1 root root 23209 2 月 16 12:19 cat00462.jpg ← ダウンロードされたファイル
-rw-r--r-- 1 root root 23209 2 月 16 12:19 cat1.jpg ← ダウンロードされたファイル
この例のように、「cp」コマンド実行時に、コピー先のファイル名を変更することもできます。
Technical Tips on
CLOUDIAN HyperStore #3
P.19
Copyright © 2010-2016 Cloudian KK. All rights reserved.
使用例②: aws s3 cp --acl --sse
この例ではファイルのコピー時に、ファイルの ACL を設定(--acl)し、サーバーサイド暗号化
(--sse)を行います。
# aws s3 cp ./cat00462.jpg s3://newbucket2 --acl public-read --sse AES256
upload: ./cat00462.jpg to s3://newbucket2/cat00462.jpg
コピー(この例では HyperStore にアップロード)されたファイルを、CMC のオブジェクト画面から確
認してみると、ファイル名の先頭に「 」アイコンが表示されており、サーバーサイド暗号化がされてい
ることを確認できます。
Technical Tips on
CLOUDIAN HyperStore #3
P.20
Copyright © 2010-2016 Cloudian KK. All rights reserved.
使用例③: aws s3 cp --recursive
ディレクトリ(フォルダ)やファイルを再帰的にコピーします。
# ls -l
合計 8
drwxr-xr-x 2 root root 4096 11 月 10 16:16 cat ← このディレクトリの中のファイルを再帰的にコピー
drwxr-xr-x 3 root root 4096 11 月 11 12:17 dog
drwxr-xr-x 2 root root 6 11 月 17 16:55 empty
# aws s3 cp ./cat s3://newbucket2 --recursive
upload: cat/cat00044.jpg to s3://newbucket2/cat00044.jpg
upload: cat/cat00079.jpg to s3://newbucket2/cat00079.jpg
upload: cat/cat00033.jpg to s3://newbucket2/cat00033.jpg
upload: cat/cat00020.jpg to s3://newbucket2/cat00020.jpg
upload: cat/cat00016.jpg to s3://newbucket2/cat00016.jpg
upload: cat/cat00089.jpg to s3://newbucket2/cat00089.jpg
upload: cat/cat00078.jpg to s3://newbucket2/cat00078.jpg
upload: cat/cat00080.jpg to s3://newbucket2/cat00080.jpg
upload: cat/cat00092.jpg to s3://newbucket2/cat00092.jpg
upload: cat/cat00093.jpg to s3://newbucket2/cat00093.jpg
upload: cat/cat00049.jpg to s3://newbucket2/cat00049.jpg
upload: cat/cat00103.jpg to s3://newbucket2/cat00103.jpg
upload: cat/cat00173.jpg to s3://newbucket2/cat00173.jpg
upload: cat/cat00095.jpg to s3://newbucket2/cat00095.jpg
upload: cat/cat00123.jpg to s3://newbucket2/cat00123.jpg
upload: cat/cat00149.jpg to s3://newbucket2/cat00149.jpg
upload: cat/cat00338.jpg to s3://newbucket2/cat00338.jpg
upload: cat/cat00190.jpg to s3://newbucket2/cat00190.jpg
upload: cat/cat00339.jpg to s3://newbucket2/cat00339.jpg
upload: cat/cat00185.jpg to s3://newbucket2/cat00185.jpg
upload: cat/cat00375.jpg to s3://newbucket2/cat00375.jpg
upload: cat/cat00344.jpg to s3://newbucket2/cat00344.jpg
upload: cat/cat00370.jpg to s3://newbucket2/cat00370.jpg
upload: cat/cat00462.jpg to s3://newbucket2/cat00462.jpg
upload: cat/cat00362.jpg to s3://newbucket2/cat00362.jpg
upload: cat/cat00634.jpg to s3://newbucket2/cat00634.jpg
upload: cat/cat00574.jpg to s3://newbucket2/cat00574.jpg
upload: cat/cat00593.jpg to s3://newbucket2/cat00593.jpg
upload: cat/cat00720.jpg to s3://newbucket2/cat00720.jpg
upload: cat/cat00737.jpg to s3://newbucket2/cat00737.jpg
upload: cat/cat00758.jpg to s3://newbucket2/cat00758.jpg
Technical Tips on
CLOUDIAN HyperStore #3
P.21
Copyright © 2010-2016 Cloudian KK. All rights reserved.
「--acl」や「--sse」オプションと併用し、再帰的にコピーするファイル全てに ACL を設定したり、
サーバーサイド暗号化を行ったりすることもできます。
aws s3 cp ./cat s3://newbucket2 --acl public-read --sse AES256 --recursive
Technical Tips on
CLOUDIAN HyperStore #3
P.22
Copyright © 2010-2016 Cloudian KK. All rights reserved.
使用例④: aws s3 cp --metadata
ファイルのコピー時に、メタデータを付与することもできます。
メタデータは幾つでも付与することができ、オプション「--metadata」のあとに、
KeyName1=string,KeyName2=string
あるいは、
{"string": "string"
...}
の形式で、メタデータをセットします。
以下の例では「cp」コマンド実行時に、メタデータとして
キー データ
copy-date 2016-02-16
operator Ryosuke Matsui
をセットし、ファイルを HyperStore にコピーしています。
# aws s3 cp ./cat s3://newbucket2 (★改行無しで次行に続く.....)
--metadata copy-date="2016-02-16",operator="Ryosuke Matsui" --recursive
upload: cat/cat00044.jpg to s3://newbucket2/cat00044.jpg
upload: cat/cat00033.jpg to s3://newbucket2/cat00033.jpg
upload: cat/cat00079.jpg to s3://newbucket2/cat00079.jpg
upload: cat/cat00049.jpg to s3://newbucket2/cat00049.jpg
:
:
(中略)
:
:
upload: cat/cat00720.jpg to s3://newbucket2/cat00720.jpg
upload: cat/cat00574.jpg to s3://newbucket2/cat00574.jpg
Technical Tips on
CLOUDIAN HyperStore #3
P.23
Copyright © 2010-2016 Cloudian KK. All rights reserved.
前頁の「cp」コマンドで付与したメタデータを確認するために、AWS SDK for Python がインス
トールされているホストから、Python CLI を使用して確認してみます。
# python3
Python 3.5.1 (default, Jan 29 2016, 16:45:55)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import boto3
>>> client = boto3.client('s3', endpoint_url='http://s3-region1.shibuya.local')
>>> client.head_object(Bucket='newbucket2', Key='cat00044.jpg')
{'ContentLength': 40657, 'Metadata': {'copy-date': '2016-02-16', 'operator':
'Ryosuke Matsui'}, 'AcceptRanges': 'bytes', 'ContentType': 'image/jpeg',
'ResponseMetadata': {'HostId': '', 'RequestId': '11dc4580-6839-141c-a9a5-000c29146750',
'HTTPStatusCode': 200}, 'ETag': '"953de5bd14b0aeaf1d57ac10770fd3d0"', 'LastModified':
datetime.datetime(2016, 2, 16, 4, 0, 28, tzinfo=tzutc())}
>>>
上記のように、
'Metadata': {'copy-date': '2016-02-16', 'operator': 'Ryosuke Matsui'}
が、アップロードしたファイルに付与されています。
Technical Tips on
CLOUDIAN HyperStore #3
P.24
Copyright © 2010-2016 Cloudian KK. All rights reserved.
(5) ローカルファイルまたは HyperStore 上のオブジェクトの移動 / aws s3 mv
「mv」コマンドは、コマンドを実行するホストと HyperStore 間、あるいは HyperStore 上の
異なる場所にファイルを移動するコマンドです。「cp」コマンド同様、非常に多くのコマンドオプション
が存在するため、ここでは全てのオプションは紹介しません。「cp」コマンドの解説も、併せて確認し
てください。また、AWS CLI をインストールして頂き、”aws s3 cp help”で表示されるヘルプ等
で、各オプションの動作を確認することもできます。
「mv」コマンド実行時に、「--acl」オプションで ACL を設定したり、「--sse」オプションでサーバ
ーサイド暗号化を行ったり、移動のタイミングで「--metadata」オプションを使用してメタデータを付
与したりすることができます。また、「cp」コマンド同様、「--recursive」オプションを使用して、デ
ィレクトリ(フォルダ)毎、再帰的にファイルを移動させることができます。
aws s3 cp <LocalPath> <S3Uri> | <S3Uri> <LocalPath> | <S3Uri> <S3Uri>
[--dryrun]
[--quiet]
[--include <value>]
[--exclude <value>]
[--acl <value>]
[--follow-symlinks | --no-follow-symlinks]
[--no-guess-mime-type]
[--sse <value>]
[--sse-c <value>]
[--sse-c-key <value>]
[--sse-kms-key-id <value>]
[--sse-c-copy-source <value>]
[--sse-c-copy-source-key <value>]
[--storage-class <value>]
[--grants <value> [<value>...]]
[--website-redirect <value>]
[--content-type <value>]
[--cache-control <value>]
[--content-disposition <value>]
[--content-encoding <value>]
[--content-language <value>]
[--expires <value>]
[--source-region <value>]
[--only-show-errors]
[--page-size <value>]
[--ignore-glacier-warnings]
[--metadata <value>]
[--metadata-directive <value>]
[--recursive]
構 文
Technical Tips on
CLOUDIAN HyperStore #3
P.25
Copyright © 2010-2016 Cloudian KK. All rights reserved.
使用例①: aws s3 mv
移動元から移動先に、ファイルを移動します。
以下の例ではローカルにあるファイル「cat00016.jpg」を、HyperStore 上のバケット
「newbucket2」の中に移動しています。
# ls
cat00016.jpg cat00078.jpg cat00093.jpg cat00173.jpg cat00344.jpg
cat00574.jpg cat00758.jpg cat00020.jpg cat00079.jpg cat00095.jpg
cat00185.jpg cat00362.jpg cat00593.jpg cat00033.jpg cat00080.jpg
cat00103.jpg cat00190.jpg cat00370.jpg cat00634.jpg cat00044.jpg
cat00089.jpg cat00123.jpg cat00338.jpg cat00375.jpg cat00720.jpg
cat00049.jpg cat00092.jpg cat00149.jpg cat00339.jpg cat00462.jpg
cat00737.jpg
# aws s3 mv ./cat00016.jpg s3://newbucket2
move: ./cat00016.jpg to s3://newbucket2/cat00016.jpg
このコマンドを実行した結果、ローカルからファイル「cat00016.jpg」は無くなり、HyperStore
に移動されました。
【ローカルホスト側】
# ls
cat00020.jpg cat00079.jpg cat00095.jpg cat00185.jpg cat00362.jpg
cat00593.jpg cat00033.jpg cat00080.jpg cat00103.jpg cat00190.jpg
cat00370.jpg cat00634.jpg cat00044.jpg cat00089.jpg cat00123.jpg
cat00338.jpg cat00375.jpg cat00720.jpg cat00049.jpg cat00092.jpg
cat00149.jpg cat00339.jpg cat00462.jpg cat00737.jpg cat00078.jpg
cat00093.jpg cat00173.jpg cat00344.jpg cat00574.jpg cat00758.jpg
#
↓
【HyperStore 側】
Technical Tips on
CLOUDIAN HyperStore #3
P.26
Copyright © 2010-2016 Cloudian KK. All rights reserved.
使用例②: aws s3 mv --recursive
移動元から移動先に、ディレクトリ(フォルダ)を再帰的に移動します。
以下の例ではローカルにあるファイル「cat00016.jpg」を、HyperStore 上のバケット
「newbucket2」の中に移動しています。
# aws s3 mv ./cat s3://newbucket2
move failed: cat/ to s3://newbucket2/ [Errno 21] Is a directory: '/root/sample-
data/work/cat/'
↑
ディレクトリ(フォルダ)を移行元にする場合は、「--recursive」を付けないとエラーになる。
# aws s3 mv ./cat s3://newbucket2 --recursive
move: cat/cat00079.jpg to s3://newbucket2/cat00079.jpg
move: cat/cat00016.jpg to s3://newbucket2/cat00016.jpg
move: cat/cat00044.jpg to s3://newbucket2/cat00044.jpg
move: cat/cat00033.jpg to s3://newbucket2/cat00033.jpg
move: cat/cat00092.jpg to s3://newbucket2/cat00092.jpg
move: cat/cat00049.jpg to s3://newbucket2/cat00049.jpg
move: cat/cat00089.jpg to s3://newbucket2/cat00089.jpg
move: cat/cat00020.jpg to s3://newbucket2/cat00020.jpg
move: cat/cat00078.jpg to s3://newbucket2/cat00078.jpg
move: cat/cat00080.jpg to s3://newbucket2/cat00080.jpg ← ディレクトリ内のファイルを
move: cat/cat00149.jpg to s3://newbucket2/cat00149.jpg 再帰的に移動
move: cat/cat00103.jpg to s3://newbucket2/cat00103.jpg
move: cat/cat00123.jpg to s3://newbucket2/cat00123.jpg
move: cat/cat00173.jpg to s3://newbucket2/cat00173.jpg
move: cat/cat00339.jpg to s3://newbucket2/cat00339.jpg
move: cat/cat00093.jpg to s3://newbucket2/cat00093.jpg
move: cat/cat00095.jpg to s3://newbucket2/cat00095.jpg
move: cat/cat00190.jpg to s3://newbucket2/cat00190.jpg
move: cat/cat00338.jpg to s3://newbucket2/cat00338.jpg
move: cat/cat00185.jpg to s3://newbucket2/cat00185.jpg
move: cat/cat00344.jpg to s3://newbucket2/cat00344.jpg
move: cat/cat00370.jpg to s3://newbucket2/cat00370.jpg
move: cat/cat00462.jpg to s3://newbucket2/cat00462.jpg
move: cat/cat00362.jpg to s3://newbucket2/cat00362.jpg
move: cat/cat00375.jpg to s3://newbucket2/cat00375.jpg
move: cat/cat00574.jpg to s3://newbucket2/cat00574.jpg
move: cat/cat00634.jpg to s3://newbucket2/cat00634.jpg
move: cat/cat00737.jpg to s3://newbucket2/cat00737.jpg
move: cat/cat00593.jpg to s3://newbucket2/cat00593.jpg
move: cat/cat00720.jpg to s3://newbucket2/cat00720.jpg
move: cat/cat00758.jpg to s3://newbucket2/cat00758.jpg
Technical Tips on
CLOUDIAN HyperStore #3
P.27
Copyright © 2010-2016 Cloudian KK. All rights reserved.
以下の「mv」コマンドを実行すると、上記使用例で HyperStore 上に移動されたファイルが、
ローカルホストの元のディレクトリに移動されます。
# aws s3 mv s3://newbucket2 ./cat --recursive
「mv」コマンドでファイルを移動させる際に、以下のようにファイル名を変更することもできます。
# aws s3 mv ./cat00758.jpg s3://newbucket2/NEKO.jpg
move: ./cat00758.jpg to s3://newbucket2/NEKO.jpg
# aws s3 ls s3://newbucket2
2016-02-16 14:41:15 108945 NEKO.jpg
# aws s3 mv s3://newbucket2/NEKO.jpg ./I-Love-Cat.jpg
move: s3://newbucket2/NEKO.jpg to ./I-Love-Cat.jpg
# ls -l ./I-Love-Cat.jpg
-rw-r--r-- 1 root root 108945 2 月 16 14:41 ./I-Love-Cat.jpg
Technical Tips on
CLOUDIAN HyperStore #3
P.28
Copyright © 2010-2016 Cloudian KK. All rights reserved.
(6) HyperStore 上のオブジェクトの削除 / aws s3 rm
「rm」コマンドは、HyperStore 上のファイル(オブジェクト)を削除するコマンドです。「--
recursive」オプションを使用することにより、ディレクトリ(フォルダ)を
コピー元とコピー先は
「コマンドを実行するホスト → HyperStore」 … 動作的には HyperStore へのアップロード
「HyperStore → コマンドを実行するホスト」 … 動作的には HyperStore からのダウンロード
「HyperStore → HyperStore」 … 動作的には HyperStore 内でのコピー
を指定することができます。
使用例①: aws s3 rm
HyperStore 上の指定したファイルを削除します。
以下の例では、HyperStore 上のバケット「newbucket2」のフォルダ「cat」の中にあるファイ
ル「cat00016.jpg」を削除しています。
# aws s3 rm s3://newbucket2/cat/cat00016.jpg
delete: s3://newbucket2/cat/cat00016.jpg
aws s3 rm <S3Uri>
[--dryrun]
[--quiet]
[--recursive]
[--include <value>]
[--exclude <value>]
[--only-show-errors]
[--page-size <value>]
構 文
Technical Tips on
CLOUDIAN HyperStore #3
P.29
Copyright © 2010-2016 Cloudian KK. All rights reserved.
使用例②: aws s3 rm --recursive
HyperStore 上の指定したバケットやフォルダ内のファイルを、再帰的に削除します。
以下の例では、HyperStore 上のバケット「newbucket2」以下に保存されているファイルを
全て、再帰的に削除しています。
# aws s3 rm s3://newbucket2 --recursive
delete: s3://newbucket2/cat/cat00020.jpg
delete: s3://newbucket2/cat/cat00044.jpg
delete: s3://newbucket2/cat/cat00049.jpg
delete: s3://newbucket2/cat/cat00078.jpg
delete: s3://newbucket2/cat/cat00033.jpg
delete: s3://newbucket2/cat/cat00080.jpg
delete: s3://newbucket2/cat/cat00092.jpg
delete: s3://newbucket2/cat/cat00079.jpg
delete: s3://newbucket2/cat/cat00089.jpg
delete: s3://newbucket2/cat/cat00093.jpg
delete: s3://newbucket2/cat/cat00095.jpg
delete: s3://newbucket2/cat/cat00185.jpg
delete: s3://newbucket2/cat/cat00344.jpg
delete: s3://newbucket2/cat/cat00190.jpg
delete: s3://newbucket2/cat/cat00362.jpg
delete: s3://newbucket2/cat/cat00123.jpg
delete: s3://newbucket2/cat/cat00149.jpg
delete: s3://newbucket2/cat/cat00103.jpg
delete: s3://newbucket2/cat/cat00339.jpg
delete: s3://newbucket2/cat/cat00338.jpg
delete: s3://newbucket2/cat/cat00173.jpg
delete: s3://newbucket2/dog/dog0003-009.jpg
delete: s3://newbucket2/dog/dog0005-009.jpg
delete: s3://newbucket2/cat/cat00720.jpg
delete: s3://newbucket2/dog/dog0012-018.jpg
delete: s3://newbucket2/dog/dog0020-018.jpg
delete: s3://newbucket2/dog/dog0156-039.jpg
delete: s3://newbucket2/dog/dog0152-051.jpg
delete: s3://newbucket2/dog/subdir/37235738_480x349.jpeg
delete: s3://newbucket2/dog/dog0149-041.jpg
delete: s3://newbucket2/dog/dog0143-002.jpg
delete: s3://newbucket2/dog/subdir/37910333_358x636.jpeg
delete: s3://newbucket2/dog/subdir/37725915.jpeg
delete: s3://newbucket2/dog/subdir/38488349_480x410.jpeg
delete: s3://newbucket2/dog/subdir/38850105.gif
delete: s3://newbucket2/dog/subdir/38865316_480x400.jpeg
delete: s3://newbucket2/dog/subdir/37726810.jpeg
delete: s3://newbucket2/dog/subdir/38834471.jpeg
Technical Tips on
CLOUDIAN HyperStore #3
P.30
Copyright © 2010-2016 Cloudian KK. All rights reserved.
(7) ファイル(オブジェクト)やディレクトリの同期 / aws s3 sync
「sync」コマンドは、コマンドを実行するホストと HyperStore 間、あるいは HyperStore 内の
異なる場所にファイルを同期できる便利なコマンドです。以下の構文説明にあるように、非常に多
くのコマンドオプションが存在するため、ここでは全てのオプションは紹介しません。AWS CLI をイン
ストールして頂き、”aws s3 sync help”で表示されるヘルプ等で、各オプションの動作を確認し
てください。
また、「cp」コマンドのオプションと同じものが多数存在するため、前述の
「(3) ローカルファイルまたは HyperStore 上のオブジェクトのコピー / aws s3 cp」
の説明も参考にしてください。
同期元と同期先は
「コマンドを実行するホスト → HyperStore」
「HyperStore → コマンドを実行するホスト」
「HyperStore → HyperStore」
を指定することができます。
aws s3 sync <LocalPath> <S3Uri> | <S3Uri> <LocalPath> | <S3Uri> <S3Uri>
[--dryrun]
[--quiet]
[--include <value>]
[--exclude <value>]
[--acl <value>]
[--follow-symlinks | --no-follow-symlinks]
[--no-guess-mime-type]
[--sse <value>]
[--sse-c <value>]
[--sse-c-key <value>]
[--sse-kms-key-id <value>]
[--sse-c-copy-source <value>]
[--sse-c-copy-source-key <value>]
[--storage-class <value>]
[--grants <value> [<value>...]]
[--website-redirect <value>]
[--content-type <value>]
[--cache-control <value>]
[--content-disposition <value>]
[--content-encoding <value>]
[--content-language <value>]
[--expires <value>]
[--source-region <value>]
[--only-show-errors]
[--page-size <value>]
[--ignore-glacier-warnings]
[--metadata <value>]
[--metadata-directive <value>]
[--size-only]
[--exact-timestamps]
[--delete]
構 文
Technical Tips on
CLOUDIAN HyperStore #3
P.31
Copyright © 2010-2016 Cloudian KK. All rights reserved.
幾つか簡単な「sync」コマンドの使用例を掲載します。
ファイルが同期されていることが分かりやすいように、AWS CLI Windows-OS 版をインストー
ルした PC から「sync」コマンドを実行してみます。
使用例①: aws s3 sync (初期コピー)
「sync」コマンドを実行する Windows PC のフォルダ「C:写真」に保存されている下図データ
を、HyperStore 上の既作成バケット「pictures」にコピーします。
※ 「C:写真」フォルダの中には「犬」と「猫」の2つのサブフォルダがあり、各サブフォルダに 6 つの画像ファイルが
格納されています。
Technical Tips on
CLOUDIAN HyperStore #3
P.32
Copyright © 2010-2016 Cloudian KK. All rights reserved.
カレントフォルダ(C:写真)以下のデータを、再帰的に HyperStore 上のバケット「pictures」
にコピーします。
C:¥写真>aws --endpoint-url="http://s3-region1.shibuya.local" s3 sync ./ s3://pictures/
upload: ..¥写真¥猫¥cat00020.jpg to s3://pictures/猫/cat00020.jpg
upload: ..¥写真¥猫¥cat00044.jpg to s3://pictures/猫/cat00044.jpg
upload: ..¥写真¥犬¥37910333_358x636.jpeg to s3://pictures/犬/37910333_358x636.jpeg
upload: ..¥写真¥犬¥37726810.jpeg to s3://pictures/犬/37726810.jpeg
upload: ..¥写真¥犬¥37728436.jpeg to s3://pictures/犬/37728436.jpeg
upload: ..¥写真¥猫¥cat00016.jpg to s3://pictures/猫/cat00016.jpg
upload: ..¥写真¥犬¥37725915.jpeg to s3://pictures/犬/37725915.jpeg
upload: ..¥写真¥犬¥37726675.jpeg to s3://pictures/犬/37726675.jpeg
upload: ..¥写真¥犬¥37235738_480x349.jpeg to s3://pictures/犬/37235738_480x349.jpeg
upload: ..¥写真¥猫¥cat00033.jpg to s3://pictures/猫/cat00033.jpg
upload: ..¥写真¥猫¥cat00049.jpg to s3://pictures/猫/cat00049.jpg
upload: ..¥写真¥猫¥cat00078.jpg to s3://pictures/猫/cat00078.jpg
Technical Tips on
CLOUDIAN HyperStore #3
P.33
Copyright © 2010-2016 Cloudian KK. All rights reserved.
CMC のオブジェクト画面から確認してみると、下図のように PC 上の「C:写真」フォルダ以下の
データがコピーされています。
Technical Tips on
CLOUDIAN HyperStore #3
P.34
Copyright © 2010-2016 Cloudian KK. All rights reserved.
使用例②: aws s3 sync (新規に保存されたファイルを同期)
「sync」コマンドを実行する Windows PC のフォルダ「C:写真猫」に、新しい画像ファイルを
3 つ保存し、HyperStore 上の既作成バケット「pictures」と同期させます。
新規に保存した 3 つの画像ファイル
Technical Tips on
CLOUDIAN HyperStore #3
P.35
Copyright © 2010-2016 Cloudian KK. All rights reserved.
新規の 3 ファイルを保存した後、使用例①と全く同じ「sync」コマンドを実行します。
C:¥写真>aws --endpoint-url="http://s3-region1.shibuya.local" s3 sync ./ s3://pictures/
upload: ..¥写真¥猫¥cat00758.jpg to s3://pictures/猫/cat00758.jpg
upload: ..¥写真¥猫¥cat00737.jpg to s3://pictures/猫/cat00737.jpg
upload: ..¥写真¥猫¥cat00721.jpg to s3://pictures/猫/cat00721.jpg
この使用例の「sync」コマンドは、同期元(コマンドを実行するホスト)に新たに追加されたファイル
を、同期先(この場合は HyperStore)にコピーします。
Technical Tips on
CLOUDIAN HyperStore #3
P.36
Copyright © 2010-2016 Cloudian KK. All rights reserved.
使用例③: aws s3 sync --delete (削除されたファイルを含めて同期)
使用例②の「sync」コマンドは、同期元に新たに追加(保存)されて、まだ同期先にそのファ
イルが存在しない場合にコピーを行います。仮に同期元のファイルが削除されていたとしても、同期
先のファイルは削除されません。
同期元のファイルが削除された場合に、同期先からもそのファイルを削除したい場合には、
「sync」コマンドのオプション「--delete」を付加して実行します。
使用例②で新規に保存した 3 ファイルを「C:写真猫」サブフォルダから削除し、新規 2 ファイ
ルを保存、既存の 1 ファイルを更新します。
← この 3 ファイルを削除
← この 2 ファイルを新規に保存
左(←)の画像から右(→)の画像に更新
Technical Tips on
CLOUDIAN HyperStore #3
P.37
Copyright © 2010-2016 Cloudian KK. All rights reserved.
この状態で「sync」コマンドを、「--delete」オプション付きで実行します。
C:¥写真>aws --endpoint-url="http://s3-region1.shibuya.local" s3 sync ./ s3://pictures/
--delete
delete: s3://pictures/猫/cat00737.jpg
delete: s3://pictures/猫/cat00721.jpg
delete: s3://pictures/猫/cat00758.jpg
upload: ..¥写真¥猫¥cat00339.jpg to s3://pictures/猫/cat00339.jpg
upload: ..¥写真¥猫¥cat00338.jpg to s3://pictures/猫/cat00338.jpg
upload: ..¥写真¥猫¥cat00016.jpg to s3://pictures/猫/cat00016.jpg
ローカルで削除した 3 ファイルが HyperStore 上からも削除され、新規に保存した 2 ファイルと
更新された 1 ファイルがアップロードされています。
Technical Tips on
CLOUDIAN HyperStore #3
P.38
Copyright © 2010-2016 Cloudian KK. All rights reserved.
以下に、CMC のオブジェクト画面から同期先の HyperStore のバケットを確認した画面イメー
ジを掲載します。
最終変更日時が変わっているファイル(オブジェクト)が 3 つあり、そのうちの 2 つが新規にアップ
ロードされたもの、もう 1 つがファイルに更新のあったものです。
なお、HyperStore 上で確認できる最終変更日時は、HyperStore にそのファイルがアッ
プロードされた日時を表わしています。ローカルのファイル作成日時や変更日時では無いことに、
留意してください。
Technical Tips on
CLOUDIAN HyperStore #3
P.39
Copyright © 2010-2016 Cloudian KK. All rights reserved.
6. おわりに
本書では AWS CLI を使用するための準備・導入方法とその使用方法を説明し、AWS CLI を具体
的にどのように使用するのかを見て頂きました。
AWS CLI はもちろん、Linux/UNIX-OS のシェルや Windows-OS のコマンドスクリプト等に埋め込
んでご使用頂くこともできますので、非常に活用しやすいツールだと思います。
例えば、毎日蓄積されていくログデータや、業務システムで生成された証券証書のイメージ等を長期保
管するために、AWS CLI を含むスクリプトを作成して crontab やジョブスケジューラーに登録し、定期的
に差分データを HyperStore にアップロードさせることも可能です。
様々な用途で、非常に簡単に使用できる AWS CLI ですので、まずは是非一度、貴社の環境でお試
し頂けると幸いです。
著者 松井 良祐
役職 テクニカル プリセールス マネージャー
メールアドレス rmatsui@cloudian.com
以上
Technical Tips on
CLOUDIAN HyperStore #3
ホームページ:http://cloudian.jp/
Facebook:https://www.facebook.com/cloudian.cloudstorage.S3
Twitter:https://twitter.com/Cloudian_KK
ブログ:http://www.cloudian-blog.com/
評価版お申込み:http://www.cloudian.jp/cloud-storage-products/cloudian_eval_agr.php
クラウディアン株式会社
THANK YOU ! www.cloudian.jp
Cloud Storage for Everyone

More Related Content

What's hot

はじめてのアマゾンクラウド⑥ Amazon rdsでデータベースを起動
はじめてのアマゾンクラウド⑥ Amazon rdsでデータベースを起動はじめてのアマゾンクラウド⑥ Amazon rdsでデータベースを起動
はじめてのアマゾンクラウド⑥ Amazon rdsでデータベースを起動SORACOM, INC
 
社内システム on AWS
社内システム on AWS 社内システム on AWS
社内システム on AWS kudo-jun
 
Azure Infrastructure as Code 体験入隊
Azure Infrastructure as Code 体験入隊Azure Infrastructure as Code 体験入隊
Azure Infrastructure as Code 体験入隊
Toru Makabe
 
G tech2016 シスコのハイパーコンバージドインフラCisco Hyper-Flexと、その先にあるIoE/BigDataインフラの世界
G tech2016 シスコのハイパーコンバージドインフラCisco Hyper-Flexと、その先にあるIoE/BigDataインフラの世界G tech2016 シスコのハイパーコンバージドインフラCisco Hyper-Flexと、その先にあるIoE/BigDataインフラの世界
G tech2016 シスコのハイパーコンバージドインフラCisco Hyper-Flexと、その先にあるIoE/BigDataインフラの世界
Trainocate Japan, Ltd.
 
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)Akio Katayama
 
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1
Kotaro Noyama
 
Azure Stack 受け入れ準備_20180630
Azure Stack 受け入れ準備_20180630Azure Stack 受け入れ準備_20180630
Azure Stack 受け入れ準備_20180630
Hiroshi Matsumoto
 
ownCloud and CLOUDIAN HyperStore
ownCloud and CLOUDIAN HyperStoreownCloud and CLOUDIAN HyperStore
ownCloud and CLOUDIAN HyperStore
CLOUDIAN KK
 
サーバ構築・デプロイが簡単に!Elastic beanstalk
サーバ構築・デプロイが簡単に!Elastic beanstalkサーバ構築・デプロイが簡単に!Elastic beanstalk
サーバ構築・デプロイが簡単に!Elastic beanstalkHirokazu Ouchi
 
ARCserve backup and CLOUDIAN HyperStore
ARCserve backup and CLOUDIAN HyperStoreARCserve backup and CLOUDIAN HyperStore
ARCserve backup and CLOUDIAN HyperStore
CLOUDIAN KK
 
Hyper-V仮想マシンをAzureへV2C移行
Hyper-V仮想マシンをAzureへV2C移行Hyper-V仮想マシンをAzureへV2C移行
Hyper-V仮想マシンをAzureへV2C移行
wintechq
 
Interact2019 ws2019 s2d_IN05
Interact2019 ws2019 s2d_IN05Interact2019 ws2019 s2d_IN05
Interact2019 ws2019 s2d_IN05
Hiroshi Matsumoto
 
Hyper-V 仮想マシンをAzure ARMへV2C移行...のメモ
Hyper-V 仮想マシンをAzure ARMへV2C移行...のメモHyper-V 仮想マシンをAzure ARMへV2C移行...のメモ
Hyper-V 仮想マシンをAzure ARMへV2C移行...のメモ
wintechq
 
Premier night3 devopsことはじめ
Premier night3 devopsことはじめPremier night3 devopsことはじめ
Premier night3 devopsことはじめ
淳 千葉
 
[G-Tech2014講演資料] Microsoft Azureで負荷分散された仮想マシンを作ってみよう ~Amazon Web Servicesと比べな...
[G-Tech2014講演資料] Microsoft Azureで負荷分散された仮想マシンを作ってみよう ~Amazon Web Servicesと比べな...[G-Tech2014講演資料] Microsoft Azureで負荷分散された仮想マシンを作ってみよう ~Amazon Web Servicesと比べな...
[G-Tech2014講演資料] Microsoft Azureで負荷分散された仮想マシンを作ってみよう ~Amazon Web Servicesと比べな...
Trainocate Japan, Ltd.
 
Microsoft Azureを使ったバックアップの基礎
Microsoft Azureを使ったバックアップの基礎Microsoft Azureを使ったバックアップの基礎
Microsoft Azureを使ったバックアップの基礎
Tetsuya Yokoyama
 
Azure仮想マシンと仮想ネットワークの基本 2016 ComCamp Fukuoka
Azure仮想マシンと仮想ネットワークの基本 2016 ComCamp FukuokaAzure仮想マシンと仮想ネットワークの基本 2016 ComCamp Fukuoka
Azure仮想マシンと仮想ネットワークの基本 2016 ComCamp Fukuoka
wintechq
 
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイントG tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
Trainocate Japan, Ltd.
 
オンプレとAWSをつなぐVPNとルーティング
オンプレとAWSをつなぐVPNとルーティングオンプレとAWSをつなぐVPNとルーティング
オンプレとAWSをつなぐVPNとルーティング
Tomonori Takada
 
CloudWatch Eventsを使った ECSのAutoScaling
CloudWatch Eventsを使ったECSのAutoScalingCloudWatch Eventsを使ったECSのAutoScaling
CloudWatch Eventsを使った ECSのAutoScaling
淳 千葉
 

What's hot (20)

はじめてのアマゾンクラウド⑥ Amazon rdsでデータベースを起動
はじめてのアマゾンクラウド⑥ Amazon rdsでデータベースを起動はじめてのアマゾンクラウド⑥ Amazon rdsでデータベースを起動
はじめてのアマゾンクラウド⑥ Amazon rdsでデータベースを起動
 
社内システム on AWS
社内システム on AWS 社内システム on AWS
社内システム on AWS
 
Azure Infrastructure as Code 体験入隊
Azure Infrastructure as Code 体験入隊Azure Infrastructure as Code 体験入隊
Azure Infrastructure as Code 体験入隊
 
G tech2016 シスコのハイパーコンバージドインフラCisco Hyper-Flexと、その先にあるIoE/BigDataインフラの世界
G tech2016 シスコのハイパーコンバージドインフラCisco Hyper-Flexと、その先にあるIoE/BigDataインフラの世界G tech2016 シスコのハイパーコンバージドインフラCisco Hyper-Flexと、その先にあるIoE/BigDataインフラの世界
G tech2016 シスコのハイパーコンバージドインフラCisco Hyper-Flexと、その先にあるIoE/BigDataインフラの世界
 
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)
 
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1
 
Azure Stack 受け入れ準備_20180630
Azure Stack 受け入れ準備_20180630Azure Stack 受け入れ準備_20180630
Azure Stack 受け入れ準備_20180630
 
ownCloud and CLOUDIAN HyperStore
ownCloud and CLOUDIAN HyperStoreownCloud and CLOUDIAN HyperStore
ownCloud and CLOUDIAN HyperStore
 
サーバ構築・デプロイが簡単に!Elastic beanstalk
サーバ構築・デプロイが簡単に!Elastic beanstalkサーバ構築・デプロイが簡単に!Elastic beanstalk
サーバ構築・デプロイが簡単に!Elastic beanstalk
 
ARCserve backup and CLOUDIAN HyperStore
ARCserve backup and CLOUDIAN HyperStoreARCserve backup and CLOUDIAN HyperStore
ARCserve backup and CLOUDIAN HyperStore
 
Hyper-V仮想マシンをAzureへV2C移行
Hyper-V仮想マシンをAzureへV2C移行Hyper-V仮想マシンをAzureへV2C移行
Hyper-V仮想マシンをAzureへV2C移行
 
Interact2019 ws2019 s2d_IN05
Interact2019 ws2019 s2d_IN05Interact2019 ws2019 s2d_IN05
Interact2019 ws2019 s2d_IN05
 
Hyper-V 仮想マシンをAzure ARMへV2C移行...のメモ
Hyper-V 仮想マシンをAzure ARMへV2C移行...のメモHyper-V 仮想マシンをAzure ARMへV2C移行...のメモ
Hyper-V 仮想マシンをAzure ARMへV2C移行...のメモ
 
Premier night3 devopsことはじめ
Premier night3 devopsことはじめPremier night3 devopsことはじめ
Premier night3 devopsことはじめ
 
[G-Tech2014講演資料] Microsoft Azureで負荷分散された仮想マシンを作ってみよう ~Amazon Web Servicesと比べな...
[G-Tech2014講演資料] Microsoft Azureで負荷分散された仮想マシンを作ってみよう ~Amazon Web Servicesと比べな...[G-Tech2014講演資料] Microsoft Azureで負荷分散された仮想マシンを作ってみよう ~Amazon Web Servicesと比べな...
[G-Tech2014講演資料] Microsoft Azureで負荷分散された仮想マシンを作ってみよう ~Amazon Web Servicesと比べな...
 
Microsoft Azureを使ったバックアップの基礎
Microsoft Azureを使ったバックアップの基礎Microsoft Azureを使ったバックアップの基礎
Microsoft Azureを使ったバックアップの基礎
 
Azure仮想マシンと仮想ネットワークの基本 2016 ComCamp Fukuoka
Azure仮想マシンと仮想ネットワークの基本 2016 ComCamp FukuokaAzure仮想マシンと仮想ネットワークの基本 2016 ComCamp Fukuoka
Azure仮想マシンと仮想ネットワークの基本 2016 ComCamp Fukuoka
 
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイントG tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
G tech2016 デジタルトランスフォーメーションを牽引するAzure+OSSのスキル習得ポイント
 
オンプレとAWSをつなぐVPNとルーティング
オンプレとAWSをつなぐVPNとルーティングオンプレとAWSをつなぐVPNとルーティング
オンプレとAWSをつなぐVPNとルーティング
 
CloudWatch Eventsを使った ECSのAutoScaling
CloudWatch Eventsを使ったECSのAutoScalingCloudWatch Eventsを使ったECSのAutoScaling
CloudWatch Eventsを使った ECSのAutoScaling
 

Viewers also liked

Running Amazon S3 Encryption
Running Amazon S3 EncryptionRunning Amazon S3 Encryption
Running Amazon S3 EncryptionSatoru Ishikawa
 
AWS Shieldのご紹介 Managed DDoS Protection
AWS Shieldのご紹介 Managed DDoS ProtectionAWS Shieldのご紹介 Managed DDoS Protection
AWS Shieldのご紹介 Managed DDoS Protection
Amazon Web Services Japan
 
ユーザーからみたre:Inventのこれまでと今後
ユーザーからみたre:Inventのこれまでと今後ユーザーからみたre:Inventのこれまでと今後
ユーザーからみたre:Inventのこれまでと今後
Recruit Technologies
 
My SQL on Ceph
My SQL on CephMy SQL on Ceph
My SQL on Ceph
Red_Hat_Storage
 
AWS Black Belt Techシリーズ AWS Key Management Service
AWS Black Belt Techシリーズ AWS Key Management ServiceAWS Black Belt Techシリーズ AWS Key Management Service
AWS Black Belt Techシリーズ AWS Key Management Service
Amazon Web Services Japan
 
Black Belt Online Seminar AWS上の暗号化ソリューション
Black Belt Online Seminar AWS上の暗号化ソリューションBlack Belt Online Seminar AWS上の暗号化ソリューション
Black Belt Online Seminar AWS上の暗号化ソリューション
Amazon Web Services Japan
 
python-twitterを用いたTwitterデータ収集
python-twitterを用いたTwitterデータ収集python-twitterを用いたTwitterデータ収集
python-twitterを用いたTwitterデータ収集Hikaru Takemura
 
Python東海Vol.5 IPythonをマスターしよう
Python東海Vol.5 IPythonをマスターしようPython東海Vol.5 IPythonをマスターしよう
Python東海Vol.5 IPythonをマスターしよう
Hiroshi Funai
 
RとPythonによるデータ解析入門
RとPythonによるデータ解析入門RとPythonによるデータ解析入門
RとPythonによるデータ解析入門Atsushi Hayakawa
 
Digital collaborative accounting
Digital collaborative accounting Digital collaborative accounting
Digital collaborative accounting
Nirmal Ghorawat
 
3 waste pages 023 059
3 waste pages 023 0593 waste pages 023 059
3 waste pages 023 059Jim Werner
 
Presentacin1paris 101111180346-phpapp02
Presentacin1paris 101111180346-phpapp02Presentacin1paris 101111180346-phpapp02
Presentacin1paris 101111180346-phpapp02
ARAGON&CALIDAD*****
 
"erlang, webmail and hibari" at Rakuten tech talk
"erlang, webmail and hibari" at Rakuten tech talk"erlang, webmail and hibari" at Rakuten tech talk
"erlang, webmail and hibari" at Rakuten tech talk
CLOUDIAN KK
 
Right message right customer right platform
Right message right customer right platformRight message right customer right platform
Right message right customer right platform
fredyutama
 
Crpt 106hrpt301
Crpt 106hrpt301Crpt 106hrpt301
Crpt 106hrpt301Jim Werner
 
Turski kuvar-Lahmacun
 Turski kuvar-Lahmacun Turski kuvar-Lahmacun
Turski kuvar-LahmacunPACE Kiprovska
 
Ci vuole cultura (informatica)
Ci vuole cultura (informatica)Ci vuole cultura (informatica)
Ci vuole cultura (informatica)
Paolo Coppola
 

Viewers also liked (20)

Running Amazon S3 Encryption
Running Amazon S3 EncryptionRunning Amazon S3 Encryption
Running Amazon S3 Encryption
 
AWS Shieldのご紹介 Managed DDoS Protection
AWS Shieldのご紹介 Managed DDoS ProtectionAWS Shieldのご紹介 Managed DDoS Protection
AWS Shieldのご紹介 Managed DDoS Protection
 
ユーザーからみたre:Inventのこれまでと今後
ユーザーからみたre:Inventのこれまでと今後ユーザーからみたre:Inventのこれまでと今後
ユーザーからみたre:Inventのこれまでと今後
 
My SQL on Ceph
My SQL on CephMy SQL on Ceph
My SQL on Ceph
 
AWS Black Belt Techシリーズ AWS Key Management Service
AWS Black Belt Techシリーズ AWS Key Management ServiceAWS Black Belt Techシリーズ AWS Key Management Service
AWS Black Belt Techシリーズ AWS Key Management Service
 
Black Belt Online Seminar AWS上の暗号化ソリューション
Black Belt Online Seminar AWS上の暗号化ソリューションBlack Belt Online Seminar AWS上の暗号化ソリューション
Black Belt Online Seminar AWS上の暗号化ソリューション
 
python-twitterを用いたTwitterデータ収集
python-twitterを用いたTwitterデータ収集python-twitterを用いたTwitterデータ収集
python-twitterを用いたTwitterデータ収集
 
Python東海Vol.5 IPythonをマスターしよう
Python東海Vol.5 IPythonをマスターしようPython東海Vol.5 IPythonをマスターしよう
Python東海Vol.5 IPythonをマスターしよう
 
RとPythonによるデータ解析入門
RとPythonによるデータ解析入門RとPythonによるデータ解析入門
RとPythonによるデータ解析入門
 
English for elementry
English for elementryEnglish for elementry
English for elementry
 
Digital collaborative accounting
Digital collaborative accounting Digital collaborative accounting
Digital collaborative accounting
 
3 waste pages 023 059
3 waste pages 023 0593 waste pages 023 059
3 waste pages 023 059
 
Presentacin1paris 101111180346-phpapp02
Presentacin1paris 101111180346-phpapp02Presentacin1paris 101111180346-phpapp02
Presentacin1paris 101111180346-phpapp02
 
"erlang, webmail and hibari" at Rakuten tech talk
"erlang, webmail and hibari" at Rakuten tech talk"erlang, webmail and hibari" at Rakuten tech talk
"erlang, webmail and hibari" at Rakuten tech talk
 
Right message right customer right platform
Right message right customer right platformRight message right customer right platform
Right message right customer right platform
 
Crpt 106hrpt301
Crpt 106hrpt301Crpt 106hrpt301
Crpt 106hrpt301
 
Turski kuvar-Lahmacun
 Turski kuvar-Lahmacun Turski kuvar-Lahmacun
Turski kuvar-Lahmacun
 
Ci vuole cultura (informatica)
Ci vuole cultura (informatica)Ci vuole cultura (informatica)
Ci vuole cultura (informatica)
 
Kentucky
KentuckyKentucky
Kentucky
 
Utah
UtahUtah
Utah
 

Similar to AWS CLI and CLOUDIAN HyperStore

AWS Black Belt Techシリーズ AWS Command Line Interface
AWS Black Belt Techシリーズ  AWS Command Line InterfaceAWS Black Belt Techシリーズ  AWS Command Line Interface
AWS Black Belt Techシリーズ AWS Command Line Interface
Amazon Web Services Japan
 
AWS Black Belt Tech シリーズ 2015 - AWS CloudFormation
AWS Black Belt Tech シリーズ 2015 - AWS CloudFormationAWS Black Belt Tech シリーズ 2015 - AWS CloudFormation
AWS Black Belt Tech シリーズ 2015 - AWS CloudFormation
Amazon Web Services Japan
 
AWS サービスアップデートまとめ 2013年9月
AWS サービスアップデートまとめ 2013年9月AWS サービスアップデートまとめ 2013年9月
AWS サービスアップデートまとめ 2013年9月Yasuhiro Horiuchi
 
Windows on aws最新情報
Windows on aws最新情報Windows on aws最新情報
Windows on aws最新情報Genta Watanabe
 
AWS - Windowsアップデート re:Invent & Windows Server 2016
AWS - Windowsアップデートre:Invent & Windows Server 2016AWS - Windowsアップデートre:Invent & Windows Server 2016
AWS - Windowsアップデート re:Invent & Windows Server 2016
Amazon Web Services Japan
 
Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013
Yasuhiro Horiuchi
 
hbstudy37 doc
hbstudy37 dochbstudy37 doc
hbstudy37 doc
Fujishiro Takuya
 
20161125 awsサービスアップデート
20161125 awsサービスアップデート20161125 awsサービスアップデート
20161125 awsサービスアップデート
Genta Watanabe
 
Kinesis3 notes
Kinesis3 notesKinesis3 notes
Kinesis3 notes
tatsuya 264
 
Azure IaaS update (2018年6月~7月 発表版)
Azure IaaS update (2018年6月~7月 発表版) Azure IaaS update (2018年6月~7月 発表版)
Azure IaaS update (2018年6月~7月 発表版)
Takamasa Maejima
 
Askusa on AWS
Askusa on AWSAskusa on AWS
Askusa on AWS
Shingo Furuyama
 
AWS Black Belt Tech シリーズ 2015 - AWS OpsWorks
AWS Black Belt Tech シリーズ 2015 - AWS OpsWorksAWS Black Belt Tech シリーズ 2015 - AWS OpsWorks
AWS Black Belt Tech シリーズ 2015 - AWS OpsWorks
Amazon Web Services Japan
 
Cm re growth-reinvent-app304-kaji
Cm re growth-reinvent-app304-kajiCm re growth-reinvent-app304-kaji
Cm re growth-reinvent-app304-kaji
Hiroyuki Kaji
 
プログラマブルクラウドの薦め
プログラマブルクラウドの薦めプログラマブルクラウドの薦め
プログラマブルクラウドの薦めShinpei Ohtani
 
AWS初心者向けWebinar .NET開発者のためのAWS超入門
AWS初心者向けWebinar .NET開発者のためのAWS超入門AWS初心者向けWebinar .NET開発者のためのAWS超入門
AWS初心者向けWebinar .NET開発者のためのAWS超入門
Amazon Web Services Japan
 
AWS Black Belt Online Seminar 2017 EC2 Windows
AWS Black Belt Online Seminar 2017 EC2 WindowsAWS Black Belt Online Seminar 2017 EC2 Windows
AWS Black Belt Online Seminar 2017 EC2 Windows
Amazon Web Services Japan
 
最近の PowerShell のお話
最近の PowerShell のお話最近の PowerShell のお話
最近の PowerShell のお話
Kazuki Takai
 
AKS on Azure Stack HCI/Windows Serverのデプロイ _ Deploying AKS on Azure Stack HCI...
AKS on Azure Stack HCI/Windows Serverのデプロイ _ Deploying AKS on Azure Stack HCI...AKS on Azure Stack HCI/Windows Serverのデプロイ _ Deploying AKS on Azure Stack HCI...
AKS on Azure Stack HCI/Windows Serverのデプロイ _ Deploying AKS on Azure Stack HCI...
Norio Sashizaki
 
Watson API トレーニング 20160716 rev02
Watson API トレーニング 20160716 rev02Watson API トレーニング 20160716 rev02
Watson API トレーニング 20160716 rev02
Hiroaki Komine
 
20140621 july techfesta (JTF2014) 突発**むけAWS
20140621 july techfesta (JTF2014) 突発**むけAWS20140621 july techfesta (JTF2014) 突発**むけAWS
20140621 july techfesta (JTF2014) 突発**むけAWS
Yasuhiro Araki, Ph.D
 

Similar to AWS CLI and CLOUDIAN HyperStore (20)

AWS Black Belt Techシリーズ AWS Command Line Interface
AWS Black Belt Techシリーズ  AWS Command Line InterfaceAWS Black Belt Techシリーズ  AWS Command Line Interface
AWS Black Belt Techシリーズ AWS Command Line Interface
 
AWS Black Belt Tech シリーズ 2015 - AWS CloudFormation
AWS Black Belt Tech シリーズ 2015 - AWS CloudFormationAWS Black Belt Tech シリーズ 2015 - AWS CloudFormation
AWS Black Belt Tech シリーズ 2015 - AWS CloudFormation
 
AWS サービスアップデートまとめ 2013年9月
AWS サービスアップデートまとめ 2013年9月AWS サービスアップデートまとめ 2013年9月
AWS サービスアップデートまとめ 2013年9月
 
Windows on aws最新情報
Windows on aws最新情報Windows on aws最新情報
Windows on aws最新情報
 
AWS - Windowsアップデート re:Invent & Windows Server 2016
AWS - Windowsアップデートre:Invent & Windows Server 2016AWS - Windowsアップデートre:Invent & Windows Server 2016
AWS - Windowsアップデート re:Invent & Windows Server 2016
 
Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013
 
hbstudy37 doc
hbstudy37 dochbstudy37 doc
hbstudy37 doc
 
20161125 awsサービスアップデート
20161125 awsサービスアップデート20161125 awsサービスアップデート
20161125 awsサービスアップデート
 
Kinesis3 notes
Kinesis3 notesKinesis3 notes
Kinesis3 notes
 
Azure IaaS update (2018年6月~7月 発表版)
Azure IaaS update (2018年6月~7月 発表版) Azure IaaS update (2018年6月~7月 発表版)
Azure IaaS update (2018年6月~7月 発表版)
 
Askusa on AWS
Askusa on AWSAskusa on AWS
Askusa on AWS
 
AWS Black Belt Tech シリーズ 2015 - AWS OpsWorks
AWS Black Belt Tech シリーズ 2015 - AWS OpsWorksAWS Black Belt Tech シリーズ 2015 - AWS OpsWorks
AWS Black Belt Tech シリーズ 2015 - AWS OpsWorks
 
Cm re growth-reinvent-app304-kaji
Cm re growth-reinvent-app304-kajiCm re growth-reinvent-app304-kaji
Cm re growth-reinvent-app304-kaji
 
プログラマブルクラウドの薦め
プログラマブルクラウドの薦めプログラマブルクラウドの薦め
プログラマブルクラウドの薦め
 
AWS初心者向けWebinar .NET開発者のためのAWS超入門
AWS初心者向けWebinar .NET開発者のためのAWS超入門AWS初心者向けWebinar .NET開発者のためのAWS超入門
AWS初心者向けWebinar .NET開発者のためのAWS超入門
 
AWS Black Belt Online Seminar 2017 EC2 Windows
AWS Black Belt Online Seminar 2017 EC2 WindowsAWS Black Belt Online Seminar 2017 EC2 Windows
AWS Black Belt Online Seminar 2017 EC2 Windows
 
最近の PowerShell のお話
最近の PowerShell のお話最近の PowerShell のお話
最近の PowerShell のお話
 
AKS on Azure Stack HCI/Windows Serverのデプロイ _ Deploying AKS on Azure Stack HCI...
AKS on Azure Stack HCI/Windows Serverのデプロイ _ Deploying AKS on Azure Stack HCI...AKS on Azure Stack HCI/Windows Serverのデプロイ _ Deploying AKS on Azure Stack HCI...
AKS on Azure Stack HCI/Windows Serverのデプロイ _ Deploying AKS on Azure Stack HCI...
 
Watson API トレーニング 20160716 rev02
Watson API トレーニング 20160716 rev02Watson API トレーニング 20160716 rev02
Watson API トレーニング 20160716 rev02
 
20140621 july techfesta (JTF2014) 突発**むけAWS
20140621 july techfesta (JTF2014) 突発**むけAWS20140621 july techfesta (JTF2014) 突発**むけAWS
20140621 july techfesta (JTF2014) 突発**むけAWS
 

More from CLOUDIAN KK

CLOUDIAN HYPERSTORE - 風林火山ストレージ
CLOUDIAN HYPERSTORE - 風林火山ストレージCLOUDIAN HYPERSTORE - 風林火山ストレージ
CLOUDIAN HYPERSTORE - 風林火山ストレージ
CLOUDIAN KK
 
クラウディアンのご紹介
クラウディアンのご紹介クラウディアンのご紹介
クラウディアンのご紹介
CLOUDIAN KK
 
IoT/ビッグデータ/AI連携により次世代ストレージが促進するビジネス変革
IoT/ビッグデータ/AI連携により次世代ストレージが促進するビジネス変革IoT/ビッグデータ/AI連携により次世代ストレージが促進するビジネス変革
IoT/ビッグデータ/AI連携により次世代ストレージが促進するビジネス変革
CLOUDIAN KK
 
CLOUDIAN Presentation at VERITAS VISION in Tokyo
CLOUDIAN Presentation at VERITAS VISION in TokyoCLOUDIAN Presentation at VERITAS VISION in Tokyo
CLOUDIAN Presentation at VERITAS VISION in Tokyo
CLOUDIAN KK
 
S3 API接続検証プログラムのご紹介
S3 API接続検証プログラムのご紹介S3 API接続検証プログラムのご紹介
S3 API接続検証プログラムのご紹介
CLOUDIAN KK
 
ZiDOMA data and CLOUDIAN HyperStore
ZiDOMA data and CLOUDIAN HyperStoreZiDOMA data and CLOUDIAN HyperStore
ZiDOMA data and CLOUDIAN HyperStore
CLOUDIAN KK
 
FOBAS CSC and CLOUDIAN HyperStore
FOBAS CSC and CLOUDIAN HyperStoreFOBAS CSC and CLOUDIAN HyperStore
FOBAS CSC and CLOUDIAN HyperStore
CLOUDIAN KK
 
Cloudian presentation at idc japan sv2016
Cloudian presentation at idc japan sv2016Cloudian presentation at idc japan sv2016
Cloudian presentation at idc japan sv2016
CLOUDIAN KK
 
ITコアを刷新するハイブリッドクラウド型ITシステム
ITコアを刷新するハイブリッドクラウド型ITシステムITコアを刷新するハイブリッドクラウド型ITシステム
ITコアを刷新するハイブリッドクラウド型ITシステム
CLOUDIAN KK
 
【FOBAS】Data is money. ストレージ分散投資のススメ
【FOBAS】Data is money. ストレージ分散投資のススメ【FOBAS】Data is money. ストレージ分散投資のススメ
【FOBAS】Data is money. ストレージ分散投資のススメ
CLOUDIAN KK
 
【ARI】ストレージのコスト・利便性・非機能要求項目を徹底比較
【ARI】ストレージのコスト・利便性・非機能要求項目を徹底比較【ARI】ストレージのコスト・利便性・非機能要求項目を徹底比較
【ARI】ストレージのコスト・利便性・非機能要求項目を徹底比較
CLOUDIAN KK
 
【SIS】オブジェクトストレージを活用した増え続ける長期保管データの運用の効率化
【SIS】オブジェクトストレージを活用した増え続ける長期保管データの運用の効率化【SIS】オブジェクトストレージを活用した増え続ける長期保管データの運用の効率化
【SIS】オブジェクトストレージを活用した増え続ける長期保管データの運用の効率化
CLOUDIAN KK
 
【CLOUDIAN】コード化されたインフラの実装
【CLOUDIAN】コード化されたインフラの実装【CLOUDIAN】コード化されたインフラの実装
【CLOUDIAN】コード化されたインフラの実装
CLOUDIAN KK
 
【CLOUDIAN】自動階層化による現有ストレージ活用術
【CLOUDIAN】自動階層化による現有ストレージ活用術【CLOUDIAN】自動階層化による現有ストレージ活用術
【CLOUDIAN】自動階層化による現有ストレージ活用術
CLOUDIAN KK
 
【CLOUDIAN】秒間隔RPO(目標復旧時点)の実現
【CLOUDIAN】秒間隔RPO(目標復旧時点)の実現【CLOUDIAN】秒間隔RPO(目標復旧時点)の実現
【CLOUDIAN】秒間隔RPO(目標復旧時点)の実現
CLOUDIAN KK
 
【Cloudian】FIT2015における会社製品紹介
【Cloudian】FIT2015における会社製品紹介【Cloudian】FIT2015における会社製品紹介
【Cloudian】FIT2015における会社製品紹介
CLOUDIAN KK
 
CLOUDIAN at Support Engineer Night
CLOUDIAN at Support Engineer NightCLOUDIAN at Support Engineer Night
CLOUDIAN at Support Engineer Night
CLOUDIAN KK
 
ビッグデータ分析基盤が直面する課題をオブジェクトストレージで解決
ビッグデータ分析基盤が直面する課題をオブジェクトストレージで解決ビッグデータ分析基盤が直面する課題をオブジェクトストレージで解決
ビッグデータ分析基盤が直面する課題をオブジェクトストレージで解決
CLOUDIAN KK
 
NetApp SteelStore with CLOUDIAN HyperStore
NetApp SteelStore with CLOUDIAN HyperStoreNetApp SteelStore with CLOUDIAN HyperStore
NetApp SteelStore with CLOUDIAN HyperStore
CLOUDIAN KK
 
User interface of CLOUDIAN HyperStore
User interface of CLOUDIAN HyperStoreUser interface of CLOUDIAN HyperStore
User interface of CLOUDIAN HyperStore
CLOUDIAN KK
 

More from CLOUDIAN KK (20)

CLOUDIAN HYPERSTORE - 風林火山ストレージ
CLOUDIAN HYPERSTORE - 風林火山ストレージCLOUDIAN HYPERSTORE - 風林火山ストレージ
CLOUDIAN HYPERSTORE - 風林火山ストレージ
 
クラウディアンのご紹介
クラウディアンのご紹介クラウディアンのご紹介
クラウディアンのご紹介
 
IoT/ビッグデータ/AI連携により次世代ストレージが促進するビジネス変革
IoT/ビッグデータ/AI連携により次世代ストレージが促進するビジネス変革IoT/ビッグデータ/AI連携により次世代ストレージが促進するビジネス変革
IoT/ビッグデータ/AI連携により次世代ストレージが促進するビジネス変革
 
CLOUDIAN Presentation at VERITAS VISION in Tokyo
CLOUDIAN Presentation at VERITAS VISION in TokyoCLOUDIAN Presentation at VERITAS VISION in Tokyo
CLOUDIAN Presentation at VERITAS VISION in Tokyo
 
S3 API接続検証プログラムのご紹介
S3 API接続検証プログラムのご紹介S3 API接続検証プログラムのご紹介
S3 API接続検証プログラムのご紹介
 
ZiDOMA data and CLOUDIAN HyperStore
ZiDOMA data and CLOUDIAN HyperStoreZiDOMA data and CLOUDIAN HyperStore
ZiDOMA data and CLOUDIAN HyperStore
 
FOBAS CSC and CLOUDIAN HyperStore
FOBAS CSC and CLOUDIAN HyperStoreFOBAS CSC and CLOUDIAN HyperStore
FOBAS CSC and CLOUDIAN HyperStore
 
Cloudian presentation at idc japan sv2016
Cloudian presentation at idc japan sv2016Cloudian presentation at idc japan sv2016
Cloudian presentation at idc japan sv2016
 
ITコアを刷新するハイブリッドクラウド型ITシステム
ITコアを刷新するハイブリッドクラウド型ITシステムITコアを刷新するハイブリッドクラウド型ITシステム
ITコアを刷新するハイブリッドクラウド型ITシステム
 
【FOBAS】Data is money. ストレージ分散投資のススメ
【FOBAS】Data is money. ストレージ分散投資のススメ【FOBAS】Data is money. ストレージ分散投資のススメ
【FOBAS】Data is money. ストレージ分散投資のススメ
 
【ARI】ストレージのコスト・利便性・非機能要求項目を徹底比較
【ARI】ストレージのコスト・利便性・非機能要求項目を徹底比較【ARI】ストレージのコスト・利便性・非機能要求項目を徹底比較
【ARI】ストレージのコスト・利便性・非機能要求項目を徹底比較
 
【SIS】オブジェクトストレージを活用した増え続ける長期保管データの運用の効率化
【SIS】オブジェクトストレージを活用した増え続ける長期保管データの運用の効率化【SIS】オブジェクトストレージを活用した増え続ける長期保管データの運用の効率化
【SIS】オブジェクトストレージを活用した増え続ける長期保管データの運用の効率化
 
【CLOUDIAN】コード化されたインフラの実装
【CLOUDIAN】コード化されたインフラの実装【CLOUDIAN】コード化されたインフラの実装
【CLOUDIAN】コード化されたインフラの実装
 
【CLOUDIAN】自動階層化による現有ストレージ活用術
【CLOUDIAN】自動階層化による現有ストレージ活用術【CLOUDIAN】自動階層化による現有ストレージ活用術
【CLOUDIAN】自動階層化による現有ストレージ活用術
 
【CLOUDIAN】秒間隔RPO(目標復旧時点)の実現
【CLOUDIAN】秒間隔RPO(目標復旧時点)の実現【CLOUDIAN】秒間隔RPO(目標復旧時点)の実現
【CLOUDIAN】秒間隔RPO(目標復旧時点)の実現
 
【Cloudian】FIT2015における会社製品紹介
【Cloudian】FIT2015における会社製品紹介【Cloudian】FIT2015における会社製品紹介
【Cloudian】FIT2015における会社製品紹介
 
CLOUDIAN at Support Engineer Night
CLOUDIAN at Support Engineer NightCLOUDIAN at Support Engineer Night
CLOUDIAN at Support Engineer Night
 
ビッグデータ分析基盤が直面する課題をオブジェクトストレージで解決
ビッグデータ分析基盤が直面する課題をオブジェクトストレージで解決ビッグデータ分析基盤が直面する課題をオブジェクトストレージで解決
ビッグデータ分析基盤が直面する課題をオブジェクトストレージで解決
 
NetApp SteelStore with CLOUDIAN HyperStore
NetApp SteelStore with CLOUDIAN HyperStoreNetApp SteelStore with CLOUDIAN HyperStore
NetApp SteelStore with CLOUDIAN HyperStore
 
User interface of CLOUDIAN HyperStore
User interface of CLOUDIAN HyperStoreUser interface of CLOUDIAN HyperStore
User interface of CLOUDIAN HyperStore
 

Recently uploaded

【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
harmonylab
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
NTT DATA Technology & Innovation
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
atsushi061452
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
Toru Tamaki
 
CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
Yuuitirou528 default
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
iPride Co., Ltd.
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
Sony - Neural Network Libraries
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
Fukuoka Institute of Technology
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
Matsushita Laboratory
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance
 

Recently uploaded (16)

【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
 
CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
 

AWS CLI and CLOUDIAN HyperStore

  • 1. Technical Tips on CLOUDIAN HyperStore #4 Technical Tips on CLOUDIAN HyperStore® AWS CLI のインストールと使用方法 (CLOUDIAN HyperStore v5.2.x 対応版) Version 1.0 Feb. 25, 2016
  • 2. 《 目 次 》 1. はじめに........................................................................................................ 3 2. AWS CLI のインストール.................................................................................... 5 3. AWS CLI の構成 ........................................................................................... 7 4. HYPERSTORE への接続方法............................................................................. 8 5. AWS CLI の使用例 ...................................................................................... 10 (1) オブジェクトのリスト表示 / AWS S3 LS............................................................. 11 使用例①: バケットのリスト表示 .......................................................................... 11 使用例②: 指定したバケット/フォルダ内のオブジェクトのリスト表示 ..................................... 12 使用例③: 指定したバケット/フォルダ内のオブジェクトの再帰的リスト表示 ............................ 12 使用例④: ファイルサイズを見やすい形式で表示 ........................................................ 13 使用例⑤: 総オブジェクト数および総容量のサマリー表示 .............................................. 14 (2) バケットの新規作成 / AWS S3 MB ................................................................ 15 使用例①: aws s3 mb .................................................................................. 15 (3) バケットの削除 / AWS S3 RB ...................................................................... 15 使用例①: aws s3 rb.................................................................................... 15 使用例②: aws s3 rb --force ......................................................................... 16 (4) ローカルファイルまたは HYPERSTORE 上のオブジェクトのコピー / AWS S3 CP ................... 17 使用例①: aws s3 cp ................................................................................... 18 使用例②: aws s3 cp --acl --sse .................................................................... 19 使用例③: aws s3 cp --recursive ................................................................... 20 使用例④: aws s3 cp --metadata................................................................... 22 (5) ローカルファイルまたは HYPERSTORE 上のオブジェクトの移動 / AWS S3 MV ................... 24 使用例①: aws s3 mv .................................................................................. 25 使用例②: aws s3 mv --recursive .................................................................. 26 (6) HYPERSTORE 上のオブジェクトの削除 / AWS S3 RM .............................................. 28 使用例①: aws s3 rm................................................................................... 28 使用例②: aws s3 rm --recursive................................................................... 29 (7) ファイル(オブジェクト)やディレクトリの同期 / AWS S3 SYNC ................................... 30 使用例①: aws s3 sync (初期コピー) ............................................................. 31 使用例②: aws s3 sync (新規に保存されたファイルを同期)..................................... 34
  • 3. 使用例③: aws s3 sync --delete (削除されたファイルを含めて同期) ......................... 36 6. おわりに ...................................................................................................... 39
  • 4. Technical Tips on CLOUDIAN HyperStore #3 P.2 Copyright © 2010-2016 Cloudian KK. All rights reserved. 本書では、AWS が無償で提供しているツール「AWS CLI」のインストール方法とその使用方法を、簡 単な使用例を掲載して説明します。 本書では説明されていないオプションの説明や、記載されている内容よりもより詳細な情報を確認した い場合には、AWS CLI の公式ドキュメントページをご参照ください。 ★AWS CLI リファレンス http://docs.aws.amazon.com/cli/latest/reference/ 《注意事項》 本書に掲載するサンプルコードを使用したことにより発生したデータの損失またはお客様のコンピューター・システムへの損 傷などのいかなる損害についても、クラウディアン株式会社は一切の責任を負わないものとします。 サンプルコードをそのままご使用になられる場合は、自己判断・自己責任でお願いします。
  • 5. Technical Tips on CLOUDIAN HyperStore #3 P.3 Copyright © 2010-2016 Cloudian KK. All rights reserved. 1. はじめに CLOUDIAN HyperStore®(以下、「HyperStore」)は Amazon S3 完全互換のオブジェクトスト レージですので、AWSが無償で提供している各種 SDKやコマンドラインツールを利用することができます。 2016 年 1 月 26 日現在、AWS は下図のような、11 種類の SDK を提供しています。 URL: https://aws.amazon.com/jp/tools/
  • 6. Technical Tips on CLOUDIAN HyperStore #3 P.4 Copyright © 2010-2016 Cloudian KK. All rights reserved. 前頁の SDK 以外にも下図のような IDE ツールキットやコマンドラインツールも提供しており、その全 てを HyperStore でも利用することができます。 上述のような AWS が提供している様々な SDK やツールを HyperStore でも利用することができます が、これらのデフォルトの接続先は AWS のリージョン内の S3 エンドポイントが想定されています。これら SDK やツールを HyperStore に対して使用する場合の大前提として、デフォルトである AWS が想定さ れた接続先を HyperStore の S3 エンドポイントに上書きする必要があります。 AWS がインターネット上に公開している各種ドキュメントは、接続先として Amazon S3 を前提に作 成されているため、HyperStore を接続先として AWS CLI を使用するための設定に関する記載はあり ません。本書では、HyperStore で AWS CLI をご活用頂くための設定方法について記載します。
  • 7. Technical Tips on CLOUDIAN HyperStore #3 P.5 Copyright © 2010-2016 Cloudian KK. All rights reserved. 2. AWS CLI のインストール AWS CLI は、Windows-OS 版と Linux/UNIX/OS X 版が提供されています。 Windows-OS 版の AWS CLI は MSI インストーラーをダウンロードできますので、インストールは非常 に簡単です。 Linux/UNIX-OS/OS X 版の AWS CLI は、Python のパッケージマネージャーの pip1 を使用して インストールすることができます。 # pip install awscli Collecting awscli /usr/lib/python2.7/site- packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning. InsecurePlatformWarning Downloading awscli-1.9.5-py2.py3-none-any.whl (805kB) 100% |????????????????????????????????| 806kB 535kB/s Collecting rsa<=3.3.0,>=3.1.2 (from awscli) Downloading rsa-3.2.3-py2.py3-none-any.whl (44kB) 100% |????????????????????????????????| 45kB 8.9MB/s Collecting botocore==1.3.5 (from awscli) Downloading botocore-1.3.5-py2.py3-none-any.whl (2.1MB) 100% |????????????????????????????????| 2.1MB 168kB/s Collecting colorama<=0.3.3,>=0.2.5 (from awscli) Downloading colorama-0.3.3.tar.gz Collecting docutils>=0.10 (from awscli) Downloading docutils-0.12.tar.gz (1.6MB) 100% |????????????????????????????????| 1.6MB 184kB/s Collecting pyasn1>=0.1.3 (from rsa<=3.3.0,>=3.1.2->awscli) Downloading pyasn1-0.1.9-py2.py3-none-any.whl Collecting jmespath<1.0.0,>=0.7.1 (from botocore==1.3.5->awscli) Downloading jmespath-0.9.0-py2.py3-none-any.whl Collecting python-dateutil<3.0.0,>=2.1 (from botocore==1.3.5->awscli) Downloading python_dateutil-2.4.2-py2.py3-none-any.whl (188kB) 100% |????????????????????????????????| 192kB 1.9MB/s Collecting six>=1.5 (from python-dateutil<3.0.0,>=2.1->botocore==1.3.5->awscli) Downloading six-1.10.0-py2.py3-none-any.whl Building wheels for collected packages: colorama, docutils Running setup.py bdist_wheel for colorama Stored in directory: /root/.cache/pip/wheels/e3/24/8d/aec3db961cfbc8e939dc1843126548e7d479349f96659067e9 1 pip は Python で書かれたパッケージソフトウェアをインストール・管理するためのパッケージ管理システムである。多くの Python パッケージは、Python Package Index(PyPI)上にある。 pip は Python 2.7.9 以降、Python 3.4 以降からデフォルトで付属するようになった。(Wikipedia より引用)
  • 8. Technical Tips on CLOUDIAN HyperStore #3 P.6 Copyright © 2010-2016 Cloudian KK. All rights reserved. Running setup.py bdist_wheel for docutils Stored in directory: /root/.cache/pip/wheels/d5/32/4f/1347e8ac67071e8150a5dc69354a51a04ac065d0b48334f608 Successfully built colorama docutils Installing collected packages: pyasn1, rsa, jmespath, six, python-dateutil, docutils, botocore, colorama, awscli Successfully installed awscli-1.9.5 botocore-1.3.5 colorama-0.3.3 docutils-0.12 jmespath-0.9.0 pyasn1-0.1.9 python-dateutil-2.4.2 rsa-3.2.3 six-1.10.0 AWS CLI をインストールするマシンに Python がインストールされており、その Python のバージョンが 2.7.9 以降あるいは 3.4 以降であれば、pip は標準でインストールされています。これらよりも以前のバ ージョンをご使用の場合は、Linux/Windows/OS X それぞれの環境に合わせた方法で pip をインスト ールしてください。例として、以下のような Linux 環境で、pip をインストールする方法を例示します。 (1) Python のバージョン確認 # python --version Python 2.7.5 (2) pip のインストール # curl -kL https://raw.github.com/pypa/pip/master/contrib/get-pip.py | python % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- 0:00:06 --:--:-- 0 100 1379k 100 1379k 0 0 115k 0 0:00:11 0:00:11 --:--:-- 358k Collecting pip /tmp/tmpUns2I_/pip.zip/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning. Downloading pip-7.1.2-py2.py3-none-any.whl (1.1MB) 100% |????????????????????????????????| 1.1MB 222kB/s Collecting wheel Downloading wheel-0.26.0-py2.py3-none-any.whl (63kB) 100% |????????????????????????????????| 65kB 7.0MB/s Installing collected packages: pip, wheel Successfully installed pip-7.1.2 wheel-0.26.0 /tmp/tmpUns2I_/pip.zip/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning. (3) pip のバージョン確認 # pip --version pip 7.1.2 from /usr/lib/python2.7/site-packages (python 2.7)
  • 9. Technical Tips on CLOUDIAN HyperStore #3 P.7 Copyright © 2010-2016 Cloudian KK. All rights reserved. 3. AWS CLI の構成 AWS CLI のインストールが完了したら、続いて S3 アクセスキーやシークレットキー、リージョン等のクレデ ンシャル情報を設定します。 AWS CLI をインストールしたマシンのコンソールを開き、下記コマンドを実行します。 # aws configure すると、対話的に以下の情報が設定できるプロンプトが表示されるので、HyperStore の管理 Web UI である Cloudian Management Console(以下、「CMC」)で確認したアクセスキー(AWS Access Key ID)とシークレットキー(AWS Secret Access Key)、HyperStore 導入時に設定したリー ジョン名(Default region name)を入力します。 「Default output format」は、特に設定する必要はありません(何も入力せずにエンターを押下します)。 AWS Access Key ID [None]: <CMC で確認したアクセスキー> AWS Secret Access Key [None]: <CMC で確認したシークレットキー> Default region name [None]: <HyperStore のリージョン名> Default output format [None]:<何も入力せずにエンター押下> ここで設定したクレデンシャル情報は、aws configure を実行したユーザーのホームディレクトリ直下 の隠しディレクトリ「.aws」内の設定ファイル「credentialls」および「config」に保存されます。 以下は、その設定ファイルの中身の例です。 # cat ~/.aws/credentials [default] aws_access_key_id = 17b06232a5c5aa14c191 aws_secret_access_key = 1qEjM/Q+mtudeMtgKfm0dG/D7IQgExEwHtVbgMYf # cat ~/.aws/config [default] region = region1
  • 10. Technical Tips on CLOUDIAN HyperStore #3 P.8 Copyright © 2010-2016 Cloudian KK. All rights reserved. 4. HyperStore への接続方法 「1. はじめに」に記載したように、AWS が提供している CLI や SDK 等の各種ツールは、その接続先と して AWS 上のサービスを想定しています。 そのため、HyperStore に接続するためには、既存の Amazon S3 のエンドポイントを HyperStore の S3 エンドポイントで上書きする必要があります。本書の検証で使用した HyperStore は、下表のよう な環境設定になっています。 リージョン名 region1 S3 エンドポイント(サービス URL) s3-region1.shibuya.local S3 サービスの SSL 使用の有無 無し(80/HTTP 通信) ※SSL 通信を有効化していない状態です。 この設定の HyperStore に AWS CLI で接続するには、コマンドのオプション「--endpoint-url」に HyperStore の S3 エンドポイントを設定して aws コマンドを実行します。 # aws --endpoint-url http://s3-region1.shibuya.local s3 ls 2015-12-16 12:33:21 auto-tiering 2016-02-09 10:35:16 boto3 2016-02-12 14:36:20 logs 2015-12-18 12:53:45 mybucket001 2016-01-26 12:29:50 nbuvolume01 2015-12-16 12:31:48 owncloud-it 2015-12-16 12:32:31 owncloud-sales 2016-01-14 11:50:16 pythonbucket1 2016-01-14 12:37:19 pythonbucket2 2016-01-07 11:14:53 s3sample-rmatsui 2015-12-24 10:22:05 zidoma-data AWS CLI は S3 サービスだけではなく、AWS が提供している様々なサービスに接続することができます が、HyperStore で AWS CLI を利用する場合には、aws コマンドで指定するサービス種別には「s3」を 指定します。 # aws {サービス種別} {コマンド} {パラメータ} ※HyperStore に接続するには、{サービス種別}に「s3」を指定。
  • 11. Technical Tips on CLOUDIAN HyperStore #3 P.9 Copyright © 2010-2016 Cloudian KK. All rights reserved. 例えば前頁で例示した aws --endpoint-url http://s3-region1.shibuya.local s3 ls は、まず接続先の S3 エンドポイントをコマンドオプションの「--endpoint-url」で指定して、 HyperStore の S3 エンドポイントを指定し、次にサービス種別として「s3」を指定して「ls」というコマンド を実行しています。 ~ 「--endpoint-url」をエイリアスに登録してスッキリ!!! ~ AWS CLI で(Amazon S3 ではなく)HyperStore に接続したい場合には、上述の通り、aws コマンドのオプション 「--endpoint-url」で HyperStore の S3 エンドポイントを指定する必要があります。 しかしながら毎回毎回、「aws --endpoint-url {HyperStore の S3 エンドポイント}を入力するのは面倒ですので、 例えば Linux 環境であれば aws コマンドのエイリアスを設定しておくことにより、入力を減らすことができます。 以下の「~/.bashrc」の設定例では、aws と入力すれば「--endpoint-url」付きで実行されるように、aws のエイリア スを設定しています。 # .bashrc # User specific aliases and functions alias rm='rm -i' alias cp='cp -i' alias mv='mv -i' alias aws='aws --endpoint-url http://s3-region1.shibuya.local' # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi このエイリアス設定により、aws コマンドを実行する際に「--endpoint-url {HyperStore の S3 エンドポイント}」を入 力する手間を省けます。 補 足
  • 12. Technical Tips on CLOUDIAN HyperStore #3 P.10 Copyright © 2010-2016 Cloudian KK. All rights reserved. 5. AWS CLI の使用例 本章では、aws s3 コマンドの使用例をそのオプションの説明と共に幾つか掲載します。上述のように (エイリアス設定により「--endpoint-url」が省略可な状態になっていない限り)aws コマンドのオプション「-- endpoint-url」によりHyperStore のS3 エンドポイントを指定する必要があることに注意してください。 本章でのコマンド実行時には、Linux 上で 「alias aws='aws --endpoint-url http://s3-region1.shibuya.local'」 とエイリアスを設定している状態になっていることを前提としています。 aws s3 で使用可能なコマンドは、下記の 8 種類が存在します。 ○ cp … ローカルファイルまたは HyperStore 上のオブジェクトのコピー ○ ls … オブジェクトのリスト表示 ○ mb … バケットの新規作成 ○ mv … ローカルファイルまたは HyperStore 上のオブジェクトの移動 ○ rb … バケットの削除 ○ rm … オブジェクトの削除 ○ sync … ファイルやディレクトリの同期 ○ website … バケットのウェブサイト構成の設定
  • 13. Technical Tips on CLOUDIAN HyperStore #3 P.11 Copyright © 2010-2016 Cloudian KK. All rights reserved. (1) オブジェクトのリスト表示 / aws s3 ls HyperStore 上に作成・保管されているバケットやオブジェクトを、リスト表示します。ls のオプ ションとしては、再帰的にリスト表示させる「--recursive」やオブジェクトのサイズ表示を見やすく させる「--human-readable」、指定したバケットやフォルダに格納されているオブジェクトの総容 量や総数を表示させる「--summarize」等があります。 使用例①: バケットのリスト表示 クレデンシャル情報を設定したユーザーが HyperStore 上に作成しているバケットを、リスト表 示します。「ls」コマンドには、何もパラメータを積んでいない状態です。 # aws s3 ls 2015-12-16 12:33:21 auto-tiering 2016-02-09 10:35:16 boto3 2016-02-12 14:36:20 logs 2015-12-18 12:53:45 mybucket001 2016-01-26 12:29:50 nbuvolume01 2015-12-16 12:31:48 owncloud-it 2015-12-16 12:32:31 owncloud-sales 2016-01-14 11:50:16 pythonbucket1 2016-01-14 12:37:19 pythonbucket2 2016-01-07 11:14:53 s3sample-rmatsui 2015-12-24 10:22:05 zidoma-data aws s3 ls <S3Uri> [--recursive] [--page-size <value>] [--human-readable] [--summarize] 構 文
  • 14. Technical Tips on CLOUDIAN HyperStore #3 P.12 Copyright © 2010-2016 Cloudian KK. All rights reserved. 使用例②: 指定したバケット/フォルダ内のオブジェクトのリスト表示 「ls」コマンドのパラメータとしてバケット名を設定し、そのバケットの中のオブジェクトをリスト表示し ます。 下記の例では、バケット「boto3」の中に格納されているオブジェクトをリスト表示し、このバケット の中には「200mb_mpu.dat」というオブジェクトが格納されていることが分かります。 # aws s3 ls boto3 2016-02-12 12:50:48 200000000 200mb_mpu.dat 下記の例では、バケット「logs」の中に格納されているオブジェクトをリスト表示しています。 このバケット直下には、オブジェクトのプリフィックスに相当するフォルダ「2016-02-12」が作成さ れていることが分かります。 # aws s3 ls logs PRE 2016-02-12/ 使用例③: 指定したバケット/フォルダ内のオブジェクトの再帰的リスト表示 「ls」コマンドのパラメータとしてバケット名と、再帰的リスト表示を指定する「--recursive」を設 定して、そのバケットの中のオブジェクトを再帰的にリスト表示します。 下記の例では、バケット「logs」の中に格納されているオブジェクトを再帰的にリスト表示してい ます。 # aws s3 ls logs --recursive 2016-02-12 14:47:15 6924 2016-02-12/boot.log 2016-02-12 14:47:15 0 2016-02-12/btmp 2016-02-12 14:47:15 0 2016-02-12/btmp-20160209 2016-02-12 14:47:16 5963 2016-02-12/cron 2016-02-12 14:47:16 30006 2016-02-12/cron-20151130 2016-02-12 14:47:16 4590 2016-02-12/cron-20160106 2016-02-12 14:47:16 6789 2016-02-12/cron-20160113 2016-02-12 14:47:16 7996 2016-02-12/cron-20160209 2016-02-12 14:47:16 113564 2016-02-12/dmesg 2016-02-12 14:47:15 113778 2016-02-12/dmesg.old 2016-02-12 14:47:15 1373 2016-02-12/grubby 2016-02-12 14:47:15 292000 2016-02-12/lastlog 2016-02-12 14:47:16 588 2016-02-12/maillog 2016-02-12 14:47:15 1176 2016-02-12/maillog-20151130 2016-02-12 14:47:16 588 2016-02-12/maillog-20160106 2016-02-12 14:47:16 588 2016-02-12/maillog-20160113 2016-02-12 14:47:16 1764 2016-02-12/maillog-20160209 2016-02-12 14:47:16 420207 2016-02-12/messages 2016-02-12 14:47:16 852019 2016-02-12/messages-20151130 2016-02-12 14:47:16 399489 2016-02-12/messages-20160106 2016-02-12 14:47:16 400394 2016-02-12/messages-20160113
  • 15. Technical Tips on CLOUDIAN HyperStore #3 P.13 Copyright © 2010-2016 Cloudian KK. All rights reserved. 2016-02-12 14:47:16 1223658 2016-02-12/messages-20160209 2016-02-12 14:47:16 3140 2016-02-12/secure 2016-02-12 14:47:16 6393 2016-02-12/secure-20151130 2016-02-12 14:47:16 2396 2016-02-12/secure-20160106 2016-02-12 14:47:16 2159 2016-02-12/secure-20160113 2016-02-12 14:47:15 7377 2016-02-12/secure-20160209 2016-02-12 14:47:16 0 2016-02-12/spooler 2016-02-12 14:47:16 0 2016-02-12/spooler-20151130 2016-02-12 14:47:16 0 2016-02-12/spooler-20160106 2016-02-12 14:47:16 0 2016-02-12/spooler-20160113 2016-02-12 14:47:15 0 2016-02-12/spooler-20160209 2016-02-12 14:47:15 0 2016-02-12/tallylog 2016-02-12 14:47:15 5689 2016-02-12/vmware-install.log 2016-02-12 14:47:15 152000 2016-02-12/vmware-vmsvc.log 2016-02-12 14:47:15 109824 2016-02-12/wtmp 2016-02-12 14:47:16 3158 2016-02-12/yum.log 2016-02-12 14:47:16 12812 2016-02-12/yum.log-20160106 使用例④: ファイルサイズを見やすい形式で表示 「ls」コマンドのパラメータ「--human-readable」は、ls コマンドの出力内のファイルサイズを人 間に見やすい形式で表示させます。 下記の例では、バケット「mybucket001」の中に格納されているオブジェクトを再帰的にリスト 表示し、ファイルサイズを見やすく表示しています。 # aws s3 ls mybucket001 --recursive --human-readable 2015-12-18 14:20:50 0 Bytes index.files/ 2015-12-18 14:21:28 314 Bytes index.files/colorschememapping.xml 2015-12-18 14:21:28 396 Bytes index.files/filelist.xml 2015-12-18 14:21:28 1.9 KiB index.files/header.htm 2015-12-18 14:21:28 2.5 KiB index.files/image001.png 2015-12-18 14:21:28 3.9 KiB index.files/image002.png 2015-12-18 14:21:28 295.2 KiB index.files/image003.png 2015-12-18 14:21:28 8.6 KiB index.files/image004.png 2015-12-18 14:21:28 136.1 KiB index.files/preview.wmf 2015-12-18 14:21:28 3.1 KiB index.files/themedata.thmx 2015-12-18 14:20:31 53.5 KiB index.htm
  • 16. Technical Tips on CLOUDIAN HyperStore #3 P.14 Copyright © 2010-2016 Cloudian KK. All rights reserved. 使用例⑤: 総オブジェクト数および総容量のサマリー表示 「ls」コマンドのパラメータ「--summarize」は、コマンドの出力の最後に総オブジェクト数と総容 量を表示させます。 下記の例では、バケット「logs」の下にあるフォルダ「2016-02-12」の中に格納されているオブ ジェクトを再帰的にリスト表示し、最後にサマリーを表示しています。 # aws s3 ls logs/2016-02-12/ --human-readable --summarize 2016-02-12 14:47:15 6.8 KiB boot.log 2016-02-12 14:47:15 0 Bytes btmp 2016-02-12 14:47:15 0 Bytes btmp-20160209 2016-02-12 14:47:16 5.8 KiB cron 2016-02-12 14:47:16 29.3 KiB cron-20151130 2016-02-12 14:47:16 4.5 KiB cron-20160106 2016-02-12 14:47:16 6.6 KiB cron-20160113 2016-02-12 14:47:16 7.8 KiB cron-20160209 2016-02-12 14:47:16 110.9 KiB dmesg 2016-02-12 14:47:15 111.1 KiB dmesg.old 2016-02-12 14:47:15 1.3 KiB grubby 2016-02-12 14:47:15 285.2 KiB lastlog 2016-02-12 14:47:16 588 Bytes maillog 2016-02-12 14:47:15 1.1 KiB maillog-20151130 2016-02-12 14:47:16 588 Bytes maillog-20160106 2016-02-12 14:47:16 588 Bytes maillog-20160113 2016-02-12 14:47:16 1.7 KiB maillog-20160209 2016-02-12 14:47:16 410.4 KiB messages 2016-02-12 14:47:16 832.0 KiB messages-20151130 2016-02-12 14:47:16 390.1 KiB messages-20160106 2016-02-12 14:47:16 391.0 KiB messages-20160113 2016-02-12 14:47:16 1.2 MiB messages-20160209 2016-02-12 14:47:16 3.1 KiB secure 2016-02-12 14:47:16 6.2 KiB secure-20151130 2016-02-12 14:47:16 2.3 KiB secure-20160106 2016-02-12 14:47:16 2.1 KiB secure-20160113 2016-02-12 14:47:15 7.2 KiB secure-20160209 2016-02-12 14:47:16 0 Bytes spooler 2016-02-12 14:47:16 0 Bytes spooler-20151130 2016-02-12 14:47:16 0 Bytes spooler-20160106 2016-02-12 14:47:16 0 Bytes spooler-20160113 2016-02-12 14:47:15 0 Bytes spooler-20160209 2016-02-12 14:47:15 0 Bytes tallylog 2016-02-12 14:47:15 5.6 KiB vmware-install.log 2016-02-12 14:47:15 148.4 KiB vmware-vmsvc.log 2016-02-12 14:47:15 107.2 KiB wtmp 2016-02-12 14:47:16 3.1 KiB yum.log 2016-02-12 14:47:16 12.5 KiB yum.log-20160106 Total Objects: 38 Total Size: 4.0 MiB
  • 17. Technical Tips on CLOUDIAN HyperStore #3 P.15 Copyright © 2010-2016 Cloudian KK. All rights reserved. (2) バケットの新規作成 / aws s3 mb HyperStore 上に、新規にバケットを作成します。 使用例①: aws s3 mb クレデンシャル情報を設定したユーザーが HyperStore 上に、バケットを新規作成します。mb コマンドには、オプションはありません。 # aws s3 mb s3://newbucket1 make_bucket: s3://newbucket1/ (3) バケットの削除 / aws s3 rb HyperStore 上に存在するバケットを削除します。オプション「--force」を付加して実行する ことにより、バケット内にオブジェクトが存在しても、バケット削除前に格納されているオブジェクトを 最初に削除し、バケットを削除します。但し、非バージョニングオブジェクトである必要があり、バー ジョニングされたオブジェクトが存在する場合は「--force」を付加してもエラーになります。 使用例①: aws s3 rb (オブジェクトが何も格納されていない)空のバケットを削除します。 # aws s3 rb s3://newbucket1 remove_bucket: s3://newbucket1/ aws s3 mb <S3Uri> aws s3 rb <S3Uri> [--force] 構 文 構 文
  • 18. Technical Tips on CLOUDIAN HyperStore #3 P.16 Copyright © 2010-2016 Cloudian KK. All rights reserved. 使用例②: aws s3 rb --force 削除対象のバケット内にオブジェクトが存在していても、強制的にバケットを削除します。 # aws s3 rb s3://newbucket1 --force delete: s3://newbucket1/cat/ delete: s3://newbucket1/dog/37725915.jpeg delete: s3://newbucket1/cat/cat00033.jpg delete: s3://newbucket1/cat/cat00044.jpg delete: s3://newbucket1/dog/37726810.jpeg delete: s3://newbucket1/dog/37726675.jpeg delete: s3://newbucket1/dog/ delete: s3://newbucket1/cat/cat00016.jpg delete: s3://newbucket1/dog/37235738_480x349.jpeg delete: s3://newbucket1/cat/cat00020.jpg remove_bucket: s3://newbucket1/ 上記使用例の出力のように、削除対象のバケットを削除する前に、そのバケットに格納されてい るオブジェクトの削除が実行されます。バケット内にバージョニングされたオブジェクトが存在する場 合には、「--force」オプションを付加して実行してもエラーになります。 「--force」オプションを付加していない場合、バケットを削除するにはバケット内にオブジェクトが存 在しない状態である必要があります。 バケット内にオブジェクトが存在する状態で aws s3 rb を実行すると、下図のような BucketNotEmpty 例外が発生します。 # aws s3 rb s3://newbucket1 remove_bucket failed: s3://newbucket1/ A client error (BucketNotEmpty) occurred when calling the DeleteBucket operation: The bucket you tried to delete is not empty. 注 意
  • 19. Technical Tips on CLOUDIAN HyperStore #3 P.17 Copyright © 2010-2016 Cloudian KK. All rights reserved. (4) ローカルファイルまたは HyperStore 上のオブジェクトのコピー / aws s3 cp 「cp」コマンドは、コマンドを実行するホストと HyperStore 間、あるいは HyperStore 上の異 なる場所にファイルをコピーするコマンドです。以下の構文説明にあるように、非常に多くのコマンド オプションが存在するため、ここでは全てのオプションは紹介しません。AWS CLI をインストールして 頂き、”aws s3 cp help”で表示されるヘルプ等で、各オプションの動作を確認してください。 コピー元とコピー先は 「コマンドを実行するホスト → HyperStore」 … 動作的には HyperStore へのアップロード 「HyperStore → コマンドを実行するホスト」 … 動作的には HyperStore からのダウンロード 「HyperStore → HyperStore」 … 動作的には HyperStore 内でのコピー を指定することができます。 aws s3 cp <LocalPath> <S3Uri> | <S3Uri> <LocalPath> | <S3Uri> <S3Uri> [--dryrun] [--quiet] [--include <value>] [--exclude <value>] [--acl <value>] [--follow-symlinks | --no-follow-symlinks] [--no-guess-mime-type] [--sse <value>] [--sse-c <value>] [--sse-c-key <value>] [--sse-kms-key-id <value>] [--sse-c-copy-source <value>] [--sse-c-copy-source-key <value>] [--storage-class <value>] [--grants <value> [<value>...]] [--website-redirect <value>] [--content-type <value>] [--cache-control <value>] [--content-disposition <value>] [--content-encoding <value>] [--content-language <value>] [--expires <value>] [--source-region <value>] [--only-show-errors] [--page-size <value>] [--ignore-glacier-warnings] [--metadata <value>] [--metadata-directive <value>] [--expected-size <value>] [--recursive] 構 文
  • 20. Technical Tips on CLOUDIAN HyperStore #3 P.18 Copyright © 2010-2016 Cloudian KK. All rights reserved. 使用例①: aws s3 cp ファイルをコピーします。 以下の例では、ローカルにあるファイル「cat00462.jpg」を HyperStore 上のバケット 「newbucket2」の中にコピー(アップロード)しています。 # aws s3 cp ./cat00462.jpg s3://newbucket2 upload: ./cat00462.jpg to s3://newbucket2/cat00462.jpg # aws s3 ls s3://newbucket2 2016-02-16 12:10:36 23209 cat00462.jpg ← アップロードされたファイル 以 下 の 例 で は 、 HyperStore 上 の バ ケ ッ ト 「 newbucket2 」 の 中 に あ る フ ァ イ ル 「cat00462.jpg」を、ローカルにコピー(ダウンロード)しています。 # aws s3 cp s3://newbucket2/cat00462.jpg ./ download: s3://newbucket2/cat00462.jpg to ./cat00462.jpg # aws s3 cp s3://newbucket2/cat00462.jpg ./cat1.jpg download: s3://newbucket2/cat00462.jpg to ./cat1.jpg # ls -l 合計 48 -rw-r--r-- 1 root root 23209 2 月 16 12:19 cat00462.jpg ← ダウンロードされたファイル -rw-r--r-- 1 root root 23209 2 月 16 12:19 cat1.jpg ← ダウンロードされたファイル この例のように、「cp」コマンド実行時に、コピー先のファイル名を変更することもできます。
  • 21. Technical Tips on CLOUDIAN HyperStore #3 P.19 Copyright © 2010-2016 Cloudian KK. All rights reserved. 使用例②: aws s3 cp --acl --sse この例ではファイルのコピー時に、ファイルの ACL を設定(--acl)し、サーバーサイド暗号化 (--sse)を行います。 # aws s3 cp ./cat00462.jpg s3://newbucket2 --acl public-read --sse AES256 upload: ./cat00462.jpg to s3://newbucket2/cat00462.jpg コピー(この例では HyperStore にアップロード)されたファイルを、CMC のオブジェクト画面から確 認してみると、ファイル名の先頭に「 」アイコンが表示されており、サーバーサイド暗号化がされてい ることを確認できます。
  • 22. Technical Tips on CLOUDIAN HyperStore #3 P.20 Copyright © 2010-2016 Cloudian KK. All rights reserved. 使用例③: aws s3 cp --recursive ディレクトリ(フォルダ)やファイルを再帰的にコピーします。 # ls -l 合計 8 drwxr-xr-x 2 root root 4096 11 月 10 16:16 cat ← このディレクトリの中のファイルを再帰的にコピー drwxr-xr-x 3 root root 4096 11 月 11 12:17 dog drwxr-xr-x 2 root root 6 11 月 17 16:55 empty # aws s3 cp ./cat s3://newbucket2 --recursive upload: cat/cat00044.jpg to s3://newbucket2/cat00044.jpg upload: cat/cat00079.jpg to s3://newbucket2/cat00079.jpg upload: cat/cat00033.jpg to s3://newbucket2/cat00033.jpg upload: cat/cat00020.jpg to s3://newbucket2/cat00020.jpg upload: cat/cat00016.jpg to s3://newbucket2/cat00016.jpg upload: cat/cat00089.jpg to s3://newbucket2/cat00089.jpg upload: cat/cat00078.jpg to s3://newbucket2/cat00078.jpg upload: cat/cat00080.jpg to s3://newbucket2/cat00080.jpg upload: cat/cat00092.jpg to s3://newbucket2/cat00092.jpg upload: cat/cat00093.jpg to s3://newbucket2/cat00093.jpg upload: cat/cat00049.jpg to s3://newbucket2/cat00049.jpg upload: cat/cat00103.jpg to s3://newbucket2/cat00103.jpg upload: cat/cat00173.jpg to s3://newbucket2/cat00173.jpg upload: cat/cat00095.jpg to s3://newbucket2/cat00095.jpg upload: cat/cat00123.jpg to s3://newbucket2/cat00123.jpg upload: cat/cat00149.jpg to s3://newbucket2/cat00149.jpg upload: cat/cat00338.jpg to s3://newbucket2/cat00338.jpg upload: cat/cat00190.jpg to s3://newbucket2/cat00190.jpg upload: cat/cat00339.jpg to s3://newbucket2/cat00339.jpg upload: cat/cat00185.jpg to s3://newbucket2/cat00185.jpg upload: cat/cat00375.jpg to s3://newbucket2/cat00375.jpg upload: cat/cat00344.jpg to s3://newbucket2/cat00344.jpg upload: cat/cat00370.jpg to s3://newbucket2/cat00370.jpg upload: cat/cat00462.jpg to s3://newbucket2/cat00462.jpg upload: cat/cat00362.jpg to s3://newbucket2/cat00362.jpg upload: cat/cat00634.jpg to s3://newbucket2/cat00634.jpg upload: cat/cat00574.jpg to s3://newbucket2/cat00574.jpg upload: cat/cat00593.jpg to s3://newbucket2/cat00593.jpg upload: cat/cat00720.jpg to s3://newbucket2/cat00720.jpg upload: cat/cat00737.jpg to s3://newbucket2/cat00737.jpg upload: cat/cat00758.jpg to s3://newbucket2/cat00758.jpg
  • 23. Technical Tips on CLOUDIAN HyperStore #3 P.21 Copyright © 2010-2016 Cloudian KK. All rights reserved. 「--acl」や「--sse」オプションと併用し、再帰的にコピーするファイル全てに ACL を設定したり、 サーバーサイド暗号化を行ったりすることもできます。 aws s3 cp ./cat s3://newbucket2 --acl public-read --sse AES256 --recursive
  • 24. Technical Tips on CLOUDIAN HyperStore #3 P.22 Copyright © 2010-2016 Cloudian KK. All rights reserved. 使用例④: aws s3 cp --metadata ファイルのコピー時に、メタデータを付与することもできます。 メタデータは幾つでも付与することができ、オプション「--metadata」のあとに、 KeyName1=string,KeyName2=string あるいは、 {"string": "string" ...} の形式で、メタデータをセットします。 以下の例では「cp」コマンド実行時に、メタデータとして キー データ copy-date 2016-02-16 operator Ryosuke Matsui をセットし、ファイルを HyperStore にコピーしています。 # aws s3 cp ./cat s3://newbucket2 (★改行無しで次行に続く.....) --metadata copy-date="2016-02-16",operator="Ryosuke Matsui" --recursive upload: cat/cat00044.jpg to s3://newbucket2/cat00044.jpg upload: cat/cat00033.jpg to s3://newbucket2/cat00033.jpg upload: cat/cat00079.jpg to s3://newbucket2/cat00079.jpg upload: cat/cat00049.jpg to s3://newbucket2/cat00049.jpg : : (中略) : : upload: cat/cat00720.jpg to s3://newbucket2/cat00720.jpg upload: cat/cat00574.jpg to s3://newbucket2/cat00574.jpg
  • 25. Technical Tips on CLOUDIAN HyperStore #3 P.23 Copyright © 2010-2016 Cloudian KK. All rights reserved. 前頁の「cp」コマンドで付与したメタデータを確認するために、AWS SDK for Python がインス トールされているホストから、Python CLI を使用して確認してみます。 # python3 Python 3.5.1 (default, Jan 29 2016, 16:45:55) [GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import boto3 >>> client = boto3.client('s3', endpoint_url='http://s3-region1.shibuya.local') >>> client.head_object(Bucket='newbucket2', Key='cat00044.jpg') {'ContentLength': 40657, 'Metadata': {'copy-date': '2016-02-16', 'operator': 'Ryosuke Matsui'}, 'AcceptRanges': 'bytes', 'ContentType': 'image/jpeg', 'ResponseMetadata': {'HostId': '', 'RequestId': '11dc4580-6839-141c-a9a5-000c29146750', 'HTTPStatusCode': 200}, 'ETag': '"953de5bd14b0aeaf1d57ac10770fd3d0"', 'LastModified': datetime.datetime(2016, 2, 16, 4, 0, 28, tzinfo=tzutc())} >>> 上記のように、 'Metadata': {'copy-date': '2016-02-16', 'operator': 'Ryosuke Matsui'} が、アップロードしたファイルに付与されています。
  • 26. Technical Tips on CLOUDIAN HyperStore #3 P.24 Copyright © 2010-2016 Cloudian KK. All rights reserved. (5) ローカルファイルまたは HyperStore 上のオブジェクトの移動 / aws s3 mv 「mv」コマンドは、コマンドを実行するホストと HyperStore 間、あるいは HyperStore 上の 異なる場所にファイルを移動するコマンドです。「cp」コマンド同様、非常に多くのコマンドオプション が存在するため、ここでは全てのオプションは紹介しません。「cp」コマンドの解説も、併せて確認し てください。また、AWS CLI をインストールして頂き、”aws s3 cp help”で表示されるヘルプ等 で、各オプションの動作を確認することもできます。 「mv」コマンド実行時に、「--acl」オプションで ACL を設定したり、「--sse」オプションでサーバ ーサイド暗号化を行ったり、移動のタイミングで「--metadata」オプションを使用してメタデータを付 与したりすることができます。また、「cp」コマンド同様、「--recursive」オプションを使用して、デ ィレクトリ(フォルダ)毎、再帰的にファイルを移動させることができます。 aws s3 cp <LocalPath> <S3Uri> | <S3Uri> <LocalPath> | <S3Uri> <S3Uri> [--dryrun] [--quiet] [--include <value>] [--exclude <value>] [--acl <value>] [--follow-symlinks | --no-follow-symlinks] [--no-guess-mime-type] [--sse <value>] [--sse-c <value>] [--sse-c-key <value>] [--sse-kms-key-id <value>] [--sse-c-copy-source <value>] [--sse-c-copy-source-key <value>] [--storage-class <value>] [--grants <value> [<value>...]] [--website-redirect <value>] [--content-type <value>] [--cache-control <value>] [--content-disposition <value>] [--content-encoding <value>] [--content-language <value>] [--expires <value>] [--source-region <value>] [--only-show-errors] [--page-size <value>] [--ignore-glacier-warnings] [--metadata <value>] [--metadata-directive <value>] [--recursive] 構 文
  • 27. Technical Tips on CLOUDIAN HyperStore #3 P.25 Copyright © 2010-2016 Cloudian KK. All rights reserved. 使用例①: aws s3 mv 移動元から移動先に、ファイルを移動します。 以下の例ではローカルにあるファイル「cat00016.jpg」を、HyperStore 上のバケット 「newbucket2」の中に移動しています。 # ls cat00016.jpg cat00078.jpg cat00093.jpg cat00173.jpg cat00344.jpg cat00574.jpg cat00758.jpg cat00020.jpg cat00079.jpg cat00095.jpg cat00185.jpg cat00362.jpg cat00593.jpg cat00033.jpg cat00080.jpg cat00103.jpg cat00190.jpg cat00370.jpg cat00634.jpg cat00044.jpg cat00089.jpg cat00123.jpg cat00338.jpg cat00375.jpg cat00720.jpg cat00049.jpg cat00092.jpg cat00149.jpg cat00339.jpg cat00462.jpg cat00737.jpg # aws s3 mv ./cat00016.jpg s3://newbucket2 move: ./cat00016.jpg to s3://newbucket2/cat00016.jpg このコマンドを実行した結果、ローカルからファイル「cat00016.jpg」は無くなり、HyperStore に移動されました。 【ローカルホスト側】 # ls cat00020.jpg cat00079.jpg cat00095.jpg cat00185.jpg cat00362.jpg cat00593.jpg cat00033.jpg cat00080.jpg cat00103.jpg cat00190.jpg cat00370.jpg cat00634.jpg cat00044.jpg cat00089.jpg cat00123.jpg cat00338.jpg cat00375.jpg cat00720.jpg cat00049.jpg cat00092.jpg cat00149.jpg cat00339.jpg cat00462.jpg cat00737.jpg cat00078.jpg cat00093.jpg cat00173.jpg cat00344.jpg cat00574.jpg cat00758.jpg # ↓ 【HyperStore 側】
  • 28. Technical Tips on CLOUDIAN HyperStore #3 P.26 Copyright © 2010-2016 Cloudian KK. All rights reserved. 使用例②: aws s3 mv --recursive 移動元から移動先に、ディレクトリ(フォルダ)を再帰的に移動します。 以下の例ではローカルにあるファイル「cat00016.jpg」を、HyperStore 上のバケット 「newbucket2」の中に移動しています。 # aws s3 mv ./cat s3://newbucket2 move failed: cat/ to s3://newbucket2/ [Errno 21] Is a directory: '/root/sample- data/work/cat/' ↑ ディレクトリ(フォルダ)を移行元にする場合は、「--recursive」を付けないとエラーになる。 # aws s3 mv ./cat s3://newbucket2 --recursive move: cat/cat00079.jpg to s3://newbucket2/cat00079.jpg move: cat/cat00016.jpg to s3://newbucket2/cat00016.jpg move: cat/cat00044.jpg to s3://newbucket2/cat00044.jpg move: cat/cat00033.jpg to s3://newbucket2/cat00033.jpg move: cat/cat00092.jpg to s3://newbucket2/cat00092.jpg move: cat/cat00049.jpg to s3://newbucket2/cat00049.jpg move: cat/cat00089.jpg to s3://newbucket2/cat00089.jpg move: cat/cat00020.jpg to s3://newbucket2/cat00020.jpg move: cat/cat00078.jpg to s3://newbucket2/cat00078.jpg move: cat/cat00080.jpg to s3://newbucket2/cat00080.jpg ← ディレクトリ内のファイルを move: cat/cat00149.jpg to s3://newbucket2/cat00149.jpg 再帰的に移動 move: cat/cat00103.jpg to s3://newbucket2/cat00103.jpg move: cat/cat00123.jpg to s3://newbucket2/cat00123.jpg move: cat/cat00173.jpg to s3://newbucket2/cat00173.jpg move: cat/cat00339.jpg to s3://newbucket2/cat00339.jpg move: cat/cat00093.jpg to s3://newbucket2/cat00093.jpg move: cat/cat00095.jpg to s3://newbucket2/cat00095.jpg move: cat/cat00190.jpg to s3://newbucket2/cat00190.jpg move: cat/cat00338.jpg to s3://newbucket2/cat00338.jpg move: cat/cat00185.jpg to s3://newbucket2/cat00185.jpg move: cat/cat00344.jpg to s3://newbucket2/cat00344.jpg move: cat/cat00370.jpg to s3://newbucket2/cat00370.jpg move: cat/cat00462.jpg to s3://newbucket2/cat00462.jpg move: cat/cat00362.jpg to s3://newbucket2/cat00362.jpg move: cat/cat00375.jpg to s3://newbucket2/cat00375.jpg move: cat/cat00574.jpg to s3://newbucket2/cat00574.jpg move: cat/cat00634.jpg to s3://newbucket2/cat00634.jpg move: cat/cat00737.jpg to s3://newbucket2/cat00737.jpg move: cat/cat00593.jpg to s3://newbucket2/cat00593.jpg move: cat/cat00720.jpg to s3://newbucket2/cat00720.jpg move: cat/cat00758.jpg to s3://newbucket2/cat00758.jpg
  • 29. Technical Tips on CLOUDIAN HyperStore #3 P.27 Copyright © 2010-2016 Cloudian KK. All rights reserved. 以下の「mv」コマンドを実行すると、上記使用例で HyperStore 上に移動されたファイルが、 ローカルホストの元のディレクトリに移動されます。 # aws s3 mv s3://newbucket2 ./cat --recursive 「mv」コマンドでファイルを移動させる際に、以下のようにファイル名を変更することもできます。 # aws s3 mv ./cat00758.jpg s3://newbucket2/NEKO.jpg move: ./cat00758.jpg to s3://newbucket2/NEKO.jpg # aws s3 ls s3://newbucket2 2016-02-16 14:41:15 108945 NEKO.jpg # aws s3 mv s3://newbucket2/NEKO.jpg ./I-Love-Cat.jpg move: s3://newbucket2/NEKO.jpg to ./I-Love-Cat.jpg # ls -l ./I-Love-Cat.jpg -rw-r--r-- 1 root root 108945 2 月 16 14:41 ./I-Love-Cat.jpg
  • 30. Technical Tips on CLOUDIAN HyperStore #3 P.28 Copyright © 2010-2016 Cloudian KK. All rights reserved. (6) HyperStore 上のオブジェクトの削除 / aws s3 rm 「rm」コマンドは、HyperStore 上のファイル(オブジェクト)を削除するコマンドです。「-- recursive」オプションを使用することにより、ディレクトリ(フォルダ)を コピー元とコピー先は 「コマンドを実行するホスト → HyperStore」 … 動作的には HyperStore へのアップロード 「HyperStore → コマンドを実行するホスト」 … 動作的には HyperStore からのダウンロード 「HyperStore → HyperStore」 … 動作的には HyperStore 内でのコピー を指定することができます。 使用例①: aws s3 rm HyperStore 上の指定したファイルを削除します。 以下の例では、HyperStore 上のバケット「newbucket2」のフォルダ「cat」の中にあるファイ ル「cat00016.jpg」を削除しています。 # aws s3 rm s3://newbucket2/cat/cat00016.jpg delete: s3://newbucket2/cat/cat00016.jpg aws s3 rm <S3Uri> [--dryrun] [--quiet] [--recursive] [--include <value>] [--exclude <value>] [--only-show-errors] [--page-size <value>] 構 文
  • 31. Technical Tips on CLOUDIAN HyperStore #3 P.29 Copyright © 2010-2016 Cloudian KK. All rights reserved. 使用例②: aws s3 rm --recursive HyperStore 上の指定したバケットやフォルダ内のファイルを、再帰的に削除します。 以下の例では、HyperStore 上のバケット「newbucket2」以下に保存されているファイルを 全て、再帰的に削除しています。 # aws s3 rm s3://newbucket2 --recursive delete: s3://newbucket2/cat/cat00020.jpg delete: s3://newbucket2/cat/cat00044.jpg delete: s3://newbucket2/cat/cat00049.jpg delete: s3://newbucket2/cat/cat00078.jpg delete: s3://newbucket2/cat/cat00033.jpg delete: s3://newbucket2/cat/cat00080.jpg delete: s3://newbucket2/cat/cat00092.jpg delete: s3://newbucket2/cat/cat00079.jpg delete: s3://newbucket2/cat/cat00089.jpg delete: s3://newbucket2/cat/cat00093.jpg delete: s3://newbucket2/cat/cat00095.jpg delete: s3://newbucket2/cat/cat00185.jpg delete: s3://newbucket2/cat/cat00344.jpg delete: s3://newbucket2/cat/cat00190.jpg delete: s3://newbucket2/cat/cat00362.jpg delete: s3://newbucket2/cat/cat00123.jpg delete: s3://newbucket2/cat/cat00149.jpg delete: s3://newbucket2/cat/cat00103.jpg delete: s3://newbucket2/cat/cat00339.jpg delete: s3://newbucket2/cat/cat00338.jpg delete: s3://newbucket2/cat/cat00173.jpg delete: s3://newbucket2/dog/dog0003-009.jpg delete: s3://newbucket2/dog/dog0005-009.jpg delete: s3://newbucket2/cat/cat00720.jpg delete: s3://newbucket2/dog/dog0012-018.jpg delete: s3://newbucket2/dog/dog0020-018.jpg delete: s3://newbucket2/dog/dog0156-039.jpg delete: s3://newbucket2/dog/dog0152-051.jpg delete: s3://newbucket2/dog/subdir/37235738_480x349.jpeg delete: s3://newbucket2/dog/dog0149-041.jpg delete: s3://newbucket2/dog/dog0143-002.jpg delete: s3://newbucket2/dog/subdir/37910333_358x636.jpeg delete: s3://newbucket2/dog/subdir/37725915.jpeg delete: s3://newbucket2/dog/subdir/38488349_480x410.jpeg delete: s3://newbucket2/dog/subdir/38850105.gif delete: s3://newbucket2/dog/subdir/38865316_480x400.jpeg delete: s3://newbucket2/dog/subdir/37726810.jpeg delete: s3://newbucket2/dog/subdir/38834471.jpeg
  • 32. Technical Tips on CLOUDIAN HyperStore #3 P.30 Copyright © 2010-2016 Cloudian KK. All rights reserved. (7) ファイル(オブジェクト)やディレクトリの同期 / aws s3 sync 「sync」コマンドは、コマンドを実行するホストと HyperStore 間、あるいは HyperStore 内の 異なる場所にファイルを同期できる便利なコマンドです。以下の構文説明にあるように、非常に多 くのコマンドオプションが存在するため、ここでは全てのオプションは紹介しません。AWS CLI をイン ストールして頂き、”aws s3 sync help”で表示されるヘルプ等で、各オプションの動作を確認し てください。 また、「cp」コマンドのオプションと同じものが多数存在するため、前述の 「(3) ローカルファイルまたは HyperStore 上のオブジェクトのコピー / aws s3 cp」 の説明も参考にしてください。 同期元と同期先は 「コマンドを実行するホスト → HyperStore」 「HyperStore → コマンドを実行するホスト」 「HyperStore → HyperStore」 を指定することができます。 aws s3 sync <LocalPath> <S3Uri> | <S3Uri> <LocalPath> | <S3Uri> <S3Uri> [--dryrun] [--quiet] [--include <value>] [--exclude <value>] [--acl <value>] [--follow-symlinks | --no-follow-symlinks] [--no-guess-mime-type] [--sse <value>] [--sse-c <value>] [--sse-c-key <value>] [--sse-kms-key-id <value>] [--sse-c-copy-source <value>] [--sse-c-copy-source-key <value>] [--storage-class <value>] [--grants <value> [<value>...]] [--website-redirect <value>] [--content-type <value>] [--cache-control <value>] [--content-disposition <value>] [--content-encoding <value>] [--content-language <value>] [--expires <value>] [--source-region <value>] [--only-show-errors] [--page-size <value>] [--ignore-glacier-warnings] [--metadata <value>] [--metadata-directive <value>] [--size-only] [--exact-timestamps] [--delete] 構 文
  • 33. Technical Tips on CLOUDIAN HyperStore #3 P.31 Copyright © 2010-2016 Cloudian KK. All rights reserved. 幾つか簡単な「sync」コマンドの使用例を掲載します。 ファイルが同期されていることが分かりやすいように、AWS CLI Windows-OS 版をインストー ルした PC から「sync」コマンドを実行してみます。 使用例①: aws s3 sync (初期コピー) 「sync」コマンドを実行する Windows PC のフォルダ「C:写真」に保存されている下図データ を、HyperStore 上の既作成バケット「pictures」にコピーします。 ※ 「C:写真」フォルダの中には「犬」と「猫」の2つのサブフォルダがあり、各サブフォルダに 6 つの画像ファイルが 格納されています。
  • 34. Technical Tips on CLOUDIAN HyperStore #3 P.32 Copyright © 2010-2016 Cloudian KK. All rights reserved. カレントフォルダ(C:写真)以下のデータを、再帰的に HyperStore 上のバケット「pictures」 にコピーします。 C:¥写真>aws --endpoint-url="http://s3-region1.shibuya.local" s3 sync ./ s3://pictures/ upload: ..¥写真¥猫¥cat00020.jpg to s3://pictures/猫/cat00020.jpg upload: ..¥写真¥猫¥cat00044.jpg to s3://pictures/猫/cat00044.jpg upload: ..¥写真¥犬¥37910333_358x636.jpeg to s3://pictures/犬/37910333_358x636.jpeg upload: ..¥写真¥犬¥37726810.jpeg to s3://pictures/犬/37726810.jpeg upload: ..¥写真¥犬¥37728436.jpeg to s3://pictures/犬/37728436.jpeg upload: ..¥写真¥猫¥cat00016.jpg to s3://pictures/猫/cat00016.jpg upload: ..¥写真¥犬¥37725915.jpeg to s3://pictures/犬/37725915.jpeg upload: ..¥写真¥犬¥37726675.jpeg to s3://pictures/犬/37726675.jpeg upload: ..¥写真¥犬¥37235738_480x349.jpeg to s3://pictures/犬/37235738_480x349.jpeg upload: ..¥写真¥猫¥cat00033.jpg to s3://pictures/猫/cat00033.jpg upload: ..¥写真¥猫¥cat00049.jpg to s3://pictures/猫/cat00049.jpg upload: ..¥写真¥猫¥cat00078.jpg to s3://pictures/猫/cat00078.jpg
  • 35. Technical Tips on CLOUDIAN HyperStore #3 P.33 Copyright © 2010-2016 Cloudian KK. All rights reserved. CMC のオブジェクト画面から確認してみると、下図のように PC 上の「C:写真」フォルダ以下の データがコピーされています。
  • 36. Technical Tips on CLOUDIAN HyperStore #3 P.34 Copyright © 2010-2016 Cloudian KK. All rights reserved. 使用例②: aws s3 sync (新規に保存されたファイルを同期) 「sync」コマンドを実行する Windows PC のフォルダ「C:写真猫」に、新しい画像ファイルを 3 つ保存し、HyperStore 上の既作成バケット「pictures」と同期させます。 新規に保存した 3 つの画像ファイル
  • 37. Technical Tips on CLOUDIAN HyperStore #3 P.35 Copyright © 2010-2016 Cloudian KK. All rights reserved. 新規の 3 ファイルを保存した後、使用例①と全く同じ「sync」コマンドを実行します。 C:¥写真>aws --endpoint-url="http://s3-region1.shibuya.local" s3 sync ./ s3://pictures/ upload: ..¥写真¥猫¥cat00758.jpg to s3://pictures/猫/cat00758.jpg upload: ..¥写真¥猫¥cat00737.jpg to s3://pictures/猫/cat00737.jpg upload: ..¥写真¥猫¥cat00721.jpg to s3://pictures/猫/cat00721.jpg この使用例の「sync」コマンドは、同期元(コマンドを実行するホスト)に新たに追加されたファイル を、同期先(この場合は HyperStore)にコピーします。
  • 38. Technical Tips on CLOUDIAN HyperStore #3 P.36 Copyright © 2010-2016 Cloudian KK. All rights reserved. 使用例③: aws s3 sync --delete (削除されたファイルを含めて同期) 使用例②の「sync」コマンドは、同期元に新たに追加(保存)されて、まだ同期先にそのファ イルが存在しない場合にコピーを行います。仮に同期元のファイルが削除されていたとしても、同期 先のファイルは削除されません。 同期元のファイルが削除された場合に、同期先からもそのファイルを削除したい場合には、 「sync」コマンドのオプション「--delete」を付加して実行します。 使用例②で新規に保存した 3 ファイルを「C:写真猫」サブフォルダから削除し、新規 2 ファイ ルを保存、既存の 1 ファイルを更新します。 ← この 3 ファイルを削除 ← この 2 ファイルを新規に保存 左(←)の画像から右(→)の画像に更新
  • 39. Technical Tips on CLOUDIAN HyperStore #3 P.37 Copyright © 2010-2016 Cloudian KK. All rights reserved. この状態で「sync」コマンドを、「--delete」オプション付きで実行します。 C:¥写真>aws --endpoint-url="http://s3-region1.shibuya.local" s3 sync ./ s3://pictures/ --delete delete: s3://pictures/猫/cat00737.jpg delete: s3://pictures/猫/cat00721.jpg delete: s3://pictures/猫/cat00758.jpg upload: ..¥写真¥猫¥cat00339.jpg to s3://pictures/猫/cat00339.jpg upload: ..¥写真¥猫¥cat00338.jpg to s3://pictures/猫/cat00338.jpg upload: ..¥写真¥猫¥cat00016.jpg to s3://pictures/猫/cat00016.jpg ローカルで削除した 3 ファイルが HyperStore 上からも削除され、新規に保存した 2 ファイルと 更新された 1 ファイルがアップロードされています。
  • 40. Technical Tips on CLOUDIAN HyperStore #3 P.38 Copyright © 2010-2016 Cloudian KK. All rights reserved. 以下に、CMC のオブジェクト画面から同期先の HyperStore のバケットを確認した画面イメー ジを掲載します。 最終変更日時が変わっているファイル(オブジェクト)が 3 つあり、そのうちの 2 つが新規にアップ ロードされたもの、もう 1 つがファイルに更新のあったものです。 なお、HyperStore 上で確認できる最終変更日時は、HyperStore にそのファイルがアッ プロードされた日時を表わしています。ローカルのファイル作成日時や変更日時では無いことに、 留意してください。
  • 41. Technical Tips on CLOUDIAN HyperStore #3 P.39 Copyright © 2010-2016 Cloudian KK. All rights reserved. 6. おわりに 本書では AWS CLI を使用するための準備・導入方法とその使用方法を説明し、AWS CLI を具体 的にどのように使用するのかを見て頂きました。 AWS CLI はもちろん、Linux/UNIX-OS のシェルや Windows-OS のコマンドスクリプト等に埋め込 んでご使用頂くこともできますので、非常に活用しやすいツールだと思います。 例えば、毎日蓄積されていくログデータや、業務システムで生成された証券証書のイメージ等を長期保 管するために、AWS CLI を含むスクリプトを作成して crontab やジョブスケジューラーに登録し、定期的 に差分データを HyperStore にアップロードさせることも可能です。 様々な用途で、非常に簡単に使用できる AWS CLI ですので、まずは是非一度、貴社の環境でお試 し頂けると幸いです。 著者 松井 良祐 役職 テクニカル プリセールス マネージャー メールアドレス rmatsui@cloudian.com 以上
  • 42. Technical Tips on CLOUDIAN HyperStore #3 ホームページ:http://cloudian.jp/ Facebook:https://www.facebook.com/cloudian.cloudstorage.S3 Twitter:https://twitter.com/Cloudian_KK ブログ:http://www.cloudian-blog.com/ 評価版お申込み:http://www.cloudian.jp/cloud-storage-products/cloudian_eval_agr.php クラウディアン株式会社 THANK YOU ! www.cloudian.jp Cloud Storage for Everyone