[Oracle Cloud] CloudBerry Drive を使用して、Object Storage をドライブマウントしてみた

# はじめに

CloudBerry Drive というソフトウェアを使用して、Oracle Cloud Infrastructure(以下OCIと略) の Object Storage を、Windows Server 上に ファイルシステムとしてマウントする方法を検証します。

Object Storage を疑似的に ファイルシステムとしてマウントするため、性能が求められるユースケースでは使用できません。ファイルの読み書きに多少時間が掛かってもよいユースケースで使用するのが良いです。



# 制限事項

CloudBerry Drive と Object Storage が提供する S3 互換 API の組み合わせで、以下の制限事項があることが分かりました

- CloudBerry Drive としてマウント可能なのは、OCI の HomeRegion のみ

Home Region というのは、OCI のアカウントを作成する時に指定する Region です。作成したアカウントで Home Region は変更することは出来ないため、日本のユーザーは基本的には Home Region をTokyo で作成するのが良いと思います。



# OCI Compute Instance 作成

- OS : Windows Server 2016 Standard

で適当に作成します



# Customer Secret Keys 生成

Object Storage を S3 API でアクセスするためには、OCI IAM ユーザー上で、Customer Secret Key を生成する必要があります。Customer Secret Key を生成することで、Access Key と Secret Key が生成されます。この2種類の Key が必要です。

OCI Console の右上のユーザー名を選択して、ユーザーの詳細画面へ移動します。

![1581848373047.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/3cfd70fb-153c-a5a9-c091-c303cfb3411e.png)



Customer Secret Keys のメニューに移動して、Generate Secret Key を押します

![1581848412021.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/d16c3513-94c1-d2f9-fe81-d3ebc45a82bf.png)



適当に NAME を指定して、Generate Secret Key を押します。

- NAME : `s3 compat`

![1581848435665.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/085a1815-d531-27be-0bb3-ed1ad44faabf.png)



Key が表示されます。これは Secret Key です (画像のものは、現在無効化しています)

![1581848454945.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/d9470fc6-e3b0-0fe9-16ad-2b6bf5165ffa.png)



画面を戻すと、Access Key が表示されています。

![1581848491080.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/791a0992-04f9-42b5-d71e-c507e28a80b0.png)



# CloudBerry Drive Install

以下の URL を開いて、インストーラーを Download します。今回は検証目的なので、Free Trial を選びます。

https://www.msp360.com/drive/amazon-s3.aspx

![1581833712527.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/04a3c0df-ce94-9b2e-307a-20d93e79ed64.png)



`CloudBerryDriveSetup_v3.0.1.5_c760034.exe` がダウンロードされます。OCI Compute Instance で作成した Windows Server 上で exe を実行します。

Next

![1581845745753.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/ba2c0199-0dcf-7bca-9fc8-ca2a23332b4b.png)



I Agree

![1581845776535.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/b3365569-3e6e-ba28-adec-4b694faeec0d.png)



Next

![1581845792547.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/e9f10d94-2307-abd6-ac64-8c4af1cbbf0f.png)



Common で Install

![1581845806086.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/c2ec9360-2eff-53ba-7652-09f02d791ee2.png)



Install 中

![1581845825132.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/379f1821-c4c6-8d2b-ce54-abf5d722add8.png)



インストールを押します

![1581845842846.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/ee4c6a9d-f869-b5a4-c193-c7ca3f2096d7.png)



OK

![1581845863906.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/f4b890ef-56bd-5a6f-6e50-002b65613f7f.png)



Finish

![1581845879258.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/5f400570-0774-1ee9-740c-e9bb2dde974e.png)



Email アドレスを入力して、Start Trial を押します

![1581846017953.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/7d952157-b4cc-6246-bd47-dd4bad18742f.png)



はい

![1581846051356.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/4c6b2983-acd0-cb4b-4add-ff4edcc399f0.png)



ブラウザが自動的に立ち上がり、以下のページが表示されます

![1581846088654.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/c966fa7d-4543-7d8d-d29c-a4974a4e749f.png)



タスクバー上で、CloudBerry Drive が稼働しています

![1581846404087.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/ccfe3aa9-6057-8fe6-341b-8153a51ca2d3.png)


Restart してね　って表示されたので、Windows Server の再起動を行います



# Configure Storage Account

タスクバーの CloudBerry Drive から、Options を選択します

![1581848559325.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/ec548d4f-2c10-8915-03cc-f1102442abb8.png)



Storage Accounts から Add を押します

![1581848586838.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/4b0578c9-c0cf-6220-91f5-44dfc67f396e.png)



以下のパラメータを入力します

- Storage Provider : S3 Compatible
- Display Name : 好きな名前をいれる
- Service Point : `https://<namespace>.compat.objectstorage.ap-tokyo-1.oraclecloud.com` **※東京の場合**
- Access key : `0a4826bbe562b3d62e54cd5f61ecf7d99b69b96e`
- Secret key : `6saZKEmohmcYNdVPi1G0Pg1nf0s3Hxqpyt7/JEWaHcM=`
- Signature version : 4



Service Point の書式は、以下のURLに書かれております

https://docs.oracle.com/cd/E97706_01/Content/API/Concepts/apiref.htm

```
https://<namespace>.compat.objectstorage.<region>.oraclecloud.com
```

<img width="197" alt="1581850971462.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/1fa509d8-c787-e0f4-e11e-a6c2d357c950.png">



Test Connection を選択すると以下のように OK 表示されます。Closeで閉じます。

![1582114744331.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/1c65a5a6-5669-fc49-a47c-2e2933c5b15d.png)



OKで、Account の編集画面を閉じます。



# Configure Mapped Drives

Mapped Drives メニューで、Addを押します

![1582115295266.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/ae92635b-2d8e-12bd-2f33-f74344bf2393.png)



volume label : 好きな名前

Path : 参照を押す

![1582115375354.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/622b7cf8-83f8-1628-322a-365812dbadb2.png)



Browser Folder が開かれます。ここで見えているものは、Object Storage のバケット名が見えています

![1582115396178.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/9b00210c-3da0-0f9f-94f7-3600c37b1fa1.png)



OK を押します

![1582115434650.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/b2cde82a-d013-1578-2456-92bd615e942d.png)



はい

![1582115465930.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/8a2c1dfe-7efa-c937-8de3-94054dc1e564.png)



OK

![1582115484447.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/ccab5e02-d781-cc50-02eb-30d0f4f0527a.png)



はい

![1582115501986.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/68122d6e-0dba-46c0-a938-10514104fecd.png)



# マウント確認

Dドライブに、ラベル `obstorage` でマウントされています

![1582115545579.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/31349f1b-2113-ce02-9713-a7d3a5b6443c.png)



ドライブを開いて、`test.txt` を作成してみます

![1582115643493.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/4d6039c8-d32a-03bc-259d-c03f1ad7817b.png)



そのあとに、Object Storage のページをみると、以下のファイルが自動的に生成されています

![1582115669217.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/19ff9050-f874-729a-e09e-c8f2a80cc155.png)



空のディレクトリ `dir1` 作成します

![1582115711389.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/a5644b24-49ee-29db-2603-786f7bc5fbb3.png)



Object Storage では、`dir/` が作成されている

![1582115978186.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/9e0b50db-aa88-c48c-9a31-50288598ab07.png)



dir1 のなかでファイル作成します

![1582116102367.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/e0d1dfad-b9b8-c4ba-708b-b12633d7f1d9.png)



Object Storage で以下のように生成されています

![1582116129297.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104247/cc5442d2-a588-8427-1806-3d016fef10b3.png)





# 付録 : 参照可能な範囲

CloudBerry Drive で参照可能な範囲は、以下の挙動となっていることを確認しました

- Region : OCI アカウントの Home Region のみ
- Home Region 内で参照可能なバケット
  - ユーザーに紐づく IAM Policy の範囲で参照可能。そのユーザーが Administrators グループのように、フル権限を持っていたら、Home Region の全Bucket が参照可能



# 参考URL

https://docs.cloud.oracle.com/ja-jp/iaas/Content/Object/Tasks/s3compatibleapi.htm

https://www.msp360.com/drive/amazon-s3.aspx

[http://blog.comfort-inc.co.jp/2019/10/25/oci%E3%81%AEobjectstrage%E3%81%ABcloudberryexploreforamazons3%E3%81%A7%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%99%E3%82%8B/](http://blog.comfort-inc.co.jp/2019/10/25/ociのobjectstrageにcloudberryexploreforamazons3でアクセスする/)

https://waslleysouza.com.br/2019/01/using-cloudberry-to-access-oci-object-storage/