AWS EC2にownCloudをインストールして S3に接続(とりあえず解決編)

前回の記事でEC2にインストールしたownCloud からS3に接続ができなかったので、直接EC2からS3へマウントできないか試したいと思います。

EC2からS3のバケットをファイルシステムとしてマウントできる仕組みの「s3fs」をインストールします。

今回は下記のサイトを参考にしています。
s3fsを使ってEC2からS3をマウントしたときにうまくいかなくて調べた事まとめ | Developers.IO

s3fsのインストール

<span style="line-height: 24px;">$ sudo yum update</span>

$ sudo yum -y install gcc-c++ fuse fuse-devel libcurl-devel libxml2-devel openssl-devel
$ curl -O http://s3fs.googlecode.com/files/s3fs-1.74.tar.gz
$ tar xzf s3fs-1.74.tar.gz
$ cd s3fs-1.74
$ ./configure --prefix=/usr/local
$ make
$ sudo make install
$ find /usr/local -type f
/usr/local/bin/s3fs
/usr/local/share/man/man1/s3fs.1

設定・マウント

まず、アクセスキーとシークレットアクセスキーを設定します。キーを設定する方法は4つあるようですが、今回は/etc/passwd-s3fs にパスワードファイルを作成する方式にします。


$ sudo echo "{Access Key ID}:{Secret Access Key}" | sudo tee -a /etc/passwd-s3fs
$ sudo chmod 640 /etc/passwd-s3fs

{Access Key ID}と{Secret Access Key}は、別途IAMで作成したユーザー情報です。

次に、ownCloud のユーザで共有フォルダを作成しておきます。(ここでは「share」)以下では、share をS3にマウントします。

20140905_s3fs_2

ownCloud からマウントしたS3バケットにアクセスするので、マウントの際 apache ユーザに権限を与えないといけませんので、apacheのuidとgidを調べます。


$ id apache
uid=48(apache) gid=48(apache) groups=48(apache)

apacheに権限を与える形でS3のバケットにマウントします。


$ sudo ls -ld /home/data/{ownCloud User}/files/share
drwxr-xr-x 2 apache apache 4096 Sep 5 11:41 /home/data/{ownCloud User}/files/share
$ sudo /usr/local/bin/s3fs {bucket_name} /home/data/{ownCloud User}/files/share -o rw,allow_other,use_cache=/tmp,uid=48,gid=48
$ sudo ls -ld /home/data/{ownCloud User}/files/share
drwxrwxrwx 1 apache apache 0 Jan 1 1970 /home/data/{ownCloud User}/files/share

{ownCloud User}はownCloudのユーザID、{bucket_name}はEC2からマウントしたいバケット名です。

確認

マウントの確認


$ sudo df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 7.8G 3.4G 4.4G 44% /
devtmpfs 281M 12K 281M 1% /dev
tmpfs 297M 0 297M 0% /dev/shm
s3fs 256T 0 256T 0% /home/data/{ownCloud User}/files/share

マウントされています。(256Tってすごいですね)

ownCloud からファイルをアップロードしてみます。

20140905_s3fs_3

S3のマネジメントコンソールから確認

20140905_s3fs

これで、ownCloudからS3のバケットにアップされていることが確認できました。

ownCloud の管理画面からうなく接続できない原因は解りませんでしたが、とりあえず共有フォルダ固定ですが、容量無制限のストレージサービスを独自ドメインで立てることができました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  • ad