Wasabi で AWS CLI を使用する方法
Wasabi では、AWS CLI (コマンドラインインターフェイス) ツールの使用に対して認証を行っています。Wasabi で AWS CLI を使用するには、以下の設定方法を参考にしてください。この記事では awscli ツールがすでにインストールされていることを前提としています。インストール方法は https://aws.amazon.com/cli/ を参照してください。
この例では、Wasabi の us-east-1 ストレージリージョンの使用について説明しています。他の Wasabi ストレージリージョンを利用する場合は、この記事に記載されている Wasabi サービスの URL を適宜使用してください。
コマンドで awscli を設定するconfigure
CLI で Wasabi のバケットにアクセスするには
コマンドを使用します。 configure
以下を入力する
$ aws configure
入力すると、一連のプロンプトが表示されます。アクセスキーとシークレットアクセスキーを入力する箇所に Wasabi のアクセスキーを入力し、シークレットキーも同様に入力します。リージョンには「us-east-1」と入力します。最後の設定は空白のままとします。
注 : 以下のオプション2または3を実行する場合は、作成後に [wasabi] プロファイルを設定する必要があります。
設定は以下を入力して行います。
$ aws configure --profile wasabi
Wasabi で AWS CLI を使用
Wasabi で CLI を使用するには、設定が少ないものから多いものまで3つの方法があります。
オプション1. すべてのコマンドの後に
サブコマンドを追加する --endpoint-url
CLI で作成するすべてのコマンドの後に以下を追加します (こちらに従い、適切なサービス URL を使用します。s3.wasabisys.com とは異なる場合があります)。
$
--endpoint-url=https://s3.wasabisys.com
例 :
この cli 内でバケットをリストアップする場合は以下のように入力できます。
$
aws s3 ls --endpoint-url=https://s3.wasabisys.com
eu-central-1 リージョンにバケットを新規作成する場合は以下のようになります。
$
aws s3 mb s3://newbucketnamehere --endpoint-url=https://s3.eu-central-1.wasabisys.com
us-central-1 リージョンにオブジェクトロックを有効化したバケットを新規作成する場合は以下のように入力します。
$ aws s3api create-bucket --bucket yournewbucketnamehere --object-lock-enabled-for-bucket --endpoint-url=https://s3.us-central-1.wasabisys.com
画面上に以下のように表示されます。
aws s3api create-bucket --bucket yournewbucketnamehere --object-lock-enabled-for-bucket --endpoint-url=https://s3.us-central-1.wasabisys.com
{
"Location": "/yournewbucketnamehere"
}
オプション2.
プラグインを使用する awscli-plugin-endpoint
awscli-plugin-endpoint プラグインを使用すると、Wasabi などのサードパーティ S3 プロバイダーへのアクセスがしやすくなります。
このプラグインの使用には、デフォルトのプロファイルに加え、追加のプロファイルの作成が必要となります。
config
ファイルを .aws
で開きます。config ファイルの最後に以下のようなプロファイルの行を追加します。
[profile wasabi]
その後、ファイルを保存します。
プロファイルを作成したら、以下のプラグインの git hubページに記載されている手順に従います。
https://github.com/wbinglee/awscli-plugin-endpoint
これにより、すべてのコマンドの後に完全な URL ではなく --profile wasabi
を使えるようになります。
例 :
この cli 内でバケットをリストアップする場合は以下のように入力できます。
$
aws s3 ls --profile wasabi
オプション3.
を export AWS_PROFILE
と併用するawscli-plugin-endpoint
オプション2を設定したら、セッションの最初にデフォルトで aws cli を新しいプロファイルにポイントできるようになります。AWS が提供する以下の手順に従います。
Linux、macOS、Unix の場合
$ export AWS_PROFILE=wasabi
Windows の場合
> set AWS_PROFILE=wasabi
環境変数を設定すると、シェルセッションの終了または変数に別の値を設定するまでデフォルトのプロファイルが変更されます。
例 :
この cli 内でバケットをリストアップする場合は以下のように入力できます。
$
aws s3 ls
クラウド間の移行シナリオに AWS CLI を使用する :
AWS CLI をインストールし、AWS アクセスキーとシークレットキーを使って設定します。手順はこちらで確認できます。
Wasabi キーを使って Wasabi アカウントに追加の AWS CLI プロファイルを設定します。こちらの記事を参照してください。
以下のコマンドを実行して、AWS バケットからすべてのファイルをローカルディレクトリに転送します。
aws s3 cp s3://<source_bucket>/ <local_directory> --recursive
その後、すべてのファイルをローカルディレクトリから Wasabi の宛先バケットに転送します。
aws s3 cp <local_directory>/ s3://<destination_bucket>/ --recursive --profile wasabi
_____________________________________________________________________________________________________
AWS CLI に関するナレッジベースの関連記事(英語)
1. AWS CLI Credentials & Config チェーンの仕組みは?
3. AWS CLI を使用している Wasabi へのアクセスを MFA 認証するにはどうすればよいですか?
6. 失敗したマルチパートアップロードをクリーンアップするにはどうすればよいですか?
8. Wasabi で一時的アクセス用の署名付き URL を生成する方法は?
9. バケット内のすべてのファイルのすべてのバージョンをダウンロードする方法
10. バケット内の現行と旧バージョンのオブジェクトを一括削除する方法
11. Wasabi にファイルをアップロードするための署名付きURLの使用方法