別の VPC からの EFS ファイルシステムのマウント - Amazon Elastic File System

別の VPC からの EFS ファイルシステムのマウント

VPC ピアリング接続またはトランジットゲートウェイを使用して VPC に接続する場合、ある VPC 上の Amazon EC2 インスタンスから別の VPC の EFS ファイルシステムにアクセスすることができます。VPC 同士が異なるアカウントに属していても可能です。

前提条件

ここに示す手順を使用する前に、以下を行う必要があります:

  • EFS ファイルシステムをマウントするコンピューティングインスタンス上のユーティリティのセットである amazon-efs-utils の一部である、Amazon EFS クライアントをインストールします。EFS マウントヘルパーを使用します。これは amazon-efs-utils に含まれ、ファイルシステムをマウントします。amazon-efs-utils のインストール手順については、「Amazon EFS クライアントの手動インストール」を参照してください。

  • ec2:DescribeAvailabilityZones に、インスタンスにアタッチした IAM ロールの IAM ポリシー内のアクションを許可します。AWS 管理ポリシーを AmazonElasticFileSystemsUtils IAM エンティティにアタッチして、エンティティに必要なアクセス権限を提供することをお勧めします。

  • 別の AWS アカウント から取り付ける場合は、ファイルシステムリソースポリシーを更新して、他の AWS アカウント のプリンシパル ARN に対するアクション elasticfilesystem:DescribeMountTarget を許可します。例:

    { "Id": "access-point-example03", "Statement": [ { "Sid": "access-point-statement-example03", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::555555555555:root"}, "Action": "elasticfilesystem:DescribeMountTargets", "Resource": "arn:aws:elasticfilesystem:us-east-2:111122223333:file-system/fs-12345678" } ] }

    EFS ファイルシステムリソースポリシーの詳細については、「Amazon EFS 内のリソースベースのポリシー」を参照してください。

  • botocore をインストールしてください。EFS クライアントは、ファイルシステムを別の VPC にマウントするときにファイルシステムの DNS 名を解決できない場合に、ボトコアを使用してマウントターゲット IP アドレスを取得します。詳細については、「amazon-efs-utils README」ファイルの「botocore のインストール」を参照してください。

  • VPC ピアリング接続または VPC トランジットゲートウェイを設定します。

    クライアントの VPC と EFS ファイルシステムの VPC を接続するには、VPC ピアリング接続または VPC トランジットゲートウェイを使用します。VPC ピアリング接続またはトランジットゲートウェイを使用して VPC に接続する場合、ある VPC 上の Amazon EC2 インスタンスから別の VPC の EFS ファイルシステムにアクセスすることができます。VPC 同士が異なるアカウントに属していても可能です。

    トランジットゲートウェイは、VPC とオンプレミスネットワークを相互接続するために使用できるネットワークの中継ハブです。Transit Gateways の詳細については、Amazon VPC Transit Gateways GuideTransit Gatewayで始める を参照してください。

    VPC ピアリング接続は、2 つの VPC 間のネットワーク接続です。このタイプの接続では、インターネットプロトコルバージョン 4 (IPv4) またはインターネットプロトコルバージョン 6 (IPv6) のプライベートアドレスを使用して、2 つの VPC 間でトラフィックをルーティングできます。VPC ピア接続を使用して、同じ AWS リージョン内または AWS リージョン間の VPC を接続できます。VPC ピアリング詳細については、Amazon VPC Peering Guideの「VPC ピアリングとは」を参照してください。

ファイルシステムの高可用性を確保するために、NFS クライアントと同じアベイラビリティーゾーン (AZ) にある EFS マウントターゲットの IP アドレスを常に使用することをお勧めします。別のアカウントにある EFS ファイルシステムをマウントする場合は、NFS クライアントと EFS マウントターゲットが同じ アベイラビリティーゾーン ID にあることを確認します。この要件が適用されるのは、AZ 名がアカウントによって異なる可能性があるためです。

IAM またはアクセスポイントを使用して EFS ファイルシステムを別の VPC にマウントするには
  1. EC2 インスタンスに接続します。詳細については、「Amazon EC2 ユーザーガイド」の「EC2 インスタンスに接続する」を参照してください。

  2. 次のコマンドを使用して、ファイルシステムをマウントするためのディレクトリを作成します。

    $ sudo mkdir /mnt/efs
  3. IAM 認可を使用してファイルシステムをマウントするには、次のコマンドを使用します:

    $ sudo mount -t efs -o tls,iam file-system-dns-name /mnt/efs/

    EFS を使用した IAM 認可の詳細については、「IAM を使用してファイルシステムのデータアクセスを制御する」を参照してください。

    EFS アクセスポイントを使用してファイルシステムをマウントするには、次のコマンドを使用します:

    $ sudo mount -t efs -o tls,accesspoint=access-point-id file-system-dns-name /mnt/efs/

    EFS アクセスポイントの詳細については、「Amazon EFS アクセスポイントの使用」を参照してください。

別の AWS リージョンからの EFS ファイルシステムのマウント

ファイルシステムとは別のVPCからEFSファイルシステムをマウントする場合は、ファイルを編集する必要があります。/dist/efs-utils.conf で、次の行を見つけます。

#region = us-east-1

行のコメントを解除し、us-east-1 にない場合、ファイルシステムが配置されているリージョンのIDの値を置換します。