技術情報
とよぢぃのねっとあっぷ四方山話 第5回

DISのとよぢぃと申します。
『ねっとあっぷ四方山話・ネットアップの製品紹介(3)』をお届け。
前回は提案書などに記載するハードウェアの仕様を調べるのにとても便利なツールであるHardware Universe(HWU)をご紹介しました。今回は提案時にお客様から求められることの多い性能値(IOPSとかMB/secなど)を算出する際に使用するFusionと言うツールをご紹介します。HWUはハードウェア仕様と言うきわめて静的な情報を扱うツールですが、Fusionは性能と言う非常に動的な数字を扱うツールです。なので、Fusionの使い方はHWUほど簡単ではありませんが、Fusionの使い方をある程度マスターすると提案書等に記載する性能値を求めるだけではなく、ストレージやサーバ製品に対する性能の考え方も理解できるようになると思います。この機会にFusionの使い方だけでなくストレージやサーバの性能の考え方への理解も深めていただけるといいかな、と思っています。
まず、Fusionは以下のURLで起動するウェブベースのツールです。

HWU同様、Fusionを使用するにはネットアップサポートサイトのログインID(NSS ID)が必要です。ネットアップから提供されているウェブベースのツールを使用するにはNSS IDが必要になることが多いので、もしアカウントをお持ちでなければこの機会に取得しておくことをお薦めします。アカウントの取得は以下URLの “Create an account” からできます。
以下がFusionのトップ画面です。Fusionは結構頻繁にアップデートされていてバージョンが上がるとサイジング対象の製品が増えたり、サイジング方法のところが少し変わったりします。
このトップ画面は2025/5/6にリリースされたVersion 1.67.0トップ画面です。

ここでは一番使うことが多いと思われる”AFF, ASA and FAS”の”Design a System Manually”について、使い方の概要をご紹介しようと思います。
”Design a System Manually”と言うのは俗にリバースサイジングと呼ばれるサイジング手法で、見積り等で決まった構成やお客様ご指定のワークロード(負荷情報)における最大性能を求めるものになります。リバースがあれば反対のフォワードもあります。Fusionではフォワードサイジングは”Size and Recommend”と言うメニューになります。これはストレージに必要とされる容量や性能から機種選定を行う際に使用するサイジング手法となります。Fusionの”Size and Recommend”では入力するパラメータがわりと少なくて結果として選出される機種の幅がちょっと広すぎるかなぁという印象があり、あまり使いやすくはないかなという印象があります。まぁ、おおまかに機種の当たりをつけるという意味ではフォワードサイジングは便利なんですが、最終的に構成の微調整などを行った後でリバースサイジングを行い最大性能を求め直すのが一般的です。
では、最近リリースされたAFF A30という機種を例としてリバースサイジングについて説明していくことにします。なお、ここでは手順の概要のご紹介にとどめます。詳しくは別途ご用意している『NetApp Fusionの使い方』という資料をご参照ください。
まず、”AFF, ASA and FAS”を選択、続けて”Design System Manually”を選択すると画面下方に”GO TO DESIGN”というボタンが表示されるのでそれをクリックします。

次の画面で”Add System”、”Supported”、”AFF”と進んで”AFF A30A”を選択します。

これでベースになるAFF A30が選択されて以下のように表示されます。

AFF A30はSSDを24本内蔵できますが、ここでは3.84TB NVMe SSDが8本内蔵された構成で表示されています(この辺の初期表示の内容はFusionのバージョンによって変わります)。
内蔵SSDの構成を変更する場合はここで行います。上記の赤枠のところをクリックすると内蔵SSDの選択可能な構成の一覧が表示されるのでここから変更したいSSDの構成を選択します。例えば3.84TB NVMe SSD 24本の構成を選んで、右上の”Close”をクリックします。

これで以下のように内蔵SSDの構成が変更されます。

さらにSSDを搭載するためのシェルフの追加もこの画面から行います。シェルフを追加するには、上記赤枠の”Add Shelf”をクリックします。内蔵SSDの選択画面と同じように追加できるシェルフの一覧が表示されます。

例えば3.84TB NVMe SSDを24本搭載したNS224シェルフを選択して”Close”をクリックします。

先ほどのシェルフ一覧にないようなドライブ構成のシェルフ(例えばSSD 14本構成とか)を追加する場合は近い構成のシェルフを選択して追加した後で、追加したシェルフを選択して”Customize”することで対応できます。
ドライブの構成が決まると以下のようにデフォルト構成でアグリゲートが構成されます。基本的には搭載ドライブを2つのコントローラに均等配分する形でアグリゲートが作られますが、ドライブ数が少なくて2つのコントローラに配分できないような構成ではコントローラ1に全ドライブを割り当てるような構成になることもあります。

初期状態ではすべてのドライブが割り当てられているので、このままではアグリゲートの構成変更は行えません。この状態でできることはRAIDグループサイズの変更くらいです。アグリゲートの構成を変更するには、まずアグリゲート名の左側にあるゴミ箱をクリックします。これでそのアグリゲートは破棄されて割り当てられていたドライブがフリーとなり、フリーになったドライブを他のアグリゲートに組み込んだり、新たに別のアグリゲートを構成することができるようになります。
アグリゲートのドライブ構成を変更するにはアグリゲート名(例えばnetapp1_aggr1)のところをクリックします。以下のようにアグリゲートの構成情報が表示されます。

アグリゲートの名前やアグリゲートがぶら下がるコントローラの変更、RAIDサイズの変更、割り当てるドライブ数の変更などができます。一番下の方に”Snap Reserve %”というのがありますが、これはアグリゲートのSnapshotリザーブのパーセンテージです。今はデフォルトが0ですが、必要に応じてSnapshotリザーブを設定することができます。
RAIDサイズの右の方に”Allow mixing within RAID groups”というチェックボックスがあります。ここにチェックを入れると同タイプ(SSDとかSASとか)でサイズの異なるドライブを1つのRAIDグループ内に混在させることができるようになります。RAIDグループは同タイプ/同サイズのドライブで構成するのが基本で推奨ではありますが、同タイプであれば、サイズ違いのドライブを混在させることも仕様上は可能です。
ここで、気づかれた方もいるかと思いますが、Fusionではボリュームのサイジングはできません。ONTAPではボリュームは論理的なものであり、Fusionが対象としているのは物理的なハードウェア構成だからです。
さて、アグリゲートの構成が決まったら、IOPSやMB/secを求めるのに必要な情報はワークロード(負荷)となります。

“Workloads”、”Add Workload”、”Add Manually”、”Detailed Workload”と進むと以下の画面になりワークロード情報を設定することができます。

設定項目の内容はだいたい見てわかる通りです。
”Effective Capacity (TiB)”には必要なアグリゲートの実効容量を入力していただいてもいいですし、アグリゲート内に作るボリュームのサイズを入力していただいてもかまいません。先ほど「Fusionはボリュームのサイジングには非対応」と述べましたが、ここでボリュームごとの実効容量とかワークロード情報を設定することでワークロードの異なる複数のボリュームを含むアグリゲートを定義することもできます。ただし、ボリュームのシンプロビジョニングには対応していないので、ワークロードをアグリゲートに割り当てるときにワークロードで設定した”Effective Capacity”の合計がアグリゲートのサイズにおさまりきらないとエラーになります。
“Throughput / IOPS”にはストレージに要求されている性能値を入れます。単位はIOPSかMB/secを選べます。この値が大きいと最終的に組んだ構成では対応できないということもあります。その場合には搭載しているドライブ数を増やすとか、コントローラを上位機種に変更するなどの対応が必要になります。
”Random Read Latency (ms)”は小さいほど応答性能のいいストレージを表しますが、AFFでは最大が3msに制限されています。これより大きい値を入れても3msになります。
“Protocol Type”はこのストレージに対するアクセスプロトコルでNFS、CIFSやiSCSI、FCPなどを指定します。
“I/O Mix”はワークロードの設定でとても重要な項目です。Random Read/Write、Sequential Read/Writeの比率を設定します。またそれぞれのI/Oのブロックサイズも設定します。この情報なしで100,000IOPS欲しいとかいう要求仕様を見かけることがありますが、例えば、ある構成のストレージでは4KB Random Read 100%だと1,105,860 IOPS出ますが、32KB Sequential Write 100%だと140,538 IOPSになったりします。気が付いた方もいるかもしれませんが、実はこの数字はAFFでのものです。IOPSの値とブロックサイズをかけた総スループットの値がほぼ同じになります。これはAFFだとランダムやシーケンシャル、ReadやWriteでの性能差があまりないことを示しています。HDD構成のFASだとこうはならなくてワークロードの違いが最大性能の差に大きく表れてきます。
“AFF, ASA Storage Efficiency Ratio“は圧縮や重複排除によってストレージ容量の効率化ができる率です。デフォルトでは1.5:1になってますが、実環境で50%の効率化ができるかどうかが不明であればここは1:1、すなわち容量の効率化は無しにしておくのがいいかと思います。
“Active Working Set %”は“Effective Capacity”で設定した容量のうちの何パーセントがアクティブにアクセスされるかを表しています。この率が大きくなるとそれだけストレージにかかる負荷が大きくなるので最大IOPSやMB/secは下がることになります。
なお、ワークロードの一例ですが、一般的にWindowsファイルサーバであればだいたいRandom Read 70%、Random Write 30%、ブロックサイズは8KBくらいのワークロードになります。
ワークロードの設定が終わったら画面右下の”Save Changes”をクリックしてください。以下のような画面が表示されます。


ワークロードの設定が終わったらワークロードとアグリゲートを紐づけて性能値を算出することができます。ワークロード名の左にある をクリックすると以下のようにワークロードを割り当てる画面が表示されます。
設定したワークロードを2つのアグリゲートに均等に割り当てるなら2つのアグリゲートにチェックを入れて”Split Workload”をクリックします。
ワークロードやアグリゲートがたくさんある場合は、それぞれについて同様に割り当てを行ってください。
以下のようにworkload 1が2つのアグリゲートに50%ずつ割り当てられていることが確認できます。これで性能値を算出する準備が整いました。

上記赤枠内の”Revalidate System”をクリックするとこのシステムで出せる最大性能が算出されます。


また、ワークロード内で設定したスループットやIOPSの値が最大性能を上回るような場合は、この構成では設定したスループットやIOPSに対応できないというエラーが表示されます。
以上で、Fusionのリバースサイジングによる最大性能の算出方法の概要説明はおしまいです。
なお、サイジング結果をレポートとして出力することができます。”REPORTS”をクリックして”Technical Proposal”を押すとサイジング結果のレポートがTechnical Proposalとして生成されます。

生成されたTechnical Proposalは下記の赤枠のところをクリックするとダウンロードできます。

Technical Proposalにはサイジングに当たって入力した項目の値や、ドライブの容量、RAID構成などの詳細情報のほかに消費電力などの環境情報も含まれています。
Technical Proposalの読み方も含めてFusionのより詳細な使い方については本稿の初めの方でもご紹介した別途ご用意している
『NetApp Fusionの使い方』という資料をご参照ください。
さて、次回はネットアップの話しをベースにしつつストレージでよく出てくる一般的な基礎技術のお話しでもさせていただこうかなと考えています。
