1 ゾーンファイルシステムをマウントする
Amazon EFS 1 ゾーンファイルシステムは、ファイルシステムと同じアベイラビリティーゾーンに配置されている 1 つのマウントターゲットのみをサポートします。マウントターゲットは追加できません。このセクションでは、1 ゾーンファイルシステムをマウントする際に考慮すべき事項について説明します。
アベイラビリティーゾーン間のデータ転送料金を回避し、ファイルシステムのマウントターゲットと同じアベイラビリティーゾーンにある Amazon EC2 コンピューティングインスタンスを使用して EFS ファイルシステムにアクセスすることで、パフォーマンスを向上させることができます。
このセクションの手順では、次が必要となります。
EC2 インスタンスに
amazon-efs-utils package
をインストールしました。詳細については、「Amazon EFS クライアントの手動インストール」を参照してください。ファイルシステムにマウントターゲットを作成しました。詳細については、「マウントターゲットの管理」を参照してください。
別のアベイラビリティーゾーンの EC2 で 1 ゾーンファイルシステムをマウントする
別のアベイラビリティーゾーンにある EC2 インスタンスに 1 ゾーンファイルシステムをマウントする場合は、mount helper mount コマンドでファイルシステムのアベイラビリティーゾーン名またはファイルシステムのマウントターゲットの DNS 名を指定する必要があります。
次のコマンドを使用して、ファイルシステムマウントポイントとして使用する efs
というディレクトリを作成します。
sudo mkdir efs
EFS マウントヘルパーを使用してファイルシステムをマウントするには、次のコマンドを使用します。コマンドは、ファイルシステムのアベイラビリティーゾーン名を指定します。
sudo mount -t efs -o az=
availability-zone-name
,tlsfile-system-id
mount-point
/
これは、サンプル値を含むコマンドです。
sudo mount -t efs -o az=us-east-1a,tls fs-abcd1234567890ef efs/
次のコマンドは、ファイルシステムをマウントし、マウントターゲットの DNS 名を指定します。
sudo mount -t efs -o tls
mount-target-dns-name
mount-point
/
これは、マウントターゲット DNS 名の例を含むコマンドです。
sudo mount -t efs -o tls us-east-1a.fs-abcd1234567890ef9.efs.us-east-1.amazonaws.com efs/
EFS マウントヘルパーを使用して、1 ゾーンファイルシステムを別のアベイラビリティーゾーンに自動的にマウントする
別のアベイラビリティーゾーンに配置されている EC2 インスタンスに EFS 1 ゾーンファイルシステムをマウントするために /etc/fstab
を使用する場合は、ファイルシステムのアベイラビリティーゾーン名またはファイルシステムのマウントターゲットの DNS 名を /etc/fstab
エントリに指定する必要があります。
availability-zone-name
.file-system-id
.efs.aws-region
.amazonaws.com:/efs-mount-point
efs defaults,_netdev,noresvport,tls 0 0
us-east-1a.fs-abc123def456a7890.efs.us-east-1.amazonaws.com:/ efs-one-zone efs defaults,_netdev,noresvport,tls 0 0
1 ゾーンファイルシステムを自動的にマウントする
1 ゾーンストレージを使用して EC2 インスタンスを別のアベイラビリティーゾーンにある EFS ファイルシステムをマウントするために /etc/fstab
を使用の場合は、ファイルシステムのアベイラビリティーゾーン名とファイルシステムの DNS 名を /etc/fstab
エントリに指定する必要があります。
availability-zone-name
.file-system-id
.efs.aws-region
.amazonaws.com:/efs-mount-point
nfs4 nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport,_netdev 0 0
us-east-1a.fs-abc123def456a7890.efs.us-east-1.amazonaws.com:/ efs-one-zone nfs4 nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport,_netdev 0 0
/etc/fstab
ファイルの編集方法と、このコマンドで使用される値の詳細については、「EFS ファイルシステムの自動マウント」を参照してください。
1 ゾーンファイルシステムを使用したファイルシステムを他の AWS コンピューティングインスタンスにマウントする
Amazon Elastic Container Service、Amazon Elastic Kubernetes Service、または AWS Lambda で 1 ゾーンファイルシステムを使用する場合は、次の図で示されているように、EFS ファイルシステムが配置されているのと同じアベイラビリティーゾーンを使用するようにサービスを構成する必要があります。詳しくは以下のセクションで説明します。

Amazon Elastic Container サービスからの接続
Amazon ECS ファイルシステムと Amazon EFS ファイルシステムを使用して、コンテナインスタンスのフリート全体でファイルシステムデータを共有して、配置されているインスタンスにかかわらず、タスクが同じ永続的ストレージにアクセスできます。Amazon EFS 1 ゾーンファイルシステムを Amazon ECS で使用するには、タスクを起動するときに、ファイルシステムと同じアベイラビリティーゾーンにあるサブネットのみを選択する必要があります。詳細については、Amazon Elastic Container Service デベロッパーガイドの「Amazon EFS ボリューム」を参照してください。
Amazon Elastic Kubernetes Service からの接続
Amazon EKS から 1 ゾーンファイルシステムをマウントする場合は、Amazon EFS コンテナストレージインターフェイス (CSI) ドライバーを使用することができ、Amazon EFS アクセスポイントをサポートし、Amazon EKS またはセルフマネージド型 Kubernetes クラスター内の複数のポッド間でファイルシステムを共有します。Amazon EFS CSI ドライバーは Fargate スタックにインストールされています。Amazon EFS 1 ゾーンファイルシステムで Amazon EFS CSI ドライバーを使用する場合、ポッドを起動するときに nodeSelector
オプションを使用することができ、ファイルシステムと同じアベイラビリティーゾーン内でスケジュールされるようにします。
AWS Lambda から接続する
Amazon EFS と AWS Lambda を使用して、関数呼び出し間でデータを共有し、大きな参照データファイルを読み取り、関数出力を永続的な共有ストアに書き出します。Lambda は、関数インスタンスを同じアベイラビリティーゾーンとサブネットにある Amazon EFS マウントターゲットに安全に接続します。1 ゾーンファイルシステムで Lambda を使用する場合は、ファイルシステムと同じアベイラビリティーゾーンにあるサブネットへの呼び出しのみを起動するように関数を設定します。