クラウド屋さんになりたい

地方でインフラエンジニアやってます。 仮想環境を含めた広義のクラウド屋さんを目指して、勉強したことや思ったことをゆるく書いてみます。 時代や最新技術の流れに置いていかれないよう、のんびりでもコツコツ頑張りたいなあ。

Nutanixバイブルを読んでみた(3.2 Nutanix AHVの動作の仕組み①)

はじめに

前回に引き続きNutanixバイブルを読み進めていきます。前回の記事はこちら。 cloudshopper.hatenadiary.com

※個人的な勉強メモとなりますので、記載内容について一切の責任は持ちません。
※また、個人的に感じたことは網掛け部分に記載しています。

今日のトピックス

Nutanix Cloud バイブル(日本語版)を読んで内容をまとめてみる。
・本記事の対象は、「Compute」-「AHV」-「3.2 Nutanix AHVの動作の仕組み」の下記1項目。
 ・「3.2.1 ストレージI/Oパス」

ストレージI/Oパス

  • AHVのストレージI/Oパスの特徴
    • 従来のハイパーバイザーとは異なり、軽量なI/Oパスを採用しています。VMにはロー(raw)SCSIブロックデバイスが直接渡されるため、より効率的なI/O処理が可能
    • またバックエンドの処理は全てAOSが担うため、ユーザーはPrismやaCLIのみを意識すればよい
      ⇒Nutanixの目指す「インビジブルなインフラ」の考えに基づく、と理解。

  • iSCSIリダイレクターの動作
    • 各AHVホストに常駐し、Stargate(CVM上のプロセス)の状態を監視
    • ローカルホスト上のStargateが停止すると、他ホスト上の正常なStargateへ自動リダイレクト
    • 復旧時にはローカルホスト上へセッションを戻す

  • コントローラータイプ
    • 推奨するコントローラータイプは、virtio-scsiSCSIバイスのデフォルト)
    • IDEも利用可能だが、あまりお勧めはできない

従来のI/Oパス

  • VM → Virtio-SCSIQEMU → libiscsi → Stargateという流れ
  • シングルスレッド処理やlibiscsiの検査負荷により、非効率な部分がある

Frodo I/Oパス(別名AHV Turbo Mode)

  • Frodoとは、Nutanixが自社開発した高性能なI/O処理パス
  • 従来よりも高スループットや低レイテンシー、低CPU負荷を実現し、AHV向けに特別に最適化されたI/Oパス
  • AOS 5.5.x以降で実装された機能でデフォルトで有効
  • 基本的なパスは従来のI/Oパスとあまり変わりはないが、以下の点が異なる
    • QEMUの代わりにFrodo(vhost-user-scsi)を使用
    • vCPUごとに仮想キューを割り当て、マルチスレッド処理が可能
    • Nutanix独自の軽量libiscsiにより、CPUオーバーヘッドを最大3倍削減

おわりに

今回はストレージ(I/Oパス)の内容ということで、個人的に苦手意識が強い内容でした。ただNutanixバイブルには図解もされていたため、なんとなくでも分かったような気になります。この章にも記載があったとおり、I/Oパスの部分は普段ユーザーは全く意識することのない領域ではありますが、「裏でどういった処理がなされているのか?」はしっかりと押さえておきたいと思います。

「Nutanixバイブル読んでみた」シリーズのリンク集はこちら!よろしければ別の章もご覧ください! cloudshopper.hatenadiary.com