S3 クライアントで接続する
S3 クライアントを使用すると、コードを書かずに、コマンドラインやデスクトップアプリケーションから bucket とファイルを管理できます。大量のデータ転送、スクリプト、Portal の上限である 100 GB を超えるファイルの処理に使用してください。
独自のアプリケーションから FPT Object Storage を呼び出す方法については、SDK リファレンスを参照してください。Windows で S3 Browser を使用する場合は、S3 Browser を使用するを参照してください。
S3CMD
S3CMD は Linux、Unix、macOS 向けのコマンドラインツールで、bucket の作成や、ファイルのアップロード、ダウンロード、整理に使用します。
S3CMD をインストールする
CentOS/RHEL: s3cmd は EPEL リポジトリから入手できます。
sudo yum install -y epel-release
sudo yum install -y s3cmd
Ubuntu/Debian:
sudo apt-get install s3cmd
macOS:
brew install s3cmd
その他の OS については、S3CMD のダウンロードページを参照してください。
S3CMD を設定する
開始する前に、FPT Unify Portal で Access Key、Secret Key、Endpoint、Region を準備してください。詳しくは、Access Key を管理するを参照してください。
-
次のコマンドを実行して、設定ウィザードを開始します。
s3cmd --configure -
プロンプトに従って、次の情報を入力します。
プロンプト 値 Access Key FPT Unify Portal で取得した Access Key。 Secret Key FPT Unify Portal で取得した Secret Key。 Default Region FPT Unify Portal に表示される bucket の Region。 S3 Endpoint FPT Unify Portal で取得した endpoint から https://を除いたもの(例:s3-hcm04.fptcloud.com)。DNS-style bucket+hostname:port template for accessing a bucket virtual-hosted style でアクセスする場合は %(bucket)s.s3-hcm04.fptcloud.com、path-style でアクセスする場合はs3-hcm04.fptcloud.com。Amazon のデフォルト値のままにしないでください。Encryption password 空欄のままにします。 Path to GPG program Enter キーを押して、デフォルト値のままにします。 Use HTTPS protocol Yes。HTTP Proxy server name 空欄のままにします。 注記FPT Object Storage は、virtual-hosted style(
bucket-name.s3-hcm04.fptcloud.com)と path-style(s3-hcm04.fptcloud.com/bucket-name)の両方のアクセス方式をサポートしています。どちらを選択してもかまいません。 -
Test access with supplied credentials? [Y/n] と表示されたら、
Yを入力します。S3CMD が FPT Object Storage に接続し、認証情報が有効かどうかを表示します。 -
Save settings? [y/N] と表示されたら、
yを入力します。S3CMD は設定を~/.s3cfgに保存します。警告デフォルトの回答は
Nです。yを入力せずに Enter キーを押すと、設定は保存されません。
ウィザードを実行する代わりに、~/.s3cfg ファイルを直接作成または編集することもできます。次の例では virtual-hosted style のアクセスを使用しています。
[default]
access_key = YOUR_ACCESS_KEY
secret_key = YOUR_SECRET_KEY
bucket_location = YOUR_REGION
host_base = s3-hcm04.fptcloud.com
host_bucket = %(bucket)s.s3-hcm04.fptcloud.com
use_https = True
signature_v2 = False
path-style でアクセスする場合は、host_bucket に host_base と同じ値を設定します(例: host_bucket = s3-hcm04.fptcloud.com)。
接続を確認する
s3cmd ls
bucket の一覧が表示されれば、S3CMD は FPT Object Storage に接続されています。
Cyberduck
Cyberduck は macOS と Windows 向けの無料のデスクトップアプリケーションで、グラフィカルなインターフェイスからファイルをアップロード、ダウンロード、管理できます。
Cyberduck をインストールする
Cyberduck のダウンロードページからお使いのデバイス用のバージョンをダウンロードし、インストーラーを実行します。
Cyberduck を接続する
- Cyberduck を開き、Open Connection をクリックするか、File → Open Connection を選択します。
- Open Connection ダイアログで、次の情報を入力します。
- Protocol: Amazon S3
- Server:
https://を除いた endpoint(例:s3-hcm04.fptcloud.com) - Port:
443 - Access Key ID: Access Key
- Secret Access Key: Secret Key
- Connect をクリックします。Cyberduck のウィンドウに bucket が表示されます。
AWS CLI
AWS CLI は S3 の公式コマンドラインツールで、Linux、macOS、Windows で動作します。
AWS CLI をインストールする
Linux:
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
Windows: コマンドプロンプトまたは PowerShell で次のコマンドを実行し、インストーラーの指示に従います。
msiexec.exe /i https://awscli.amazonaws.com/AWSCLIV2.msi
macOS やその他のインストール方法については、AWS CLI インストールガイドを参照してください。
AWS CLI を設定する
-
次のコマンドを実行します。
aws configure -
プロンプトに従って、次の情報を入力します。
プロンプト 値 AWS Access Key ID Access Key。 AWS Secret Access Key Secret Key。 Default region name FPT Unify Portal に表示される bucket の Region。 Default output format json -
endpoint を設定します。
aws configureでは endpoint の入力を求められないため、AWS CLI はデフォルトで Amazon S3 にリクエストを送信します。AWS CLI 2.13 以降では、endpoint を一度保存するだけで済みます。aws configure set endpoint_url https://s3-hcm04.fptcloud.comそれより前のバージョンでは、代わりにすべてのコマンドに
--endpoint-url https://s3-hcm04.fptcloud.comを追加してください。
接続を確認する
aws s3 ls
bucket の一覧が表示されれば、AWS CLI は FPT Object Storage に接続されています。endpoint を保存していない場合は、aws s3 ls --endpoint-url https://s3-hcm04.fptcloud.com を実行してください。
WinSCP
WinSCP は Windows 向けの無料アプリケーションで、SFTP、SCP、FTP、Amazon S3 経由でファイルを転送でき、ドラッグ&ドロップにも対応しています。
WinSCP をインストールする
WinSCP のダウンロードページから WinSCP をダウンロードし、インストーラーを実行します。
WinSCP を接続する
- WinSCP を開き、New Session をクリックします。
- Login ウィンドウで、次の情報を入力します。
- File protocol: Amazon S3
- Host name:
https://を除いた endpoint(例:s3-hcm04.fptcloud.com) - Port number:
443 - Access key ID: Access Key
- Secret access key: Secret Key
- Save をクリックしてセッションを保存し、Login をクリックします。WinSCP のウィンドウに bucket が表示され、ファイルをドラッグ&ドロップしてアップロードやダウンロードができます。
s3sync
s3sync はオープンソースのコマンドラインツールで、ローカルフォルダーと bucket の間、または 2 つの bucket の間で、高速な一方向の同期を行います。Linux、macOS、FreeBSD、OpenBSD で動作します。
s3sync をインストールする
s3sync のリリースページからお使いのシステム用のビルドをダウンロードし、アーカイブを展開します。
よく使うオプション
| オプション | 説明 |
|---|---|
--sk, --ss, --se, --sr | 転送元の Access Key、Secret Key、endpoint、Region。 |
--tk, --ts, --te, --tr | 転送先の Access Key、Secret Key、endpoint、Region。 |
-w | 並列ワーカー数。 |
--sync-progress | 同期の進行状況を表示します。 |
--s3-acl | アップロードする object の ACL(private、public-read など)。 |
--disable-http2 | クライアントの HTTP/2 を無効にします。 |
--ratelimit-objects | 1 秒あたりの最大 object 数。 |
--ratelimit-bandwidth | 1 秒あたりの最大帯域幅(バイト単位)。接尾辞 K、M、G を使用できます。 |
転送元が us-east-1 以外の Amazon S3 bucket の場合は、--sr が必須です。
例
YOUR_ACCESS_KEY、YOUR_SECRET_KEY、endpoint、bucket 名、ローカルパスは、実際の値に置き換えてください。
ローカルフォルダーを bucket にアップロードします。
./s3sync --tk YOUR_ACCESS_KEY --ts YOUR_SECRET_KEY --te https://s3-hcm04.fptcloud.com -w 64 fs:///path/to/local/folder/ s3://target-bucket/ --sync-progress --s3-acl private
bucket をローカルフォルダーにダウンロードします。
./s3sync --sk YOUR_ACCESS_KEY --ss YOUR_SECRET_KEY --se https://s3-hcm04.fptcloud.com -w 64 s3://source-bucket/ fs:///path/to/local/folder/ --sync-progress --disable-http2
bucket を別の Region にある bucket にコピーします。
./s3sync --sk YOUR_SOURCE_ACCESS_KEY --ss YOUR_SOURCE_SECRET_KEY --se https://s3-hcm04.fptcloud.com --tk YOUR_TARGET_ACCESS_KEY --ts YOUR_TARGET_SECRET_KEY --te https://s3-hfx03.fptcloud.com -w 64 s3://source-bucket/ s3://target-bucket/ --sync-progress --s3-acl private --disable-http2
Amazon S3 の bucket を FPT Object Storage にコピーします。Amazon S3 を転送元にするために --se を省略し、--sr に転送元 bucket の AWS リージョン(例: ap-southeast-1)を設定します。
./s3sync --sk YOUR_AWS_ACCESS_KEY --ss YOUR_AWS_SECRET_KEY --sr YOUR_AWS_REGION --tk YOUR_FPT_ACCESS_KEY --ts YOUR_FPT_SECRET_KEY --te https://s3-hcm04.fptcloud.com -w 64 s3://aws-source-bucket/ s3://fpt-target-bucket/ --sync-progress --s3-acl private --disable-http2
--s3-acl public-read を指定すると、アップロードしたすべての object をインターネット上の誰でも読み取れるようになります。公開を前提としたデータにのみ使用してください。