Amazon Elastic File System
ユーザーガイド

Amazon EFS ファイルシステムの自動マウント

fstab を使用すると、マウントされている Amazon EC2 インスタンスが再起動するたびに、マウントヘルパーにより Amazon EFS ファイルシステムを自動的にマウントできます。マウントヘルパーの詳細については、「EFS マウントヘルパー」を参照してください。自動マウントを 2 つの方法で設定できます。初めてインスタンスに接続した後で、EC2 インスタンスの /etc/fstab ファイルを更新する、または EC2 インスタンスを作成する時に EFS ファイルシステムの自動マウントを設定することができます。

自動的にマウントするよう既存の EC2 インスタンスを更新する

Amazon EC2 インスタンスの再起動時に Amazon EFS ファイルシステムディレクトリを自動的に再マウントするには、fstab ファイルを使用できます。fstab ファイルにはファイルシステムに関する情報が含まれています。またインスタンスの起動時に実行される mount -a コマンドは、fstab ファイルにリストされているファイルシステムをマウントします。

注記

EC2 インスタンスの /etc/fstab ファイルを更新する前に、Amazon EFS ファイルシステムがすでに作成済みであることを確認してください。詳細については、Amazon EFS 「使用開始」の演習の「ステップ 2: Amazon EFS ファイルシステムの作成」を参照してください。

EC2 インスタンスの /etc/fstab ファイルを更新するには

  1. EC2 インスタンスに接続して、エディタで /etc/fstab ファイルを開きます。

  2. 次の行を /etc/fstab ファイルに追加します。

    fs-12345678:/ /mnt/efs efs defaults,_netdev 0 0

    警告

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

  3. 変更をファイルに保存します。

EC2 インスタンスは、再起動するたびに EFS ファイルシステムをマウントするように設定されました。

注記

マウントされた Amazon EFS ファイルシステムのステータスに関係なく Amazon EC2 インスタンスを起動する必要がある場合は、nofail ファイルのファイルシステムのエントリに /etc/fstab オプションを追加します。

/etc/fstab ファイルに追加したコードの行は以下のようになります。

フィールド 説明

fs-12345678:/

Amazon EFS ファイルシステムの ID。この ID は、コンソールから、または CLI あるいは AWS SDK からプログラムで取得できます。

/mnt/efs

EC2 インスタンスの EFS ファイルシステムのマウントポイントです。

efs

ファイルシステムのタイプ。マウントヘルパーを使用している場合、このタイプは常に efs です。

mount options

ファイルシステムのマウントオプション。以下はオプションのカンマ区切りのリストです。

  • defaults – この値は、デフォルトのマウントオプションを使用するようにオペレーティングシステムに指示します。マウントオプションは、ファイルシステムがマウントされた後で mount コマンドの出力を表示して一覧表示できます。

  • _netdev – この値は、ファイルシステムがネットワークアクセスを必要とするデバイスに存在することをオペレーティングシステムに通知します。このオプションは、クライアント上でネットワークが有効になるまで、インスタンスがファイルシステムをマウントするのを防ぎます。

  • ここで defaultstls に置き換えて、転送時のデータの暗号化を有効にすることができます。

0

ゼロ以外の値の場合、ファイルシステムを dump でバックアップする必要があることを示します。EFS の場合、この値は 0 になっている必要があります。

0

起動時に fsck がファイルシステムをチェックする順序。EFS ファイルシステムの場合、起動時に fsck を実行すべきでないことを示すにはこの値を 0 にします

EC2 インスタンスの起動時に自動的にマウントするよう EFS ファイルシステムを設定する

Amazon EC2 インスタンスを、cloud-init で動作するスクリプトで初めて起動された時に Amazon EFS ファイルシステムを自動的にマウントするように設定できます。EC2 マネジメントコンソールの [Launch Instance (インスタンスの起動)] ウィザードでスクリプトを追加します。

スクリプトが NFS クライアントをインストールし、/etc/fstab ファイルにマウントターゲット DNS 名および EFS ファイルシステムをマウントする EC2 インスタンスのサブディレクトリを識別するエントリを書き込みます。このスクリプトを使用して、EC2 インスタンスの起動時、および各システムが再起動されたあとにファイルがマウントされるようにします。このスクリプトでは、tls オプションを使って送信中のデータを暗号化することもできます。

Amazon Linux で使用されるカスタマイズバージョンの cloud-init の詳細については、『Linux インスタンス用 Amazon EC2 ユーザーガイド』の「cloud-init」を参照してください。

起動時に自動的に EFS ファイルシステムをマウントするよう EC2 インスタンスを設定するには

注記

この手順を実行する前に、Amazon EFS ファイルシステムをすでに作成済みであることを確認します。詳細については、Amazon EFS 「使用開始」の演習の「ステップ 2: Amazon EFS ファイルシステムの作成」を参照してください。

  1. ウェブブラウザで、Amazon EC2 コンソールを開き、[Launch Instance (インスタンスの起動)] ウィザードを開始します。

  2. [Step 3: Configure Instance Details (ステップ 3: インスタンスの詳細の設定)] でインスタンスの詳細を設定し、[Advanced (アドバンスド)] セクションを展開して以下を実行します。

    1. [User data (ユーザーデータ)] に次のスクリプトを貼り付けます。fs-12345678 および /mnt/efs に、適切な値を入力してスクリプトを更新する必要があります。

      #cloud-config repo_update: true repo_upgrade: all packages: - amazon-efs-utils runcmd: - file_system_id_01=fs-12345678 - efs_directory=/mnt/efs - mkdir -p ${efs_directory} - echo "${file_system_id_01}:/ ${efs_directory} efs tls,_netdev" >> /etc/fstab - mount -a -t efs defaults

      警告

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

      この例のようにマウントポイントへのカスタムパスを指定する場合は、-p オプションでは必要に応じて中間親ディレクトリが作成されるため、mkdir -p を使用できます。

      ユーザーデータスクリプトの詳細については、『Linux インスタンス用 Amazon EC2 ユーザーガイド』の「ユーザーデータの追加」を参照してください。

  3. [Launch Instance (インスタンスの起動)] ウィザードを終了します。

  4. EC2 インスタンスが起動し、[ステータスチェック] が [Initializing (初期化)] と表示されている間に、ファイルシステムの EFS マウントターゲットに関連付けられたセキュリティグループを追加する必要があります。「使用開始」の演習では、これはデフォルトのセキュリティグループです。EC2 インスタンスにセキュリティグループを追加するには、以下を実行します:

    1. EC2 マネジメントコンソールを開き、左ナビゲーションペインから [インスタンス] を選択します。

    2. 作成した EC2 インスタンスを見つけます。

    3. [アクション] から、[ネットワーキング] を選択し、次に [セキュリティグループの変更] を選択します。

    4. ファイルシステムに関連付けられているセキュリティグループを追加します。「使用開始」の演習では、これはデフォルトのセキュリティグループです。

    5. [Assign Security Groups] を選択します。

EC2 インスタンスは、起動時に EFS ファイルシステムをマウントするように設定されました。