ティントリの自動QoSは機械学習で複雑な入出力パターンに適応しています

羽鳥 正明

ティントリジャパン合同会社 マーケティング本部 マーケティング本部長

ティントリの自動QoSは、機械学習アルゴリズムを使用して、混在したI/O環境下において性能を保証します。

 


ここで知っていただきたいこと

  • 一般的なストレージに実装されるQoSはLUNまたはボリュームレベルでのみ機能し、I / Oの「上限」は設定できますが、下限は設定できずパフォーマンスは保証されません。
  • ティントリの自動QoSは個々のVM単位で機能し、すべてのVMのパフォーマンスレベルの「上限」と「下限」を保証できます。
  • QoSの効率を高めるために、自動QoSは機械学習を使用して個々のVMキューからのI / Oをスケジュールし、ストレージリソースを最適に活用します。

Tintriオールフラッシュストレージの重要な特長として、独自のQoS(Quality of Service)手法が挙げられます。VMレベルで自動的に動作し、ストレージを自立運用させるためのベースとなります。インフラストラクチャー、クラウド、および開発チームを日常的な管理から解放し、より高度な業務に携わることができます。

ストレージQoSの課題を克服する

インフラの合理化や自動運用による業務の合理化に取り組むIT部門が増えています。様々なワークロードを扱うストレージにおいて、予測可能なパフォーマンスを提供できない場合、得てしてオーバーサイジングすることでリソースに余裕を持つことで問題を回避することが見受けられます。

一般的なストレージに実装されているQoSには、次のような制限があります。

  • パフォーマンスの上限しか設定できない:パフォーマンス過多なワークロードを制限できますが、その他のワークロードのパフォーマンスを保証することができません。
  • それらはLUNまたはボリューム単位で設定する:一般的なストレージのLUNには数十台または数百台の仮想マシンが同居されます。よって内部の個々のVMに対するQoSの影響を予測することは困難です。これを回避して仮想マシンごとにQoS設定を行うには、LUN内に1台の仮想マシンだけ配置するしかありませんが膨大な人手がかかり、運用後も管理が大変になります。

ティントリは上記の制限をクリアしています。

  • VMごとのパフォーマンスの分離。Tintri QoSスケジューラーは、各VMが要求するI/Oのサイズとオーバーヘッドを確認し、各VMのI/Oキューを維持します。各キューから流れるI/Oはスケジューリングされ、リソースが公平に割り当てられるようにします。
  • VM単位のパフォーマンス保護。最小と最大のパフォーマンスを個々のVMで設定し、細かい制御を行うことができます。

これによって、いわゆる「うるさい隣人(Noisy Neighbours)」問題が発生しなくなります。ストレージは人手を介することなく常に高いパフォーマンスを発揮することができます。また、必要に応じて特定のVMに特定の制限を設定できます。ティントリは、システムレベルから個々のVMまたはコンテナのレベルまでI/Oパフォーマンスを最大限に向上させ、予期しない過剰なI/Oによるストレージのパフォーマンス低下は最小限に抑えられます。

複雑なI/Oワークロードにどのように対応できますか?

VM内で実行されているさまざまなアプリケーションは、I/Oパターンがそれぞれ異なります一部のアプリケーションは大きなチャンクでデータをストリーミングしていることがあれば、小規模のランダムなトランザクションI/Oを実行しているアプリケーションもあります。一部のアプリケーションは書き込み比率が高く、他のアプリケーションは主に読み込みを行います。これらのさまざまなI/O特性があってもティントリであればパフォーマンスに影響が出ません。もちろん、すべてのストレージシステムは、提供できる容量やパフォーマンスに上限があります。ティントリの場合は、パフォーマンスリソースをより正確かつ効率的にメーター表示し、高いストレージ利用率を維持できます。

混合型I/Oに対応する機械学習の使用

では、ティントリは、一度にスケジュールする作業の量をどのように設定するのでしょうか?似たようなI/O要求を行うVMをまとめて設定した場合は、スループットを最大にするものを見つけるために、さまざまなキュー深度で達成されるスループットを単純に測定します。

I/O要求がさまざまなである(読み取り/書き込み、小/大)場合の処理は複雑になります。ティントリは「線形回帰アルゴリズム」を使用して、最適なスループットを達成するためにI/Oのサイズとタイプの異なる要求の数を推定します。

さまざまなタイプの要求はCPUやメモリーなど、いくつかのリソースを共有することもあれば、別々のリソースを使用することもあります。たとえば、Write要求のみがNVRAMを使用するような場合です。スループットは、要求の組み合わせが異なるリソースを使用する場合、要求が共有リソースと加算を使用する場合に比例します。よりスマートなスケジューリングを使用することで動的に変化するI/Oパターンに安定したパフォーマンスを実現できます。

パフォーマンスデータの直接的な可視性

Tintriのパフォーマンス上の利点の1つは、Tintriアナリティクスを使用するとパフォーマンス情報をすべてVMレベルで見える化できることです。VM全体のアクティビティを簡単に比較できるだけでなく、ストレージシステム全体への影響も把握できます。このレベルの視認性を提供する他のオールフラッシュアレイはありません。

優れたQoSのために機械学習を使用して複雑なI / Oパターンに適応

ストレージパフォーマンスに対するスマートなアプローチ

ティントリを利用することで、とてもシンプルかつ簡単なストレージ管理が実現します。自動QoSによりティントリ上で動作する全てのVMが安定かつ良好なパフォーマンスを発揮します。Tintriスケールアウトを使用して環境全体を最適化する事が可能です。

Tintriスケールアウトは、VMの配置を最適化するための将来の容量とパフォーマンスのニーズを正確に予測します。その結果ティントリは自律的に動作し、パフォーマンスのチューニングをほとんどまたはまったく行わない状態でもパフォーマンスが向上し、ストレージ環境を常に最適な状態に保つための賢明な予測の推奨を行います。自動QoSとVMスケールアウトによって、独自の要件に対応するきめ細かな制御を提供するのです。