0. はじめに
Oracle CloudのIaaSである OCI の Object Storageに S3互換APIがあるので、S3アクセス用ツールでアクセスしてみよう、ということで、CloudBerry Explorer for AWS S3で試してみました。
手順の流れ以下の通りになります。
- OCI Webコンソール上での設定
- rootコンパートメントでObject Storage用のバケットを作成
- ユーザーに対してS3互換API用クレデンシャルを設定
- CloudBerry Explorer for AWS S3の設定
5. ダウンロードとインストール
6. OCI Object Storageへのアクセスを設定
1. OCIコンソール上での設定
1-1 ホームリージョンにログイン
OCIは複数リージョンを使用できますが、今回はホームリージョンにアクセスします。
(マニュアルのS3 Compatible APIの記載ではリージョンを問わないような書き方がされていますが、自分の環境でホームリージョンのus-ashburn-1とuk-london-1で試した限りでは、ホームリージョンである us-ashburn-1でしかうまく動きませんでした。)
1-2 rootコンパートメントでObject Storage用のバケットを作成
オブジェクトを格納する論理コンテナがバケットです。
OCIの場合、バケット名はグローバルに一意である必要はありません。
各テナント名がデフォルトのネームスペースとなっており、同一ネームスペース内ではバケット名は一意の必要があります。しかし、複数のネームスペースではバケット名は重複できます。
バケットはOCI固有のセキュリティ概念である「コンパートメント」に紐づけられ、IAMポリシーでアクセス制御できます。
しかし、AWSにはコンパートメントの概念がないので、AWS S3互換APIで使う場合は、バケットをrootコンパートメント内に作る必要があります。
以下の作成手順では、rootコンパートメントでのオブジェクト作成が可能な、Administratorsグループのユーザーで実行します。(Administratorsグループは、最初に OCIにアクセスしたユーザーに自動設定されます)
バケットの作成手順
1. OCIのWebコンソールに Administratorsグループのユーザーでログインします。
画面表示状況により、左上のリスト表示用ボタンが出てくる場合と、リストメニューが表示される場合があります。
[リスト表示用ボタンが出る表示例]
[リストメニューが表示される例]
2. メニューから、Storage > Object Storageを選択します。
3. rootコンパートメントを選択して、バケットを作成
下図の通り、画面左にある COMPARTMENT指定用のリストでrootコンパートメントを選択後、バケットを作成します。
4. Create Bucketダイアログで、作成するバケットを指定
今回は例として backupという名前のバケットを作成しています。
STORAGE TIERとして、STANDARDかARCHIVEかを選択します。
- STANDARD
- 通常は STANDARDにします。
- ARCHIVE
- ほとんどアクセスしないデータはArchiveにすることで、格納コストを抑えることができます。
1-3 S3互換API用クレデンシャルの設定
AWS S3互換APIを使用する際には、ユーザーのアクセスキーと秘密鍵が必要になります。
それらを作成する手順は以下になります。
設定手順
1. Identity > Users画面にアクセス
2. 実際にバケットにアクセスするユーザーを選んで、ユーザー名をクリックします。
3. 「Amazon S3 Compatibility API Keys」をクリック
4. 「Amazon S3 Compatibility API Keys」画面で「Generate Secret Key」ボタンを押す
5. 「Generate Secret Key」ダイアログで、キー名を指定
この例では CloudBerryとしています。名前を指定したら「Generate Secret Key」ボタンを押します。
6. 生成された秘密鍵を保存
「Copy」をクリックするとコピーができるので、これをメモ帳などに保存します。
7. アクセスキーのOCIDを保存
OCIDというのは、各オブジェクトの一意の識別子です。画面の「Copy」をクリックすると OCIDがコピーされますので、これもメモ帳等に保存します。
2. CloudBerry Exlorerのアクセス設定
2-1 ダウンロードとインストール
CloudBerry Explorer for Amazon S3を以下からダウンロードし、インストールします。
https://www.cloudberrylab.com/explorer/amazon-s3.aspx
私自身が実際に試したのは 5.6(Windows版)です。
2-2 OCI Object Storageへのアクセスを設定
1) CloudBerry Exlorerを起動
2) メニューで File > Add New Acount を選択
3) 「Select Cloud Storage」ダイアログで「S3 Compatible」を選択
4) アクセス情報を設定
-
Display nameには、この例では OCI Object Storageとしています。
-
Service point
- 「<テナント名>.compat.objectstorage.<リージョン名>.oraclecloud.com」の形式で入力
-
Access Key
- OCIコンソールの「Amazon S3 Compatibility API Keys」で作成したアクセスキーの OCIDを設定
-
Secret Key
- 鍵を作成したときに表示された「GENERATED Key」の値を指定
-
Signature Version
- ここには 4を指定(でないとアクセスが失敗)
入力したら「Test Connection」ボタンを押します。「Connection success」が出たら成功です。