本記事の原文はNutanixコミュニティのブログNutanix Connect Blogの記事の翻訳ヴァージョンです。原文の著者はNutanix社のSoftware EngineerのFelipe Franciosi氏によるものです。原文を参照したい方はThe Wait is Over: AHV Turbo is Here!をご確認ください。情報は原文の投稿時のままの情報ですので、現時点では投稿時の情報と製品とで差異が出ている場合があります。
当社のNutanix社製品についてはこちら。本ブログのNutanix関連記事のまとめページはこちら。
ネットワールドのNutanix関連情報はぜひ以下のポータルから取得ください(初回はID、パスワードの取得が必要です)。
Nutanix OSの次なるリリース、5.5の最もホットな機能の一つは我々の.NEXTイベントで多くの方が耳にされたはずのAHV Turboテクノロジーです。このソリューションを実現しているキーとなっているのが我々の社内ではFrodoと呼ばれているコンポーネントです。この記事ではこのFrodoがどのようにストレージデータパスに入っており、今日市場で利用できる他のストレージ仮想化エンジンとどのように異なっているのかをご紹介していきます。
従来、AHVは仮想マシンを単一キューのVirtio-SCSI PCIコントローラーとして取り扱っていました。これはディスク数や仮想CPU数とは関係なくゲストOSは最大で同時に128のリクエストしか発行ができないということを意味します。加えて、この単一データ構造はハイパーバイザー側からは単一スレッドでしか管理ができませんでした。このモデルは他のハイパーバイザーと対して差はありません。
このアーキテクチャはほとんどの状況においては本当にうまく動くのですが、高いスループットやIOPSレートの場合、限界が見えてきます。近年のNVMeのようなハードウェアやRDMAの採用が増えるにつれ、これが心配になってくるのです。他のハイパーバイザーはこの問題をそれぞれのゲストOSにより多くの仮想化コントローラーを割り当てることで回避しています。しかし、このソリューションは単一仮想ディスクのパフォーマンスを改善するものではなく、単に仮想マシンの構成に複雑さをもたらすものです。加えて、実際のハードウェアを考慮した上で、本来行わなければならないものでもありません。
NVMeコントローラーから初めましょう、単一ドライブで数十万ものIOPSが提供されます。こうしたレベルのパフォーマンスを実現するためにはこうしたドライブのそれぞれを複数のハードウェアキューがあるものとして取り扱わなければなりません。つまり、オペレーティングシステムがマルチキューのブロックレイヤの提供をサポートしなくてはならないのです。これによってスタック全域に渡るより良い拡張性が実現できます : アプリケーションはマルチキューに対して並列でIOを投入できますし、それと同時に、ハードウェアはそのキューをこれまた同時に処理することができるのです。
実際のハードウェア上でもしそれがうまく動いているのに、どうしてハイパーバイザーはそれに追従しないのか? AHVは追従しました。
Frodoは仮想マシンへのVirtio-SCSI PCIコントローラーの提供を行う、新しいAHVのコンポーネントです。これまでのゲストの問題で唯一変わっていることは、コントローラーがマルチキューになったということです。ですが、ハイパーバイザー側ではFrodoはより効率的に、そしてマルチスレッドを使って異なるキューを並列で処理できるように設計されています。
これを実現するために、FrodoはNutanix上で動くために特別な設計になっています。マルチスレッドでリクエストキューを並列で処理するために、それぞれのスレッドも非常に効率化されています。まず最初に、FrodoはリクエストがSCSIコマンドであるということを理解しています。ですから、Frodoは一切の処理を行うこと無く、コマンドを直接CVMへと渡します。これはCVMもまたこのプロトコルをサポートしているからです。続いて、仮想キューがスレッドへとマッピングされ、これによってインテリジェントなリクエストのバッチ処理が行えるようになり、更に通信もまた効率的なものとなります。最後に、AHVに完全なデータパスのコントロールを委ねることができるようになります。これは将来の多くの可能性のための基盤のレイヤ化ということになるでしょう。
上のグラフはNX-3060-G5のオールフラッシュ構成での4KのランダムReadリクエストのIOPSを取ってきて比較したものです。8 vCPU、16GBのメモリ、6つの仮想化ディスクで構成された単一の仮想マシンでの驚くほどの数字のパフォーマンスの向上を示しています。Frodoによってパワーアップした仮想マシンは180K IOPSに届くほどのパフォーマンスを示しているのに対してQemuを使っている仮想マシンは80K以上になることはありません。
Frodoの開発はAHVに対して何故Nutanixが投資を行っているかということの素晴らしい例です。Nutanixがスタック全体をコントロールするとなれば、その可能性は無限大なのです。
結論として、Nutanix AHVは今日においても素晴らしいハイパーバイザーです。AHV TurboはNutanix Enterprise Cloud OSが次世代の技術、例えばRDMA、NVMe、3D XPointなどから多くのメリットを享受できるようにするために作られています。
もし何か気になる点や疑問点があれば、 フォーラムでこの続きをお話しましょう。投稿にはAHVTurboというタグを付けることを忘れないでください。
Forward Looking Statements
This blog includes forward-looking statements, including but not limited to statements concerning our plans and expectations relating to product features and technology that are under development or in process and capabilities of such product features and technology and our plans to introduce product features in future releases. These forward-looking statements are not historical facts, and instead are based on our current expectations, estimates, opinions and beliefs. The accuracy of such forward-looking statements depends upon future events, and involves risks, uncertainties and other factors beyond our control that may cause these statements to be inaccurate and cause our actual results, performance or achievements to differ materially and adversely from those anticipated or implied by such statements, including, among others: failure to develop, or unexpected difficulties or delays in developing, new product features or technology on a timely or cost-effective basis; delays in or lack of customer or market acceptance of our new product features or technology; the introduction, or acceleration of adoption of, competing solutions, including public cloud infrastructure; a shift in industry or competitive dynamics or customer demand; and other risks detailed in our Form 10-K for the fiscal year ended July 31, 2017, filed with the Securities and Exchange Commission. These forward-looking statements speak only as of the date of this presentation and, except as required by law, we assume no obligation to update forward-looking statements to reflect actual results or subsequent events or circumstances
Disclaimer: This blog may contain links to external websites that are not part of Nutanix.com. Nutanix does not control these sites and disclaims all responsibility for the content or accuracy of any external site. Our decision to link to an external site should not be considered an endorsement of any content on such site.
© 2017 Nutanix, Inc. All rights reserved. Nutanix, the Enterprise Cloud Platform, the Nutanix logo and other Nutanix products mentioned are registered trademarks or trademarks of Nutanix, Inc. in the United States and other countries. All other brand and product names mentioned herein are for identification purposes only and may be the trademarks of their respective holder(s).
記事担当者: マーケティング本部 三好哲生 (@Networld_NTNX)
昨年AHVは次世代ハイパーバイザーです!という記事を沢山投稿してきましたが、最新のAHVにはAHV Turboが搭載されています。ゲストOSの中、ハイパーバイザー、CVMと様々な部分でのチューニングを行っているのですが、メインとなるコンポーネントのFrodoはハイパーバイザー内部で動作しています。
グラフを見ても分かる通り、今後の高速なフラッシュやネットワークを考えるとハイパーバイザー内のオーバーヘッドが大きいものなのか、わかっていただけるかと思います。AHVはそこに真っ先に対応した最先端を走るハイパーバイザーなのです。