IBM Cloud ShellでAWS CLIを使ってIBM Cloud Object Storageをアクセスしてみる
9628 ワード
概要
IBM Cloud Shell上で、AWS CLIを使ってIBM Cloud Object Storageにアクセスする手順を記載します。
前提
IBM Cloud Object Storageのサービスインスタンスが作成されていること
手順概要
- IBM Cloud Shellを起動
- IBM Cloud Object Storageのバケットを作成
- AWS CLIをIBM Cloud Shellにインストール
- サービスキーの作成
- AWS CLIからIBM Cloud Object Storageをアクセス
1. IBM Cloudシェルを起動
IBM Cloudのコンソールの右上にあるIBM Cloud Shellのアイコンをクリックして起動します。
2. IBM Cloud Object Storageのバケットを作成
IBM Cloud CLIを使ってバケットを作成します。
サービスインスタンスをリストします
TSOTA@cloudshell:~$ ibmcloud resource service-instances
Retrieving instances with type service_instance in all resource groups in all locations under account ...
OK
Name Location State Type
・・・
Cloud Object Storage-lo global active service_instance
・・・
サービスインスタンスの詳細を確認します(CRNを確認)
TSOTA@cloudshell:~$ ibmcloud resource service-instance "Cloud Object Storage-lo"
Retrieving service instance Cloud Object Storage-lo in all resource groups under account ...
OK
Name: Cloud Object Storage-lo
ID: crn:v1:bluemix:public:cloud-object-storage:global:a/xxx:xxx::
GUID: xxxxx
Location: global
Service Name: cloud-object-storage
Service Plan Name: lite
Resource Group Name: Default
State: active
Type: service_instance
Sub Type:
Created at: 2020-10-13T07:08:17Z
Created by: xxxxxxx
Updated at: 2020-10-13T07:08:17Z
Last Operation:
Status create succeeded
Message Completed create instance operation
CRNを設定
TSOTA@cloudshell:~$ ibmcloud cos config crn
Resource Instance ID CRN: ()> crn:v1:bluemix:public:cloud-object-storage:global:a/xxx:xxx::
Saving new Service Instance ID...
OK
Successfully stored your service instance ID.
バケットを作成(CrossRegionのバケットを作成します)
TSOTA@cloudshell:~$ ibmcloud cos bucket-create --bucket tsota-bucket --region ap
OK
Details about bucket tsota-bucket:
Region: ap
Class: Standard
TSOTA@cloudshell:~$ ibmcloud cos buckets-extended
OK
Found 7 buckets:
Name Location Constraint Creation Date
tsota-bucket ap-standard Dec 08, 2020 at 15:44:36
3. AWS CLIをIBM Cloud Shellにインストール
参考:Linux で AWS CLI バージョン 2 をインストールする
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-cliv2-linux.html#cliv2-linux-install
AWS_CLIをインストール(sudoを実行できないのでホームディレクトリの下に導入します)
TSOTA@cloudshell:~$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
TSOTA@cloudshell:~$ unzip awscliv2.zip
TSOTA@cloudshell:~$ ./aws/install -i ~/aws-cli -b ~/bin
You can now run: /home/TSOTA/bin/aws --version
TSOTA@cloudshell:~$ /home/TSOTA/bin/aws --version
aws-cli/2.1.7 Python/3.7.3 Linux/5.9.8 exe/x86_64.ubuntu.18 prompt/off
4. サービスキーの作成
AWS CLIからアクセスするためのサービスキーを作成します。
HMAC資格情報を付けて作成します。
参考: https://cloud.ibm.com/docs/cloud-object-storage/hmac?topic=cloud-object-storage-hmac
サービスキーを作成します
TSOTA@cloudshell:~$ ibmcloud resource service-key-create tsota-test-key Manager --instance-name "Cloud Object Storage-lo" --parameters '{"HMAC":true}'
Creating service key of service instance Cloud Object Storage-lo under account ...
OK
Service key crn:v1:bluemix:public:cloud-object-storage:global:a/xxx:xxx:resource-key:xxx was created.
Name: tsota-test-key
ID: crn:v1:bluemix:public:cloud-object-storage:global:a/xxx:xxx:resource-key:xxx
Created At: Tue Dec 8 16:13:52 UTC 2020
State: active
Credentials:
apikey: xxx
cos_hmac_keys:
access_key_id: xxx
secret_access_key: xxx
endpoints: https://control.cloud-object-storage.cloud.ibm.com/v2/endpoints
iam_apikey_description: Auto-generated for key xxx
iam_apikey_name: tsota-test-key
iam_role_crn: crn:v1:bluemix:public:iam::::serviceRole:Manager
iam_serviceid_crn: crn:v1:bluemix:public:iam-identity::a/xxx::serviceid:ServiceId-xxx
resource_instance_id: crn:v1:bluemix:public:cloud-object-storage:global:a/xxx:xxx::
5. AWS CLIからIBM Cloud Object Storageをアクセス
前ステップで作成したアクセスキーをセットします。
アクセスキーを設定
TSOTA@cloudshell:~$ bin/aws configure
AWS Access Key ID [None]: xxx
AWS Secret Access Key [None]: xxx
Default region name [None]: ap
Default output format [None]: json
TSOTA@cloudshell:~$
バケットをリスト
TSOTA@cloudshell:~$ bin/aws --endpoint-url https://s3.ap.cloud-object-storage.appdomain.cloud s3 ls
2020-12-08 15:44:36 tsota-bucket
バケットの中を確認
TSOTA@cloudshell:~$ bin/aws --endpoint-url https://s3.ap.cloud-object-storage.appdomain.cloud s3 ls tsota-bucket/
TSOTA@cloudshell:~$
ファイルをアップロード
TSOTA@cloudshell:~$ echo test > test.txt
TSOTA@cloudshell:~$ bin/aws --endpoint-url https://s3.ap.cloud-object-storage.appdomain.cloud s3 cp test.txt s3://tsota-bucket
upload: ./test.txt to s3://tsota-bucket/test.txt
バケットの中を確認
TSOTA@cloudshell:~$ bin/aws --endpoint-url https://s3.ap.cloud-object-storage.appdomain.cloud s3 ls tsota-bucket/
2020-12-08 16:18:55 5 test.txt
TSOTA@cloudshell:~$
Author And Source
この問題について(IBM Cloud ShellでAWS CLIを使ってIBM Cloud Object Storageをアクセスしてみる), 我々は、より多くの情報をここで見つけました https://qiita.com/tsota/items/bd230875b26f663fea99著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .