メモのページ - チラシの裏メモ 3枚目

通信技術や気になった事を黙々とメモし続ける

AWS EC2インスタンスにS3をマウントした際のメモ

AWSのEC2インスタンス(Amazon Linux 2)にS3バケットをマウントする手順のメモ。
 
当方の環境は以下のとおり。
・EC2インスタンス: 1台。t2.micro (amzn2-ami-hvm-2.0.20180622.1-x86_64-gp2)
・S3バケット: 1台。
・IAMロール: hogeとする
・リージョン: ap-northeast-1a

S3バケットに用が有る時だけマウントする為、EC2インスタンス起動時の自動マウントはしない。
s3fsとs3fs-fuse-1.77の導入はGoogleで検索すると多くヒットするので割愛。
 

EC2にS3バケットをマウントする手順
1. S3バケットのマウントポイントの作成。

$ sudo mkdir /mnt/s3

 
2. 上記1.で作成した/mnt/s3のパーミッションの設定。

$ sudo chmod 777 /mnt/s3

 
3. このままだとrootしか使えない為、他のユーザが使えるようfuse.confを修正。
user_allow_otherの頭から#を削除。

$ sudo vi /etc/fuse.conf

# mount_max = 1000
  user_allow_other

 
4. マウントコマンドで必要なuidとgidの値を確認。

id ec2-user
uid=1000(ec2-user) gid=1000(ec2-user) groups=1000(ec2-user),4(adm),10(wheel),190(systemd-journal)

 
5. EC2インスタンスのコンソールのIAMロールの指定。
EC2インスタンスのコンソール画面上側のアクションから「インスタンスの設定」「IAMロールの割り当て/置換」の順に進み、予め作成していたIAMロールを指定し、適用をクリック。
 
6. S3バケットxxxxxxxを/mnt/s3にマウント。IAMロールhogeと上記4.で確認したuidとgidを指定。

$ sudo /usr/local/bin/s3fs xxxxxxx /mnt/s3 -o rw,allow_other,uid=1000,gid=1000,default_acl=public-read,iam_role="hoge"

 
7. df -hを叩き、マウント出来ている事を確認。
最終行にて、s3fsで/mnt/s3がマウントされている事が確認出来た。

$ df
Filesystem      Size      Used       Avail     Use%   Mounted on
devtmpfs        476M         0        476M       0%   /dev
tmpfs           493M         0        493M       0%   /dev/shm
tmpfs           493M      304K        493M       1%   /run
tmpfs           493M         0        493M       0%   /sys/fs/cgroup
/dev/xvda1      8.0G      2.7G        5.4G      34%   /
tmpfs            99M         0         99M       0%   /run/user/1000
s3fs            256T         0        256T       0%   /mnt/s3

 

Amazon S3について
https://aws.amazon.com/jp/s3/ Amazon S3
https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/Welcome.html Amazon S3とは