NutaNice Xperience

主にNutanix製品を検証したり触ったりした結果をつづっています。※このブログの内容は個人の見識や見解をもとに作成しています。参考にされる場合は自己責任でご活用ください。実際に製品を使用される場合は、メーカードキュメントの手順に従い実施してください。

Nutanix Filesのサイジング -FSVMについて-

ここ連日Nutanix Filesのサイジング特集をしておりますが、今回はFSVMのサイジングについて書いてみます。

1回目:Nutanix Filesのサイジング -SSD要件について-
2回目:Nutanix Filesのサイジング -CVMについて-
3回目:Nutanix Filesのサイジング -FSVMについて- ←今回の記事

FSVMは、NASヘッドの役割を果たす仮想マシン型のアプライアンスであり、通常は3台のクラスター構成でNutanix上へデプロイして使用します。

このFSVMが、アクセスポイントとなって共有フォルダをクライアントへ公開するため、FSVMのパフォーマンスはファイルサーバーのストレージ性能へ大きく影響してきます。

FSVMのサイジングはまとめるのが難しいですが、今回はNutanixのドキュメントをもとにSizerを触りながら確認したものを紹介します。

Nutanix FilesにおけるFSVMリソースの考え方

1回目、2回目の記事では、サイジングの際にワークロードタイプに分けて紹介しましたが、FSVMについてもやり方は同様となります。ワークロードタイプによって、ユーザー同時接続数やスループット、IOPSといった値をもとにサイズを見積もることになります。

まとめた図を先にお見せします。

f:id:tomomartin:20210824201227p:plain

汎用ファイル共有

こちらは、部門の共有フォルダやVDIの移動ユーザープロファイルの保管先といった用途を想定しているものです。これらのワークロードは、FSVMあたりの同時接続数で見積もることになります。単純に1つのFSVMへ接続するユーザー数が増えれば増えるほど、FSVMへリソースを追加していくイメージです。

ハイパフォーマンスなアプリケーション共有(シーケンシャル)

こちらは、大量の映像データを蓄積し配信するビデオサーバーや、大きなバックアップ、ログファイルなどを保存するといった、シーケンシャルアクセスを基本とするワークロードを想定しているものです。

シーケンシャルワークロードの場合は、基本的に必要なスループット性能によってFSVMのリソースを考えることになります。こちらも、より高いスループット性能が必要になれば、FSVMへより大きなリソースを追加します。

ハイパフォーマンスなアプリケーション共有(ランダム)

こちらは、EDA(電子設計自動化)やソフトウェアコンパイル、FSLosixといったランダムアクセスを基本とするワークロードを想定しているものです。

ランダムワークロードの場合は、基本的に必要なIOPS性能によってFSVMのリソースを考えることになります。こちらも、より高いIOPS性能が必要になれば、FSVMへより大きなリソースを追加します。

パフォーマンスを最大限に発揮するために考えるべきこと

Nutanix Filesにおいて、FSVMは標準で最低3台で構成するため、基本的にユーザーからのアクセスやIO処理を分散することができる仕組みになっています。ただ、作成できる共有フォルダにも「標準」と「分散」といった種類があり、「標準」で共有フォルダを作成する場合は、アクセスの分散について共有フォルダの数などを考慮する必要があります。

また、アクセスを効果的に分散しなければ、前半の図で紹介したリソースを割り当てても想定したパフォーマンスが得られなかったりする可能性があります。

例えば、多数のユーザーが接続する部門の共有フォルダであったり、ハイパフォーマンスが必要な共有において、標準共有で1つの共有フォルダのみを使ってしまうと、1つのFSVMだけがアクセスポイントとなってしまうため、思った以上に性能が出ないといったことになるかもしれません。

f:id:tomomartin:20210824215205p:plain

これはもったいない使い方になってしまうため、設計次第で例えばFSVMの台数分だけ共有フォルダを作成するなどして、クライアントからのアクセスを効果的に分散すれば、それぞれのFSVMのリソースを最大限に活かすことができます。

f:id:tomomartin:20210824215815p:plain

 FSVMのリソースを考えるにあたって、同時接続数やスループット、IOPSなどの値をクラスター全体で見積もるのが基本となりますが、あくまで各FSVMが十分にパフォーマンスを発揮した場合の値になるかと思われます。

そのため、共有フォルダを作成する際もアクセスやI/Oの分散を考慮に入れて、最大限のパフォーマンスを出せる設計をするとよいかと思います。

実際にサイジングする場合は、Nutanixのドキュメントを確認されることをおすすめします。

[Nutanix Files Sizing Guide]
https://portal.nutanix.com/page/documents/solutions/details?targetId=TN-2066-Nutanix-Files-Sizing-Guide:TN-2066-Nutanix-Files-Sizing-Guide