Amazon EFS 自体は 2016年から一般に利用できるようになっていますが、もうすぐ (2018年7月) 東京リージョンでも利用可能になるようです。 正直、国内にいると他リージョンでのみ利用可能なサービスについては疎くなるので、この機会に EFS についてざっくりと調べてみました。

EFS とは

Amazon Elastic File System (Amazon EFS) はシンプルで、スケーラブル、伸縮自在なファイルストレージを、AWS クラウドサービスとオンプレミスリソース用に提供します。

(中略)

Amazon EFS は、高可用性と耐久性を実現するよう設計されたリージョンでのサービスで、ウェブ配信やコンテンツ管理、エンタープライズアプリケーション、メディアおよびエンターテインメントの処理ワークフロー、ホームディレクトリ、データベースバックアップ、開発者ツール、コンテナストレージやビッグデータおよび分析アプリケーションなど幅広い多様なユースケースでパフォーマンスを発揮します。

とあります。
簡単に言うと、共有ファイルストレージ のことです。

EBS, S3 との違いは?

AWS のサービス内には、ストレージサービスが他にもあります。EBS と S3 です。
これらは東京リージョン開設時から利用可能で、AWS の基本的なアーキテクチャには不可欠なサービスです。

新たに東京リージョンで利用可能になる EFS と、EBS, S3 との違い・使い分けについて簡単にまとめます。
※詳細な違いについては When to Choose Amazon EFS を参照してください。

Per-operation latency (レイテンシー)

EFS

  • 低い
  • 整合性が担保されている

EBS

  • かなり低い
  • 整合性が担保されている

S3

  • 低い
  • 整合性が担保されている
  • CloudFront と結合できる

Data Availability/Durability (データ可用性/耐久性)

EFS

  • リージョン内の複数のアベイラビリティーゾーンにデータとメタデータを保存

EBS

  • 単一のアベイラビリティーゾーン内で冗長性

S3

  • リージョン内の複数のアベイラビリティーゾーンにデータとメタデータを保存

Access (アクセス)

EFS

  • 複数のアベイラビリティゾーン、数千の EC2 インスタンスまたはオンプレミスサーバ

EBS

  • 単一のアベイラビリティゾーン内の、ひとつの EC2 インスタンス

S3

  • Web 上からの数百万の接続

Use Cases (ユースケース)

EFS

  • Web サービス
  • コンテンツ
  • アプリケーション

EBS

  • ブートボリューム
  • NoSQL データベース、データハウス

S3

  • Web コンテンツ、メディア
  • バックアップ
  • 大規模データの分析

EFS の利用で何が変わる?

一番 おぉ! と思うのは、EC2 インスタンスをスケーリングするときのことを考えた場合です。
高負荷時にスケールアウトする場合、元となる AMI から新しい EC2 インスタンスを起動すると思います。
ある WEB サービスを運用するにあたって、何かしらバージョンアップ等を実施した場合、デプロイするときにマスターの EC2 インスタンスはもちろんですが、スケール時に使用する AMI の更新も必要になります。
しかし、アプリケーションの置き場所を EFS にすると、デプロイはそこだけを対象にすればよくなり、スケール時には EC2 インスタンスのみの起動を考えて、アプリケーション自体のバージョンを気にする必要がなくなります。

デプロイやスケールのアーキテクチャがよりシンプルな形になりそうな気がしています。


以上、よっしー (michimani) でした。

Share to ...

0

Follow on Feedly

comments powered by Disqus