│ネットワークの明日を創る。EFSを使ってみた(前編)の続きです。EFSがどのような特徴があるのかについて解説しました。後編となる今回は実際にEFSファイルシステムを作成し、ベンチマークを使って他のファイルシステムと比較をしてみたいと思います。EFSファイルシステムの作成それでは早速、EFSファイルシステムを1つ作成したいと思います。手順は非常に簡単で3ステップで完了します。ステップ1:ネットワーク設定EFSの設定画面に進むと、EFSファイルシステムが使用するネットワーク周りの設定画面になります。ここでは以下の設定ができますので、自分の環境に合った設定を実施します。次に進むと、タグとパフォーマンス設定画面が出てきます。タグ設定自体は任意です。ページ下部ではパフォーマンスモードが2種類から選択可能です。I/Oつまり一般用途と、I/Oパフォーマンスを最大値にしたモードの2種類です。ステップ3:最終確認ステップ1と2で指定した内容で作成しますよという最終確認画面です。これだけでEFSファイルシステムが出来上がりました。EFSファイルシステムのマウント作成したEFSをEC2インスタンスから利用する方法は、作成したEFSファイルシステムの管理画面内に書かれていました。このヘルプに倣ってマウントを実施します。Linuxでt2.microでさくっと作成したものです。/efs上記コマンドがうまく通らない場合は、EFSが使用するセキュリティグループの設定を見直すと良いと思います。マウントされたか確認してみると・・・。/efs---------------------------------------------------------------------------認識されたのはなんと8エクサバイト!ペタバイトの更に1024倍です。これだけの容量はなかなか使い切らないですよね。fioコマンドの準備ディスクベンチマークツールはhdparmが有名ですが、NFSを計測することができなそうなので今回はfioを使用したいと思います。LinuxがインストールされたEC2インスタンスでは、上記コマンドですんなりインストールすることができました。EC2インスタンスが普段マウントしているEBSのベンチマークまずはEC2インスタンスが普段マウントしているEBSをベンチマークしてみたいと思います。テスト用のディレクトリを作成し、ベンチマーク用のコンフィグファイルを作成します。/home/testfioではシーケンシャルリードも計測できるようですが、やはりNFS運用することを考えるとランダムリード性能が重要なので、ランダムリードを計測したいと思います。100Mbyteのランダムリード性能を計測します。fio.txt-------------------------[random-read]rw=randreadsize=100mdirectory=/home/test/fio/-------------------------fioコマンドで上記コンフィグファイルを指定し実行します。util=97.26%このベンチマーク計測はすぐに終わりました。ベンチマーク上大切なところは以下の部分です。maxt=7367msecNFSマウントしているEFSのベンチマーク先ほどと同様でベンチマーク対象ディレクトリをEFSのマウントポイントに指定します。maxt=69222msecEC2上に構築したNFSサーバをマウントしてベンチマークEFSを利用する一つの理由として、現状NFSで構築しているEC2インスタンスをEFSに変更して運用したいというケースが考えられますので、EC2上にNFSサーバを作成してベンチマークを取得してみました。Linuxでt2.microです。コンフィグファイルを作成。maxt=29913msec結果を比較して分かったこと上記ベンチマーク結果を表にしたものが以下です。29913msecあれ?EFS遅い?EBSが最も速いのは当然の結果なのですが、EC2上にNFSサーバを立てた方が速いという結果になりました。ランダムライト性能はどうかでは、書き込み性能はどうなのかも気になったので計測してみました。78msec書き込み性能は読込ほど大きな差は出ませんでしたが、EBSがやはり最も早く、NFS、EFSがほぼ同じという結果になりました。まとめ検証の結果、EFSは速度的にはNFSに劣るということが分かりました。私が本検証を行う前は、EFSってやっぱり速いんだろうなと思っていたので、個人的には意外な結果となりました。いえ3ステップで使用出来たり、複数アベイラビリティゾーンの設定ができたり等、便利な点もありますので、用途に合わせてEFSを選択すると良いのではないでしょうか。EFSはまだ東京リージョンでは展開されていませんので、今後東京リージョンで使えるようになった際には再度検証を取ってみたいと思います。