EC2からS3をマウントする備忘録です。
色々方法はあるみたいですが、今回はgoofysを使用します。
S3のバケットを作成
awscliでもできるらしいですが、AWSコンソールからS3に移動しバケットを作成しました。
ブロックパブリックアクセスのバケット設定は「パブリックアクセスをすべてブロック」にしました。
IAMロール作成
EC2からS3にアクセスできるようにIAMロールを作成します。
新規作成、もしくは既存のロールで「AmazonS3FullAccess」ポリシーを付加します。
作成したロールを該当のEC2にアタッチします。
SSH接続して以下を実行する
ルートに切り替え
sudo su -
Go、fuse、gitをインストール
yum install golang fuse git
Goパスを設定
ホームディレクトリにパスを設定しました。
export GOPATH=$HOME/go
goofysをインストール
go get github.com/kahing/goofys
go install github.com/kahing/goofys
マウント用のディレクトリを作成
今回はホームフォルダ配下にしました。
mkdir ~/s3
S3をマウント
$GOPATH/bin/goofys {S3のバケット名} ~/s3
マウント確認
dfコマンドで確認してマウントできていたら完了です。
df -hT
結果
Filesystem Type Size Used Avail Use% Mounted on
devtmpfs devtmpfs 475M 0 475M 0% /dev
tmpfs tmpfs 492M 0 492M 0% /dev/shm
tmpfs tmpfs 492M 408K 492M 1% /run
tmpfs tmpfs 492M 0 492M 0% /sys/fs/cgroup
/dev/xvda1 xfs 8.0G 3.0G 5.1G 37% /
tmpfs tmpfs 99M 0 99M 0% /run/user/0
{S3バケット名} fuse 1.0P 0 1.0P 0% /root/s3