1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Amazon EFS を EC2 インスタンスにマウントする手順のメモ

Last updated at Posted at 2022-02-27

はじめに

掲題通り。 よく忘れて、都度検索してしまうのでメモ。
Amazon Linux 2 での動作させることを想定。

準備 (EFS以外のリソース)

  • EFS を作成する VPC で「DNS解決の有効化」および「DNSホスト名を有効化」しておく
    • ウィザードなどに頼らずにVPCを作成した場合、デフォルトでDNSホスト名が無効になっているため注意
    • 単にDNSホスト名を有効化しただけだと、なぜか反映されない時があったが、その時は改めて「DNS解決」および「DNSホスト名」を無効化⇒有効化したら反映された
  • EFS へのアクセス元からの TCP: 2049 インバウンドアクセスを許可するセキュリティグループを作成しておく
    • ここでは名前を efs とする。

EFS の作成

Management Console から利用するVPCを選んで作成していく。
この時、EFSのマウントターゲットを指定する際、先の手順で作成したセキュリティグループ efs を指定してアクセスを許可する。
EFSのマウントターゲットのsubnetを指定するが、Q. 作成時のsubnet指定は、EFSをマウントするEC2インスタンスが所属しているsubnetを選択すればよいですか? の回答によれば、基本はメインで利用するインスタンスから近いサブネットを指定する のが良いようだ。 ただし、もちろん別のサブネットであっても、アクセスの条件を満たしていればアクセスは可能。

準備

amazon-efs-utils をインストール。

$ sudo yum -y install amazon-efs-utils

起動時にEFSをマウントするようにする

サーバー上のマウントポイントに sudo mkdir -p /mnt/efs で空ディレクトリを作成。 その後 /etc/fstab に以下を追加。

# フォーマット
<EFSのファイルシステムID>.efs.<リージョン>.amazonaws.com:<EFSのマウントポイント> <ローカルのマウントポイント> efs tls,noresvport,_netdev 0 0

# 具体例: EFSの / をローカルの /mnt/efs にマウントする
# fs-0123456789abcdef.efs.ap-northeast-1.amazonaws.com:/ /mnt/efs efs tls,noresvport,_netdev 0 0

AWSマウントヘルパに記載のある -o tls に対応する部分がここ。 実際には IAM 認証の場合は暗号化設定が必要なので、この場合に利用する方法が紹介されている

2023/09/20 追記

暗号化前提でよいと思うので defaults を tls に変更。 また、自動的再マウントオプションがない場合に AWS Health Dashboard に警告が届いたので、再マウントオプション noresvport を追加。

参考

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?