Tintriの自動QoSは機械学習で複雑な入出力パターンにも適応する”自動運転”を実現

Tintriの自動QoSは機械学習で複雑な入出力パターンにも適応する”自動運転”を実現

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


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

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

このブログでご紹介する内容は、10月13日開催のWebセミナーにても詳しく解説しますのでぜひご参加ください。

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

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

DXを支えるインフラには常に最適なパフォーマンスが求められます。様々なワークロードを扱うストレージにおいて、予測可能なパフォーマンスを提供できない場合、得てしてオーバーサイジングすることでリソースに余裕を持つことでパフォーマンス問題を回避することが見受けられます。

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

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

Tintriは上記の制限をクリアしています。

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

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

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

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

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

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

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

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

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

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

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

Tintriを利用することで、とてもシンプルかつ簡単なストレージ管理が実現します。自動QoSによりTintri上で動作する全てのVMが安定かつ良好なパフォーマンスを発揮します。さらに、Tintriでは、Tintriスケールアウトを使用して、複数のVMstoreがある環境においても全体を最適化することが可能です。Tintriスケールアウトは、ストレージ環境を常に最適な状態に保つための賢明な予測の推奨を行います。自動QoSとVMスケールアウトによって、独自の要件に対応するきめ細かな制御を提供します。手動によるパフォーマンスのチューニングは不要なのです。

Tintri VMstoreは、機械学習を使用して個々のVMキューからのI / Oをスケジュールし、ストレージリソースを最適化する自動QoSと、環境全体を最適化する Tintriスケールアウトによって、コスト効果にも優れた、まさに自律運用ストレージと言えるでしょう。