はじめに
【宣伝】ここらへんの情報が詳しく掲載されたownCloud本が出版されました!
https://owncloud.jp/contacts/book
以前紹介したownCloudとAmazon S3の連携について、素晴らしい記事がありましたので、本人の同意を得て翻訳させて貰いました。
無制限ストレージ with ownCloud and Amazon S3
自分でコントロールできて無制限・安価・冗長化の高いストレージといったら、Amazon S3でしょう。
オープンソースのプロダクトであるownCloudは、Amazon S3と簡単に接続することができます。
ownCloudは、PCやモバイルデバイスでどこにいても、Web経由で自身のファイルにユニバーサルアクセスできます。
また、Web上での基本的な閲覧・編集や、デバイス間での連絡先、カレンダー、ブックマークを同期するプラットフォームを搭載しています。
そんな魅力的なownCloudをAWS Marketplaceで簡単にインストールすることが可能です。
このインストーラは、株式会社Stylezによってパッケージングされています。
以下の記事では、あなた自身のAWSアカウントでownCloudを設定し、Amazon S3の無制限かつ安価なストレージに接続する方法を紹介します。
前提条件
- AWSのアカウントを取得していること
- EC2のキーペアを取得していること
ownCloudのセットアップ
ownCloud powered by owncloud.jp にアクセスしてください。
(画面はアカウントによって多少の違いがあります)
- Regionを選択します。
- インスタンスタイプを選択します。インスタンスタイプは大きいタイプを選択するほどパフォーマンスが高くなります。ownCloudは無料ですが、EC2は時間ごとに課金されます。価格については、画面右の表を参照してください。動作検証にはFree Tier のt1.microを選択してください。インスタンスタイプは後から変更可能です。
3.サーバにSSH接続が必要な場合は、鍵ペアを選択します。
4.Launch をクリックします。
数分後、インスタンスが起動し、ownCloudがインストールされます。以下のいずれかでownCloudにアクセスするためのURLを確認してください。
- software subscribtions page を確認し、“access software”をクリックします。
- EC2ダッシュボードのインスタンス画面からPUBLIC DNSを確認してください。(上記で選択したReagionであることを確認してください。)
ブラウザにてURLにアクセスすると、以下のownCloudのダッシュボードが表示されます。
- この時点でadminユーザのパスワードが設定されています。再度ログインするためにパスワードを以下の方法で確認しておいてください。(ユーザ管理から新しい管理者ユーザを作成することで以下の作業は不要です。)
1.EC2ダッシュボードのインスタンス画面から対象のインスタンスを[右クリック]->[Instance Settings]->[Get System Log]を選択します。
2.ログウィンドウに表示される[owncloud admin password]の内容が初期パスワードです。
AmazonS3 と ownCloudの連携
ownCloudを起動したので、無制限の安価で信頼性の高いストレージであるAmazon S3 との連携を行います。
S3 bucketの作成
S3コンソールに移動し、「Create bucket」をクリックします。
IAM権限のセットアップ
上記bucketのみにアクセス可能なIAMユーザを作成します。
IAMダッシュボードに移動し、「Create New User」をクリックします。
ダウンロードしたAccess Key IDとSecret Access Keyが記載されているCSVを安全に保管しておいてください。後ほど利用します。
次にユーザの Permissions タブの「Attach User Policy」をクリックし、アクセス権を定義します。
「S3 full access」を選択してください。
このままでは、すべてのS3にアクセス許可が与えられているので、もう少し詳細な設定として、上記で作成したbucketのみアクセス許可を付与するようにしましょう。
次の内容とおりポリシーを変更します。
{
"Statement": [
{
"Action": [
"s3:ListAllMyBuckets"
],
"Effect": "Allow",
"Resource": "arn:aws:s3:::*"
},
{
"Action": "s3:*",
"Effect": "Allow",
"Resource": ["arn:aws:s3:::demo-owncloud","arn:aws:s3:::demo-owncloud/*"]
}
]
}
ownCloudのセットアップ
まずownCloud内左下に「+アプリ」ボタンをクリックし、「External storage support」を有効にします。
その後、管理ページに移動し、「External Storage」セクションにて「ストレージの追加」プルダウンメニューから「Amazon S3」を選択します。
- フォルダ名:任意の名称を設定します。
- Access Key:上記で作成したIAMユーザーのAccess Key IDを入力してください
- Secret Key:上記で作成したIAMユーザーのSecret Access Keyを入力してください
- Bucket:上記で作成したBucket名を入力します(例:demo-owncloud)
- Region:Bucketを作成したRegionを選択します。 例えば、東京では「ap-northeast-1」となります。
- 適用範囲:この機能を公開するユーザーを設定します。
では、ownCloudからS3にドキュメントがアップロードできるか確認します。
上記で完了です。
自身で管理されたownCloudからアップロードしたドキュメントが、安全かつ確実にS3に保存されました。
東京リージョンでは、GBで3.4円という低い価格でトリプルミラーのストレージに保管されることになります。
その他
ownCloudのその他設定や、権限変更については、ownCloudのホームページを確認してください。
日本語フォーラムもあるので活用してください。
更新履歴
- 2015/01/27 v7.0.3 からデプロイ後、adminパスワードが自動付与されるようになったので、adminパスワードの確認方法を追記しました。
- 2016/06/26 Qiitaスライドモードに対応してみました
- 2017/01/04 すみません。ownCloudセキュアストレージ構築ガイドの宣伝を追記しました。