この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
はじめに
こんにちは、AWS事業本部のニシヤマです。はいマスキュラー。
EFSを使ってファイル共有をする際に、EFSファイルシステム直下にフォルダを作ってEC2インスタンスごとにマウントする設定をご紹介します。
イメージ
構成は以下のようになります。
前提
- VPC、EC2が構築済みであること
- EFSが作成済み、EC2からNFSでアクセス可能であること
- EC2がAmazon Linux 2で起動済みであること
- 各EC2にamazon-efs-utilsパッケージがインストール済みであること
やってみた
まずは管理用EC2インスタンスでマウントポイント/mnt/efs/
を作成し、EFSファイルシステムをマウントします。
sudo mkdir /mnt/efs/
sudo mount -t efs -o tls fs-XXXXXXXX:/ /mnt/efs/
以下のような構成でファイルを配置します。
/mnt/efs/
├── Instance-a-folder
│ └── Instance-a.txt
└── Instance-c-folder
└── Instance-c.txt
Instance-aからマウント
Instance-aからInstance-a-folder
をマウントします
$ sudo mkdir /mnt/efs
$ sudo mount -t efs -o tls fs-XXXXXXXX:/Instance-a-folder /mnt/efs
$ tree /mnt/efs
/mnt/efs
└── Instance-a.txt
Instance-a-folderの中身だけが見えます。
Instance-cからマウント
Instance-cからInstance-c-folder
をマウントします
$ sudo mkdir /mnt/efs
$ sudo mount -t efs -o tls fs-XXXXXXXX:/Instance-c-folder /mnt/efs
$ tree /mnt/efs/
/mnt/efs/
└── Instance-c.txt
こちらは、Instance-c-folderの中身だけが見えます。
自動マウント
上記の設定だとOS再起動などした際にフォルダがマウントされないままになってしまいます。OS起動時にEFSをマウントしたい場合は、/etc/fstab
に以下のように追記することで自動マウントできます。
fs-XXXXXXXX:/Instance-a-folder /mnt/efs efs defaults,_netdev 0 0
以上です!
さいごに
EFSを利用してファイルを共有しつつ、EC2インスタンスごとに見せるフォルダを制限する方法でした。このようにEFSファイルシステム上のフォルダをマウントすることでEC2ごとにアクセスできるコンテンツを制御することができます。
以上、この記事がどなたかのお役に立てば幸いです。
最近の格闘技(主にMMA)
今週末は30日にUFC Fight Nightで重量級カードも多く要注目のヘビー級がメインに控えており一瞬も見逃せない試合ですね。日本でも土曜にDEEP、日曜にPANCRACEと重量級カードもありどちらもメインが王座決定戦なので目が離せませんね。どちらも無料で観れるようなので興味ある方はぜひ!