[EFS]EFSをEC2にマウント(EFS マウントヘルパー使用)

AWSのEFS(Elastic File System)をEC2にEFSマウントヘルパーでマウントします。

1. EFSマウントヘルパーのインストール

「amazon-efs-utils」をインストールします。

パッケージをインストールします。
# dnf install git
# dnf install rpm-build
# dnf install make
# dnf install rust
# dnf install cargo
# dnf install openssl-devel

公式リポジトリをクローンして作業ディレクトリを移動していきます。
# git clone https://github.com/aws/efs-utils

amazon-efs-utilsのRPMパッケージを作成します。
# cd efs-utils
# make rpm

ビルドされたRPMパッケージを確認し、インストールします。
# ls build/amazon-efs-utils*.rpm
# dnf install build/amazon-efs-utils-2.2.1-1.el9.x86_64.rpm
※バージョン番号が異なるときは実際のバージョン番号に読み替えて下さい。

2. EC2にマウント

(1) マウントディレクトリの作成
マウントを行うディレクトリを作成します。
ここでは「/mnt/efs」とします。
# mkdir /mnt/efs

(2) EC2にマウント
[EFS]EFSファイルシステムの作成」の「3. EFSファイルシステムの作成」-「(5) アタッチ」- 「 (a) DNS経由」で表示される「EFS マウントヘルパーの使用:」のmountコマンドをコピーします。

ファイルシステムIDを取得して、DNSからIPアドレスが取得できるかを確認します。
# host (ファイルシステムID).efs.ap-northeast-1.amazonaws.com
(ファイルシステムID).efs.ap-northeast-1.amazonaws.com has address 10.0.1.24
※「IPアドレス」は参考例です。

EC2にコマンドでマウントしてみます。
# mount -t efs -o tls (ファイルシステムID):/ /mnt/efs
※「マウントポイント」は実際の値を使用して下さい。

正常にマウントされたかを確認します。
# df -hT
Filesystem     Type      Size  Used Avail Use% Mounted on
~~~~~(省略)~~~~~
127.0.0.1:/    nfs4      8.0E     0  8.0E   0% /mnt/efs
マウントされていることを確認したら、ファイルの書き込みテストを行います。
# touch /mnt/efs/test.txt
「test.txt」が書き込まれていることを確認します。
# ls -al /mnt/efs/
一旦、アンマウントを行います。
# umount /mnt/efs/

(3) 自動マウント設定
サーバが再起動された際に自動マウントを行う設定をします。
# vi /etc/fstab
(ファイルシステムID):/ /mnt/efs efs defaults,_netdev 0 0
※「マウントポイント」は実際の値を使用して下さい。
# systemctl daemon-reload

マウントを確認します。
# mount -avt efs
/                        : ignored
/boot                    : ignored
/boot/efi                : ignored
/mnt/efs                 : successfully mounted
# df -hT
正常にマウントできていれば、OKです。

(4) 自動マウントが失敗する場合
最終更新:2025年04月10日 07:06