ウォークスルー: AWS Direct Connect と VPN を使用してオンプレミスでファイルシステムを作成してマウントする - Amazon Elastic File System

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ウォークスルー: AWS Direct Connect と VPN を使用してオンプレミスでファイルシステムを作成してマウントする

このチュートリアルでは AWS Management Console 、 を使用して、オンプレミスクライアントにファイルシステムを作成してマウントします。これを行うには、 AWS Direct Connect 接続または () 上の AWS Virtual Private Network 接続を使用しますAWS VPN。

注記

Microsoft Windows ベースのクライアントでの Amazon EFS; の使用はサポートされていません。

このチュートリアルでは、 AWS Direct Connect または VPN 接続が既にあることを前提としています。接続がない場合は今すぐ接続プロセスを開始し、接続が確立されてからこのウォークスルーに戻ってください。の詳細については AWS Direct Connect、「 AWS Direct Connect ユーザーガイド」を参照してください。VPN 接続の設定の詳細については、「Amazon VPC ユーザーガイド」の「VPN 接続」を参照してください。

AWS Direct Connect または VPN 接続がある場合は、Amazon VPC に Amazon EFS ファイルシステムとマウントターゲットを作成します。その後、 amazon-efs-utils ツールをダウンロードしてインストールします。次に、オンプレミスクライアントからファイルシステムをテストします。最後に、ウォークスルーの最後のクリーンアップのステップでは、これらのリソースを削除するための情報が提供されます。

このチュートリアルにより、 リージョン () にこれらのリソースがすべて作成されます。どちら AWS リージョン を使用する場合でも、常に使用してください。VPC、マウントターゲット、Amazon EFS ファイルシステムなどのすべてのリソースは、次の図に示すように AWS リージョン、同じ にある必要があります。

オンプレミスクライアントから EFS ファイルシステムをマウント AWS Direct Connect するときに Amazon EFS が とどのように連携するかを示す図。
注記

場合によっては、ローカルアプリケーションが EFS ファイルシステムが使用可能かどうかを知る必要があります。このような場合、最初のマウントポイントを一時的に使用できなくなった場合、アプリケーションは別のマウントポイントの IP アドレスを指すことができます。このシナリオでは、可用性を高めるために、2 つのオンプレミスクライアントを異なるアベイラビリティーゾーン (AZ) を介してファイルシステムに接続することをお勧めします。

開始する前に

のルート認証情報を使用してコンソール AWS アカウント にサインインし、この演習を試すことができます。ただし、 AWS Identity and Access Management (IAM) のベストプラクティスでは、 のルート認証情報を使用しないことをお勧めします AWS アカウント。代わりに、アカウントに管理者ユーザーを作成し、それらの認証情報を使用してアカウントのリソースを管理します。詳細については、「 ユーザーガイド」の「IAM Identity Center ユーザーに AWS アカウント アクセス権を割り当てるAWS IAM Identity Center 」を参照してください。

アカウントで作成したデフォルトの VPC またはカスタム VPC を使用できます。このウォークスルーでは、デフォルトの VPC 設定が機能します。ただし、カスタム VPC を使用する場合は、次の点を確認してください。

  • インターネットゲートウェイが VPC にアタッチされています。詳細については、Amazon VPC ユーザーガイドインターネットゲートウェイを参照してください。

  • VPC ルートテーブルには、インターネット経由のすべてのトラフィックをインターネットゲートウェイに送信するルールが含まれています。

ステップ 1: Amazon Elastic File System リソースを作成する

このステップでは、Amazon EFS; ファイルシステムおよびマウントターゲットを作成します。

Amazon EFS ; ファイルシステムを作成するには
  1. Amazon EFS コンソール {1>https://console.aws.amazon.com/efs<1} を開きます。

  2. [ファイルシステムの作成] を選択します。

  3. [VPC] リストからデフォルトの VPC を選択します。

  4. すべてのアベイラビリティーゾーンのチェックボックスをオンにします。それらがすべてデフォルトのサブネット、自動 IP アドレス、および選択済みのデフォルトのセキュリティグループを持っていることを確認します。これらが、マウントターゲットです。詳細については、「マウントターゲットの管理」を参照してください。

  5. Next Step(次のステップ)] をクリックします。

  6. ファイルシステムに名前を付け、デフォルトのパフォーマンスモードとして [general purpose (汎用)] を選択したまま [Next Step (次のステップ)] を選択します。

  7. [ファイルシステムの作成] を選択します。

  8. リストからファイルシステムを選択し、[Security group (セキュリティグループ)] 値を書き留めます。この値は次のステップで必要になります。

作成したファイルシステムにはマウントターゲットがあります。各マウントターゲットには、関連するセキュリティグループがあります。セキュリティグループは、ネットワークトラフィックを制御する仮想ファイアウォールとして機能します。マウントターゲットの作成時にセキュリティグループを指定しなかった場合、Amazon EFSはVPCのデフォルトのセキュリティグループをそれに関連付けます。上記のステップに正確に従った場合、マウントターゲットはデフォルトのセキュリティグループを使用します。

次に、マウントターゲットのセキュリティグループにルールを追加して、ネットワークファイルシステム (NFS) ポート (2049) へのインバウンドトラフィックを許可します。を使用して AWS Management Console 、VPC 内のマウントターゲットのセキュリティグループにルールを追加できます。

NFS ポートへのインバウンドトラフィックを許可するには
  1. にサインイン AWS Management Console し、https://console.aws.amazon.com/ec2/ で Amazon EC2 コンソールを開きます。

  2. [NETWORK & SECURITY (ネットワークとセキュリティ)] で、[Security Groups (セキュリティグループ)] を選択します。

  3. ファイルシステムに関連付けられているセキュリティグループを選択します。ステップ 1: Amazon Elastic File System リソースを作成する の最後にこれを書き留めました。

  4. セキュリティグループのリストの下に表示されるタブ付きペインで、[Inbound (インバウンド)] タブを選択します。

  5. [編集] を選択します。

  6. [Add Rule (ルールの追加)] を選択し、以下のタイプのルールを選択します。

    • タイプ – [NFS]

    • ソース – [Anywhere (任意の場所)]

    テストには [Anywhere (任意の場所)] ソースのみを使用することをお勧めします。オンプレミスクライアントの IP アドレスに設定されたカスタムソースを作成するか、クライアント自体のコンソールを使用して [My IP (マイ IP)] を選択するかを選ぶことができます。

    注記

    アウトバウンドルールを追加する必要はありません。これは、デフォルトのアウトバウンドルールですべてのトラフィックを残すことができるためです。このデフォルトのアウトバウンドルールがない場合は、アウトバウンドルールを追加して NFS ポート上の TCP 接続を開き、マウントターゲットのセキュリティグループを送信先として識別します。

ステップ 2: NFS クライアントをインストールする

このステップでは、NFS クライアントをインストールします。

オンプレミスサーバーに NFS クライアントをインストール
注記

転送中のデータを暗号化する必要がある場合は、NFS クライアントの代わりに Amazon EFS マウントヘルパー amazon-efs-utils を使用します。のインストールの詳細については amazon-efs-utils、「オプション: 転送中のデータの暗号化」セクションを参照してください。

  1. オンプレミスクライアントのターミナルにアクセスします。

  2. NFS をインストールします。

    Red Hat Linux を使用している場合は、次のコマンドを使用して NFS をインストールします。

    $ sudo yum -y install nfs-utils

    Ubuntu を使用している場合は、次のコマンドを使用して NFS をインストールします。

    $ sudo apt-get -y install nfs-common

ステップ 3: オンプレミスクライアント Amazon EFS; ファイルシステムをマウントする

マウントのディレクトリを作成するには
  1. 次のコマンドを使用して、マウントポイントのディレクトリを作成します。

    mkdir ~/efs
  2. アベイラビリティーゾーンで、目的のマウントターゲットの IP アドレスを選択します。オンプレミス Linux クライアントからレイテンシーを測定できます。これを行うには、異なるアベイラビリティーゾーンの EC2 インスタンスの IP アドレスに対して ping のようなターミナルベースのツールを実行して、レイテンシーが最も短いものを探します。

  • mount コマンドを実行して、マウントターゲットの IP アドレスを使用してファイルシステムをマウントします。

    $ sudo mount -t nfs -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport mount-target-IP:/ ~/efs

Amazon EFSファイルシステムをマウントしたので、次の手順でテストできます。

Amazon EFSファイルシステム接続をテストするには
  1. ディレクトリを、次のコマンドで、作成した新しいディレクトリに変更します。

    $ cd ~/efs
  2. サブディレクトリを作成し、そのサブディレクトリの所有権を EC2 インスタンスユーザーに変更します。次に、以下のコマンドを使用して、その新しいディレクトリに移動します。

    $ sudo mkdir getting-started $ sudo chown ec2-user getting-started $ cd getting-started
  3. 次のコマンドを使用してテキストファイルを作成します。

    $ touch test-file.txt
  4. 次のコマンドを使用して、ディレクトリの内容を一覧表示します。

    $ ls -al

その結果、次のファイルが作成されます。

-rw-rw-r-- 1 username username 0 Nov 15 15:32 test-file.txt

/etc/fstab ファイルにエントリを追加することで、自動的にファイルシステムをマウントすることもできます。詳細については、「Amazon EFS ファイルシステムの自動マウント」を参照してください。

警告

ファイルシステムを自動的にマウントする場合、ネットワークファイルシステムを識別するために使用された _netdev オプションを使用します。_netdev が見つからない場合、EC2 インスタンスはレスポンスを停止する可能性があります。この結果は、コンピューティングインスタンスがネットワークを開始後、ネットワークファイルシステムを初期化する必要があるためです。詳細については、「自動マウントが失敗してインスタンスがレスポンスしない」を参照してください。

ステップ 4: リソースをクリーンアップし、 AWS アカウントを保護する

このウォークスルーが完了したら、またはウォークスルーを調べない場合は、以下の手順に従ってリソースをクリーンアップし、 AWS アカウントを保護する必要があります。

リソースをクリーンアップして を保護するには AWS アカウント
  1. Amazon EFSを開始するための3番目の最後のステップ。

    $ sudo umount ~/efs
  2. Amazon EFS コンソールhttps://console.aws.amazon.com/efsを開きます。

  3. ファイルシステムのリストから削除する Amazon EFSファイルシステムを選択します。

  4. [Actions (アクション)] で、[Delete file system(ファイルシステムの削除)] を選択します。

  5. [ファイルシステムの完全削除]ダイアログボックスで、削除するAmazon EFSファイルシステムのファイルシステムIDを入力し、[ファイルシステムの削除]を選択します。

  6. Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/) を開きます。

  7. ナビゲーションペインで、[Security Groups] を選択します。

  8. このウォークスルーのルールを追加したセキュリティグループの名前を選択します。

    警告

    VPC のデフォルトのセキュリティグループを削除しないでください。

  9. [アクション] メニューで、[Edit inbound rules] (インバウンドルールの編集) を選択します。

  10. 追加したインバウンドルールの最後に [X] を選択し、[Save (保存)] を選択します。

オプション: 転送中のデータの暗号化

転送中のデータを暗号化するには amazon-efs-utils、NFS クライアントの代わりに Amazon EFS マウントヘルパーを使用します。

amazon-efs-utils パッケージは、Amazon EFS ツールのオープンソースコレクションです。この amazon-efs-utils コレクションには、Amazon EFS の転送中のデータの暗号化を容易にするマウントヘルパーとツールが付属しています。このパッケージの詳細については、「Amazon EFS ツールのインストール」を参照してください。このパッケージは、 から無料でダウンロードできます。 GitHubパッケージのリポジトリをクローンすることで入手できます。

amazon-efs-utils からクローンを作成するには GitHub
  1. オンプレミスクライアントのターミナルにアクセスします。

  2. ターミナルから、次のコマンドを使用して、 から任意のディレクトリ GitHub に amazon-efs-utils ツールのクローンを作成します。

    git clone https://github.com/aws/efs-utils

パッケージが手に入ったため、それをインストールすることができます。このインストールは、オンプレミスクライアントの Linux ディストリビューションによって異なります。以下のディストリビューションがサポートされています。

  • Amazon Linux 2

  • Amazon Linux

  • Red Hat Enterprise Linux (および、その派生物 CentOS など) バージョン 7 以降

  • Ubuntu 16.04 LTS 以降

RPM パッケージ amazon-efs-utils としてビルドしてインストールするには
  1. クライアントでターミナルを開き、 amazon-efs-utils からクローンパッケージがあるディレクトリに移動します GitHub。

  2. 次のコマンドを使用して、パッケージをビルドします。

    make rpm
    注記

    rpm-builder パッケージをまだインストールしていない場合は、次のコマンドを使用してインストールします。

    sudo yum -y install rpm-build
  3. 次のコマンドでパッケージをインストールします。

    sudo yum -y install build/amazon-efs-utils*rpm
deb パッケージ amazon-efs-utils としてビルドしてインストールするには
  1. クライアントでターミナルを開き、 amazon-efs-utils からクローンパッケージがあるディレクトリに移動します GitHub。

  2. 次のコマンドを使用して、パッケージをビルドします。

    ./build-deb.sh
  3. 次のコマンドでパッケージをインストールします。

    sudo apt-get install build/amazon-efs-utils*deb

パッケージをインストールしたら、 で AWS Direct Connect または VPN AWS リージョン を使用する amazon-efs-utils ように を設定します。

で使用する amazon-efs-utils ように を設定するには AWS リージョン
  1. 任意のテキストエディタを使用して、編集のために /etc/amazon/efs/efs-utils.conf ファイルを開きます。

  2. “dns_name_format = {fs_id}.efs.{region}.amazonaws.com” という行を探します。

  3. us-west-2 のように、{region} を AWS リージョンの IDに変更します。

オンプレミスのクライアントに EFS ファイルシステムをマウントするには、まず、オンプレミス Linux クライアントでターミナルを開きます。システムをマウントするには、ファイルシステム ID、ユーザーのマウントターゲット内のマウントターゲット IP アドレス、ファイルシステムの AWS リージョンリージョンが必要です。ファイルシステムに複数のマウントターゲットを作成した場合は、これらのいずれかを選択できます。

その情報がある場合は、次の 3 つのステップで、ファイルシステムをマウントできます。

マウントのディレクトリを作成するには
  1. 次のコマンドを使用して、マウントポイントのディレクトリを作成します。

    mkdir ~/efs
  2. アベイラビリティーゾーンで、目的のマウントターゲットの IP アドレスを選択します。オンプレミス Linux クライアントからレイテンシーを測定できます。これを行うには、異なるアベイラビリティーゾーンの EC2 インスタンスの IP アドレスに対して ping のようなターミナルベースのツールを実行して、レイテンシーが最も短いものを探します。

/etc/hosts を更新するには
  • ローカルの /etc/hosts ファイルに、ファイルシステム ID とマウントターゲットの IP アドレスを含むエントリを次の形式で追加します。

    mount-target-IP-Address file-system-ID.efs.region.amazonaws.com
    192.0.2.0 fs-12345678.efs.us-west-2.amazonaws.com
マウントのディレクトリを作成するには
  1. 次のコマンドを使用して、マウントポイントのディレクトリを作成します。

    mkdir ~/efs
  2. マウントコマンドを使用してファイルシステムをマウントします。

    sudo mount -t efs fs-12345678 ~/efs

    転送時にデータの暗号化を使用する場合、マウントコマンドは次のようになります。

    sudo mount -t efs -o tls fs-12345678 ~/efs