Amazon Web Services ブログ

SAN: Amazon FSx for NetApp ONTAP による 100 万 IOPs

このブログは 2022 年 9 月 8 日に Randy Seamans(Specialist Solutions Architect)によって執筆された内容を日本語化した物です。原文はこちらを参照して下さい。

厳しいサービスレベル要件を達成するために、アプリケーションが最高の IOPS とスループットを要求するユースケースがあります。 Amazon Elastic Block Store (EBS) の大規模な水平方向のスケーラビリティを、集中的に垂直方向にスケールするストレージ性能に活用できることは、最近のブログ “SAN in the Cloud: Millions of IOPs and tens of GB/s to any Amazon EC2 instance.” で紹介しました。

Amazon FSx for NetApp ONTAP (FSx for ONTAP)iSCSI のブロックサポート を活用することで、AWSのインスタンスに SAN(Storage Area Network)ブロックストレージを数 100 万 IOPs および 数 GB/s にスケールする方法が追加されました。 FSx for ONTAP は、クラウド上でフルマネージドの ONTAP ファイルシステムを起動して実行できるようにするストレージサービスです。 FSx for ONTAP によって、複数のアベイラビリティゾーン(Multi-AZ)、 Small Computer Systems Interface(SCSI)ロック、ほぼ瞬時に利用できるスナップショット、クロスリージョンレプリケーション、シンプロビジョニング、重複排除、圧縮、コンパクション、ソリッドステートドライブ(SSD)からキャパシティプールへの階層化をサポートしたブロックサービスを活用することができます。

FSx for ONTAP ファイルシステム 1 台で、(キャッシングワークロードにもよりますが)数 10 万 IOPs、最大 2 GB/s *の処理能力を備えています。しかし、これが限界とは限りません。この記事では、標準的なオペレーティングシステムを使用するクライアントインスタンスに対して、単一の FSx for ONTAP の 5 倍、10 倍、あるいは 20 倍のブロックパフォーマンスを集約し、同時に整合性のあるスナップショットをサポートする能力を維持します。 FSx for ONTAP を使用することで、容量とパフォーマンスの両方を柔軟かつ無停止で拡張でき、真の従量課金モデルを実現できます。

*本ブログの翻訳時点では、最大 4 GB/s に増加されています

ソリューション概要

FSx for ONTAP は、リージョンに配置できる 2 つの配置オプションをサポートしています: Single-AZ と Multi-AZ です。 Single-AZ ファイルシステムは、開発およびテストワークロードや、オンプレミスまたは他の AWS リージョンに既に保存されているデータのセカンダリコピーの保存など、 AZ 内でストレージを複製する必要があるが複数の AZ にまたがる回復力は必要とされていないユースケースを想定して設計されています。 Single-AZ ファイルシステムは、 AZ 内にのみデータの複製を持つことで、これらのユースケースに対してコスト最適化されています。アプリケーションで、同じ AWS リージョン内の AZ 間で高可用性と耐久性を持つストレージが必要な場合は、 Multi-AZ ファイルシステムを使用する必要があります。このソリューションでは、10 台の Single-AZ FSx for ONTAP アレイを並行してベンチマークしています。

FSx for ONTAP の仮想アレイ

図 1 に示すように、 FSx for ONTAP ボリュームの仮想アレイが展開され、infrastructure-as-code を使用して、要求される性能レベルを達成するために必要な数の FSx for ONTAP をプロビジョニングする複雑さを軽減しています。シンプルな AWS コマンドラインインターフェース(CLI) スクリプトで、希望する構成の FSx for ONTAP を複数作成し、iSCSI 論理ユニット番号(LUN)のプロビジョニングに備えます。

Figure 1: Millions of SAN IOPs via FSx for ONTAP iSCSI

図 1: FSx for ONTAP iSCSI による数 100 万の SAN IOPs

図 1 では、各クライアントインスタンスは iSCSI ボリュームをマウントして利用することができ、これらのボリュームは マルチパスで可用性の高い FSx for ONTAP によって提供されます。ボリュームへのアクセスは、エンタープライズでよく見られる iSCSI の実装と同様に、イニシエータグループ、 LUN マッピング、および CHAP 認証によって制御されます。

FSx for ONTAP アレイの構築と構成

10 個の FSx for ONTAP Single-AZ ファイルシステムの仮想アレイが作成され、それぞれ 5.3 TB の SSD 層が構成されています。各 FSx for ONTAP には、デフォルトでセカンダリのキャパシティプール層があります。階層間の移動は、ティアリングポリシーによって制御されます。

デフォルトのティアリングポリシーは 「Snapshot Only」 に設定され、スナップショットブロックのみがキャパシティプールに移動する対象となり、すべてのブロックの入出力(I/O)が SSD 層によって処理されるようになっています。各ファイルシステムは、80,000 SSD IOPs と 2 GB/s のスループットでプロビジョニングされました。各ファイルシステムで実際に提供される IOPs は、キャッシュフレンドリーのワークロードの場合、プロビジョニングされた IOPs を大幅に上回ることがあります。

ファイルシステムの作成、iSCSI ボリュームのプロビジョニング、ホストのセットアップ、設定、iSCSI アタッチメントは、AWS CLI と ONTAP CLI を活用したスクリプトを利用し、導入の複雑さを軽減しました。 図 2 は、ファイルシステムのプロビジョニング後の結果を示しています。

Virtual Array of FSx for ONTAP in Operation

図 2: マネジメントコンソールから確認できる 10 の FSx for ONTAP 仮想アレイ

FSx for ONTAP スナップショットとの連携

FSx for ONTAP アレイは、ネイティブ機能の FSx スナップショットとスクリプトを使用して、各ファイルシステムがクラッシュ整合性(ポイントインタイム)、またはホストと複数の FSx for ONTAP の連携が必要なアプリケーション整合性を提供します。

オンデマンドのパフォーマンス

オンデマンドでパフォーマンスを拡張するために、既存の FSx for ONTAP ファイルシステムの IOPs(最大 80,000 **)とスループット(最大 2 GB/s *)を更新することができます。また、 SSD 層のサイズを 1 ~ 196 TB まで大きくすることができ、ボリュームを大きくしてもブロックデバイスが SSD に完全に収まるようになります。例として、合計 20 GB/s のスループットが必要な場合、各 2 GB/s のファイルシステムを 10 個プロビジョニングする代わりに、各 1 GB/s のファイルシステムを 20 個プロビジョニングすることが可能です。

**本ブログの翻訳時点では、最大 160,000 IOPs に増加されています

*本ブログの翻訳時点では、最大 4 GB/s に増加されています

ベンチマーク結果

FSx for ONTAP の 10 個の iSCSI ボリュームを使って構成された仮想アレイを対象に、100 万 IOPs と最大 10 GB/s のパフォーマンスを目標にベンチマークしました。先の 図 2 によると、各ファイルシステムは 5.3 TB の SSD で構成され、最大 2 GB/s の性能を発揮しています。

各 FSx for ONTAP のティアリングポリシーは 「Snapshot Only」 に設定されており、作成された各 iSCSI ボリュームは実質的に SSD 層に固定され、キャパシティプール層はスナップショットからコンパクト化したデルタブロックに使用されます。ワークロードプロファイルがハイパフォーマンスでなく変動率が高くない場合、ティアリングポリシーを変更して、ほとんど使用されないブロックをキャパシティプールに保存できるようにし、コストを削減することができます。このベンチマークでは、高性能で信頼性の高いサブミリ秒単位のアクセスを必要とするワークロードを対象としました。これは、SSD 層のサイズを、2 TB のボリューム全体を保持するのに十分な大きさとし、最終的にキャパシティプール層に階層化されるスナップショット用に十分なバッファスペースを確保することで実現しました。

テストした AWS クライアントインスタンスは、i3、m6、X2 ファミリーのもので、最新の AWS Red Hat Enterprise Linux (RHEL) の Amazon Machine Image(AMI)を実行しています。 FIO を使用して、Random Read(R)、Write(W)、R/W、およびスループットをテストしました。テスト対象のファイルシステムを構成するために、論理ボリューム管理(LVM)で 10 個の iSCSI ボリュームから単一の論理ボリュームを構成しています。以下の 図 3 は、ベンチマーク結果の詳細を示しています。

Figure 3: Single Client Benchmarking o Virtual Array of FSx for ONTAP

図 3: FSx for ONTAP の仮想アレイのシングルクライアントベンチマーキング

この結果は、ランダムなスモールブロック I/O の平均レイテンシがサブミリ秒以下のパフォーマンスであることを明確に示しています。ラージブロックの読み込みはネットワークが 100 % の飽和状態に達し、ラージブロックの書き込みは約 7.5 GB/s を達成しました。

まとめ

この記事では、FSx for ONTAP の高度な機能をすべて活用しながら、他の AWS サービスとの相互運用性を損なうことなく、 AWS で総合的なブロックパフォーマンスをスケールするために FSx for ONTAP アレイを簡単に導入する方法を紹介しました。 単一インスタンス(または少数のインスタンス)に対して総合的に高いブロックパフォーマンスを必要とするアプリケーションや環境は、ストレージ性能のためのリファクタリングなしで AWS で実行できるようになりました。

現在提供中

今回紹介した FSx for ONTAP のリファレンスデザインは、現在利用可能な FSx for ONTAP のバージョン、標準の Amazon EC2 インスタンス、および RHEL 8.2 に基づいています。 AWS インスタンスはあらゆる iSCSI クライアントとマルチパスを実行可能な OS をサポートしています。

翻訳はネットアップ合同会社の方様、監修はソリューションアーキテクトの向井が担当しました。