EC2とS3を簡単に触ってみようのコーナーとして、EC2のインスタンスにS3バケットをマウントさせてみようという記事です。本来マウントさせるようなものではないらしいですが公式にマウントさせる機能があったので使ってみました。
S3バケットの作成
デフォルト設定でバケットを作成します。

EC2インスタンスにS3アクセスのIAMロールを付与する
IAMロール作成
S3へアクセスさせる方法で推奨されているのはIAMロールを付与する方法だそうです。(EC2内にアクセスキーを入れる方法もあるとか)


上記画像のようにロールを作成していき、適当な名前をつけて作成してください。
EC2インスタンスにロールを付与する
EC2 コンソールで、対象のインスタンスを選択し、「アクション」→「セキュリティ」→「IAM ロールの変更」から先ほどのロールをアタッチします。


これでロールの付与が完成しました。
EC2インスタンスにMountpoint for Amazon S3をインストール
以下コマンドでインストールができます。EC2のインスタンスのコンソールを開いて実行します。
wget https://s3.amazonaws.com/mountpoint-s3-release/latest/x86_64/mount-s3.rpm
sudo yum install ./mount-s3.rpm
mount-s3 --version
# この出力になればOK
mount-s3 1.3.1
EC2インスタンスにS3をマウントさせる
以下コマンドでマウントさせることができます。管理者権限がいるのでsudoで実行します。
sudo mkdir /mnt/my-s3-bucket
sudo mount-s3 自分のバケット名 /mnt/my-s3-bucket
sudo ls /mnt/my-s3-bucket
リージョンが違うバケットも指定できるそうです。
sudo mount-s3 my-example-bucket /mnt/my-s3-bucket --region ap-northeast-1
動作確認
実際にマウントさせてファイルを作ってみます。ファイル作成後アンマウントさせてS3のダッシュボードを確認してみます。
[root ~]# sudo mount-s3 onishibucket1 /mnt/my-s3-bucket
bucket onishibucket1 is mounted at /mnt/my-s3-bucket
[root ~]# cd /mnt/my-s3-bucket/
[root my-s3-bucket]# ll
total 0
[root my-s3-bucket]# vim s3-mount-test.log
[root my-s3-bucket]# ll
total 5
-rw-r--r--. 1 root root 5 Mar 27 20:45 s3-mount-test.log
-rw-r--r--. 1 root root 4096 Mar 27 20:46 s3-mount.swp
#アンマウント忘れずに
sudo umount /mnt/my-s3-bucket

無事にダッシュボードからでもマウントさせて作成したファイルが見えています。
EC2にS3をマウントさせてみました。通常はEBSなどが主流らしいのでそちらも見てみようかなと思います。