VMware Cloud on AWSからEFSへの接続を試してみた

お手軽にフルマネージド型ファイルシステムが利用できます

こんにちは、AWS事業本部の荒平(@0Air)です。

VMware Cloud on AWSでは、AWS基盤との物理的な距離が近いため、AWSの様々なサービスと容易に連携を行うことができます。 本エントリでは、フルマネージド型ファイルシステムであるAmazon Elastic File System (EFS)との接続を試してみました。

構成図

今回作成した構成はこちらです。
SDDC接続のVPCにEFSを準備するシンプルな構成としました。

接続手順

今回試した手順は以下の通りです。

  1. EFSの作成
  2. ファイアウォールの設定(AWS側)
  3. ファイアウォールの設定(VMware Cloud on AWS側)
  4. VMware Cloud on AWSの仮想マシンからEFSへ接続

(1) EFSの作成

ここではファイルシステム作成の手順については割愛します。以下のドキュメントをご参照ください。
但し、EFSをデプロイするネットワークは、VMware Cloud on AWSと接続があるサブネットとします。(ENI経由でも、Transit Connect経由でも可)

(2) ファイアウォールの設定(AWS側)

EFS用のセキュリティグループを作成します。

インバウンドルールにタイプ「NFS」(ポート番号:TCP/2049)を入力し、接続元の仮想マシンIPレンジを入力します。
ここでは例として仮想マシンIPを/32で指定しました。

EFSのセキュリティグループを変更します。
接続するEFSを選択して、[ネットワーク]タブから[管理]をクリックします。

セキュリティグループを変更し、[保存]をクリックします。
AWS側の設定は以上です。

(3) ファイアウォールの設定(VMware Cloud on AWS側)

SDDCコンソールより、[ネットワークとセキュリティ] - [ゲートウェイ ファイアウォール] - [コンピュート ゲートウェイ]タブを開き、「+ ルールを追加」をクリックします。

新規ルールに[名前]を入れ、次の設定値を入力します。

項目 設定値
送信元 VMware Cloud on AWS ワークロード
宛先 Connected VPC
サービス NFS (TCP/2049)
適用先 VPC Interface

※ VMware Cloud on AWS ワークロードのネットワークがない場合、グループを作成します。

[発行]をクリックして設定を反映します。

(4) VMware Cloud on AWSの仮想マシンからEFSへ接続

任意の場所で、mkdir efs を実行し、EFS用のマウントポイントを作成します。
以下のコマンドでEFSをマウントします。
$ sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2 {EFSアクセスポイント}:/ {マウント先ファイルパス}

なお、筆者環境のVMware Cloud on AWSからはデフォルトでEFSの名前解決ができないため、IPでの指定を行いました。
DNS名でのマウントが必要な場合、マウントターゲットのIPを手動でDNSへレコード登録する必要があります。

最後に、 dh -h | grep efs コマンドでマウントできていることを確認して完了です。

おわりに

今回は、Amazon Elastic File System (EFS)との接続を実施してみました。
複数の仮想マシンやオンプレミスの仮想マシンとデータを共有する際に利用することも多いと思います。

このエントリが誰かの助けになれば幸いです。
それでは、AWS事業本部 コンサルティング部の荒平(@0Air)がお送りしました!

参考

同様の流れでRDS版の記事を執筆しています。