先日のAWS Summit Tokyo 2018 でEFSが7月に東京リージョンに対応されることが発表されました。
発表から丸3年…ようやく日本にもEFSがやってきます。
対応された直後から使えるように、EFSをEC2にマウントする方法について、予復習してみます。
#EFS作成
まずはマネジメントコンソールで既にEFSが対応されているソウルリージョン等に移動し、EFSのページを開きます。
そこから新規でファイルシステムの作成を行います。
最初の設定ページでは、配置するVPCとAZ、セキュリティグループを設定します。
セキュリティグループは、TCP2049番ポートがマウントするEC2から通るように設定する必要があるようです。
タグとパフォーマンスモード、ディスク内容を暗号化するかどうかを設定します。
※パフォーマンスモード:汎用とIOPS特化があり、レイテンシを優先するか、スループットを優先するかで選ぶようです。
#EC2作成
AMIはAmazonLinuxを使って、t2.nanoで作成。
特別な設定はいりません。
※EC2の作成方法の詳細は@0084ken さんの
記事が参考になると思います。
EC2作成時のEBSをマウントする感じで、EFSをマウントできると楽そうですが、今のところでき無さそうです。
#EFSをEC2にマウント
efs用のユーティリティを入れて、対象のファイルシステムを指定してマウントコマンドを実行するだけです。
この時、コマンドがタイムアウトした場合はセキュリティグループを確認してみてください。
(EFSに張っているセキュリティグループで、EC2からのTCP2049番ポートが開いているかどうか)
$sudo yum install -y amazon-efs-utils
$sudo mkdir [マウントしたいディレクトリ]
$sudo mount -t efs [ファイルシステムID]:/ [マウントしたいディレクトリ]
ディスクの残容量を確認してみると、実際にマウントされているのが分かります。
一番下のnfs4タイプのものがEFSで作成したファイルシステムです。
$ df -Th
Filesystem Type Size Used Avail Use% Mounted on
devtmpfs devtmpfs 232M 60K 232M 1% /dev
tmpfs tmpfs 242M 0 242M 0% /dev/shm
/dev/xvda1 ext4 7.8G 1.1G 6.7G 14% /
fs-df2acfbe.efs.ap-northeast-2.amazonaws.com:/ nfs4 8.0E 0 8.0E 0% /home/ec2-user/efs
#まとめ
ファイルシステムの作成自体はマネジメントコンソールをポチポチするだけで出来ますし、
マウントも数行のシェルを叩くだけで簡単に出来ました。
セキュリティグループに穴を空け忘れていて少し詰まってしまいましたが…
一つの試行がかなり簡単に出来るので、
東京リージョン対応に向けて、幾つか試していきたいですね。
#参考
https://dev.classmethod.jp/cloud/aws/amazon-elastic-file-system-is-generally-available/