Amazon Linux 2023のCloud9にEFSをマウントしてみた
こんにちは、岩城です。
本日、Cloud9のサポートプラットフォームにAmazon Linux 2023が追加されましたね。
Amazon Linux 2023である必要は特にないのですが、Cloud9にEFSをマウントする機会がありました。
折角なのでAmazon Linux 2023のCloud9で試してみた結果を共有します。
やってみた
本エントリでは以下のリソースを作成します。
- VPC
- 特筆すべき点が無いので省略します
- EFS
- Cloud9
EFS
EFSを作成時にマウントターゲットに設定するセキュリティグループを先に作成しておきます。
Cloud9に割り当てられたセキュリティグループIDをソースとするなど、様々な接続制限方法が考えられますが、本エントリでは単純に同一VPCからのアクセスを許可するように設定します。
事前準備したセキュリティグループをマウントターゲットに指定してEFSを作成します。
作成したEFSのコンソールにあるアタッチ
をクリックします。
すると、以下のようにマウントするためのコマンドが表示されるのでコピーしておきます。
Cloud9
では、Cloud9の環境を作成します。
Cloud9の環境を作成するときのプラットフォームがデフォルトでAmazon Linux 2023
になっていました。
あわせて、コンソール上でAmazon Linux 2023の利用を推奨するレコメンドが表示されていることを確認できました。
Cloud9へ接続し、EFSをマウントしていきます。
EFSのコンソールで確認しておいたmountコマンドを実行します。なお、本エントリでは末尾のマウントポイントをefs
から/mnt/efs
に変更しています。
ここでマウントできない場合、EFSのマウントターゲットのセキュリティグループを見直してください。
$ sudo mkdir -p /mnt/efs $ sudo chown ec2-user:ec2-user /mnt/efs $ cd /mnt $ sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-0e6a367f04534b576.efs.ap-northeast-1.amazonaws.com:/ /mnt/efs $ df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 4.0M 0 4.0M 0% /dev tmpfs 475M 0 475M 0% /dev/shm tmpfs 190M 2.9M 188M 2% /run /dev/xvda1 10G 6.9G 3.1G 70% / tmpfs 475M 0 475M 0% /tmp /dev/xvda128 10M 1.3M 8.7M 13% /boot/efi fs-0e6a367f04534b576.efs.ap-northeast-1.amazonaws.com:/ 8.0E 0 8.0E 0% /mnt/efs tmpfs 95M 0 95M 0% /run/user/1000
つぎに、Cloud9起動時に自動マウントするため、公式ドキュメントを参考にfstabに以下を追記します。
fs-0e6a367f04534b576.efs.ap-northeast-1.amazonaws.com:/ /mnt/efs nfs4 nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport,_netdev 0 0
これで再起動時に自動でマウントされるようになります。
おわりに
EC2のユーザーデータのように、Cloud9の環境作成時にEFSのマウントまでやってしまいたいな、と思いました。
本エントリがどなたかのお役に立てれば幸いです。