Amazon EC2を試してみた:(2)S3バケットをマウントする

S3のバケットをファイルシステムとしてマウントするには、s3fs-fuse というツールを使う。今回使ったヴァージョンは最新の 1.77

依存するツールのインストール

まずは依存するツールをインストールする。

[ec2-user@ip-172-31-3-244 ~]$ sudo yum install gcc
[ec2-user@ip-172-31-3-244 ~]$ sudo yum install libstdc++-devel
[ec2-user@ip-172-31-3-244 ~]$ sudo yum install gcc-c++
[ec2-user@ip-172-31-3-244 ~]$ sudo yum install fuse
[ec2-user@ip-172-31-3-244 ~]$ sudo yum install fuse-devel
[ec2-user@ip-172-31-3-244 ~]$ sudo yum install curl-devel
[ec2-user@ip-172-31-3-244 ~]$ sudo yum install libxml2-devel
[ec2-user@ip-172-31-3-244 ~]$ sudo yum install openssl-devel
[ec2-user@ip-172-31-3-244 ~]$ sudo yum install mailcap
[ec2-user@ip-172-31-3-244 ~]$ sudo yum install automake

ダウンロードしてインストール

[ec2-user@ip-172-31-3-244 ~]$ wget https://github.com/s3fs-fuse/s3fs-fuse/archive/v1.77.tar.gz -O s3fs-fuse-v1.77.tar.gz
[ec2-user@ip-172-31-3-244 ~]$ tar xvzf s3fs-fuse-v1.77.tar.gz
[ec2-user@ip-172-31-3-244 ~]$ cd s3fs-fuse-1.77
[ec2-user@ip-172-31-3-244 s3fs-fuse-1.77]$ ./autogen.sh
[ec2-user@ip-172-31-3-244 s3fs-fuse-1.77]$ ./configure --prefix=/usr
[ec2-user@ip-172-31-3-244 s3fs-fuse-1.77]$ make
[ec2-user@ip-172-31-3-244 s3fs-fuse-1.77]$ sudo make install

認証

S3に接続するには認証の必要がある。つまり Access Key ID と Secret Access Key が必要だってこと。方法は4つあるようだけど、今回は /etc/passwd-s3fs ファイルを作る方法にした。

[ec2-user@ip-172-31-3-244 s3fs-fuse-1.77]$ sudo vim /etc/passwd-s3fs
[ec2-user@ip-172-31-3-244 s3fs-fuse-1.77]$ sudo chmod 640 /etc/passwd-s3fs

マウント

[ec2-user@ip-172-31-3-244 ~]$ sudo s3fs lathercraft-storage2 /mnt/lcstorage -o rw,allow_other,default_acl=private

さあ、うまくいってるかな?

[ec2-user@ip-172-31-3-244 ~]$ echo Hello > /mnt/lcstorage/hello.txt
[ec2-user@ip-172-31-3-244 ~]$ ls /mnt/lcstorage
hello.txt
[ec2-user@ip-172-31-3-244 ~]$ df -kh
ファイルシス   サイズ  使用  残り 使用% マウント位置
/dev/xvda1       7.8G  1.3G  6.5G   16% /
devtmpfs         990M   56K  990M    1% /dev
tmpfs           1003M     0 1003M    0% /dev/shm
s3fs             256T     0  256T    0% /mnt/lcstorage

OK、うまくいった。

参考になったページ

 cf. Amazon EC2からS3をファイルシステムとしてマウントする – mooapp
 cf. s3fs を使って EC2 に S3 の Bucket をマウントする – Qiita
 cf. Installation Notes – s3fs-fuse/s3fs-fuse

追記

インスタンスを再起動した時に自動でマウントするには、/etc/fstab ファイルに次の行を追加する。

s3fs#lathercraft-storage2 /mnt/lcstorage fuse rw,allow_other,default_acl=private 0 0

コメントを残す

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください