こんにちは。takada@福岡オフィスです。
幼少の頃、ケーキは高級品でした。一年で、誕生日とクリスマスの2日しか食べることができず、その度ごとに、
「ショートケーキ」か「チョコレートケーキ」か究極の選択を強いられ、毎年2回、苦渋の決断をするのが常でした。この悩みを解決できないのだろうか。子供心に行き場のないやるせなさを感じたものでした。
大人になって、都会に出て、チョコレートケーキの上に苺が乗ったケーキに出会った瞬間、この悩みは解決したのでした。
そう、物事は、意外に簡単に解決することもあります。
たとえば、Windows ServerからS3をマウントしたいという悩みも。そう、CloudBerry Drive Serverならね。
CloudBerry Drive Serverとは
CloudBerry Lab社から提供されているソフトウェアです。このソフトウェアを使うと、AWSのS3の領域をWindows Serverのネットワークドライブやリムーバルドライブとして
マウントすることができます。
インストール方法
- CloudBerry Lab社のホームページ(http://www.cloudberrylab.com/amazon-cloud-storage-online-hard-drive.aspx)からインストーラーをダウンロードできます。今回は、試験的に試したいので、「Download Free Trial」を選択しダウンロードします。(Trial版では、インストールから15日間、全ての機能を試すことができます。)
- 今回使用したサーバのプラットフォームは、Windows 2012R2です。ダウンロードしたインストーラーを適当な場所に配置します。
- インストーラーを起動します。
- 画面に従って、インストールを進めていきます。
- Coose user modeでは、サーバ上のユーザアカウントで共通設定とするかアカウント単位で個別設定するかを選択します。今回は、共通設定にしたいため、"Common"を選択します。
- デバイスソフトウェアの追加確認が表示されるので、"インストール"を選択します。
- インストール完了後に、再起動を促すメッセージボックスが表示されるので、"OK"を押下します。
- インストール完了画面が表示されます。"Finish"を押下します。
- アクティベーション画面が表示されます。Emailアドレスを入力して、"Start Trial"を押下します。
- ブラウザが立ち上がり、15日間全機能が使用できるようになった旨が表示されます。
- OSを再起動します。
設定方法
事前に行っておくべきこと
CloudBerry Drive Serverの設定を行う前に、以下の作業を済ませておきます。
AWS S3バケットの作成
Windowsサーバからマウントする対象のS3バケットを作成します。
IAMアカウントもしくはIAMロールの作成
CloudBerry Drive ServerからS3バケットへアクセスする際に使用する認証情報を作成します。
WindowsサーバがS3の同一AWSアカウント内のEC2であれば、IAMロールを使用したほうが、よりセキュアな構成になると思います。
AWSの外側のWindowsサーバから使用する場合は、IAMアカウントを作成し、アクセスキーとシークレットキーを発行します。今回は、IAMアカウントを使用します。
IAMポリシーの作成
CloudBerry Drive ServerからS3バケットへアクセス権限を定義するIAMポリシーを作成します。
今回は、以下のようなポリシーを作成し、前述のIAMアカウントに付与しました。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1469415652000",
"Effect": "Allow",
"Action": [
"s3:GetBucketLocation",
"s3:ListAllMyBuckets"
],
"Resource": [
"arn:aws:s3:::*"
]
},
{
"Sid": "Stmt1469415786000",
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": [
"arn:aws:s3:::cbtest-bucket",
"arn:aws:s3:::cbtest-bucket/*"
]
}
]
}
CloudBerry Drive Serverの設定
- タスクトレイから、アイコンをクリックし、"Option"を選択すると設定画面が表示されます。
- "Mapped Drives"タブから"Add"を選択します。
- 表示された画面の"Storage Account"を選択し、"<Create a new account>"を選択します。
- "Storage Provider"に"Amazon S3"し、"Display name"に任意の名称を指定します。"Use Access and Secret keys"を選択し、作成したIAMユーザのアクセスキーとシークレットキーを設定し、"OK"を押下します。
- "Storage Account"に作成した前述の"Display name"(今回は、CBTEST01)を選択し、以下を指定します。
Drive letter: Windowsサーバにマウントさせたときのドライブ名を指定します。
Volume label: Windowsサーバにマウントさせたときのボリュームラベルを指定します。
Path: マウントするS3のバケットおよびパスを指定します。(今回は、バケットのみを指定)
その他オプションを必要に応じて指定します。
"Mount as"では、ネットワークドライブとしてマウントするのか、ローカルのリムーバルドライブとしてマウントするのかを選択できます。
ローカルのリムーバルドライブとしてマウントした場合は、擬似NTFSとして振る舞うため、各種権限設定を行うことができ、ファイルサーバ領域としても利用することができます。今回は、"Network Mapped Drive"を選択します。
- "OK"を押下すると、確認のメッセージボックスがでますので、"はい"を押下します。
- 以下のように設定されます。
確認
Windowsのエクスプローラーでみると、以下のようにネットワークドライブとして認識されたDドライブが確認できます。自分自身のホスト名をマウントしているように見えるのが特徴的です。また、Dドライブのプロパティを確認すると、128TBのドライブとして認識されています。(これは、NTFSのストレージ上限に依存する数値でダミーの数値だと思われます。)
まとめ
今回は、CloudBerry Drive Serverを使って、AWSのS3をWindows Serverからマウントする方法をご紹介しました。CloudBerry Driveには、CloudBerry Drive Desktopというクライアントマシン用のソフトも提供されていますので、個人ユースとしても使えそうです。
ちなみに最近私は、ケーキに対する興味が薄くなり、ビールのコクと喉越しと、ハイボールの低プリン体の狭間で、揺れて揺れて悩み中です。はい。どうでもいいですね。それでは。