Learning?

Nutanix バイブル:

Bible Mr.Steven Poitras

[1].Intro.

Nutanixバイブルへようこそ!。 筆者は、日々Nutanix Platformを使用して働いています。即ち、私の商用化に向けたベンチマーク・ラボのためにそれを管理するのと同様、問題を見付け出し、それをその限界を極めています。 このページは、私自身とNutanixの様々なEnineer達により日々使用されている情報と細工を示す日々更新されている文書です。 この文書はまた、Advanced Nutanix seriesの一部として議論される項目の纏めも含んでいます。

注:この資料は正式の参考資料では無いため、ご自分のリスクでご利用下さい。 尚、この資料は適宜更新されます。

[2].Book of Nutanix.

(1).Architecture.

Edit

Nutanixのソリューションは、統合されたストレージ(storage)とコンピュート(compute)であり、ローカルな構成要素を利用して、ヴァーチャリゼーション(即ち, 仮想計算(Virtual Compute)プラットフォーム)のための分散プラットフォームを作り出す。 このソリューションは、ハードウェアとソフトウェアを纏めたアプライアンスとなっており、2Uのフットプリントの中に2ノード(6000/7000シリーズ)、もしくは4ノードを収容している。

各ノードは、業界標準のハイパーバイザー(現時点でESXi?, KVM?, Hyper-V?)とNutanix VM(CVM)を実行している。 Nutanix CVMは、Nutanixソフトウェアを実行し、hypervisorとホスト上で実行される全てのVMのためのI/Oオペレーションの全てを取り扱う。*1 VMware vSphereを実行しているNutanixユニットにとって、SSDとHDDデバイスを管理しているSCSIコントローラは、直接にVM-Direct Path(Intel VT-d)を利用しているCVM?へ直接渡される。Hyper-V?の場合、ストレージデバイスはCVMへ通過する。

以下は、典型的なノードを論理的な様子の例である。

<<Fig1-01>>

NodeArchitecturalView

Nutanixノードのグループは、Nutanix Distributed Filesystem(NDFS)と呼ばれる分散プラットフォームを構成する。 NDFSは、hypervisorからは、集中化されたストレージ・アレイの様に見える。 然しながらI/Oの全ては最高性能を提供するためにローカルに処理されている。 分散システムをこれらのノードがどの様に構成しているのかと云うことのより詳細は、以下の見出される。

以下は、Nutanixノードがどの様にしてNDFSを構成しているのかの例を示している。

<<Fig1-02>>

NDFS

Edit


Edit

Nutanixプラットフォームは、概念的には以下の様な要素より構成されている。

<<Fig.1-02-01>>

CvmComponentArchitecture

Edit


Edit

Nutanix Distribution Filesystemは、概念的には以下の様な構成要素で構築されている。

以下は、どの様に、これらがNDFSとhypervisorの間のマップしているかを示す。

<<Fig-01-03-01>>

NDFS-hypervisorMapping

以下は、様々なファイルシステムの間でこれらの構造要素がどの様に関連しているかを示している。

<<Fig-01-03-02>>

Ndfs

以下は、様々なファイルシステムの間でこれらの構造要素が論理的にどの様に関連しているかを示しているもう一つの図式表現である。

<<Fig-01-03-03>>

Ndfs

EditNutanixバイブル


Edit

Nutanix I/Oパスは、以下の構成要素より成る。

<<Fig.01-04-01>>

ExtentCace

以下に、Content Cache?の概要を示す。

<<Fig-01-04-02>>

ContentCache

EditNutanixバイブル


(2).How It Works.

Edit

以下のビデオを併せご参照下さい。

Nutanix Platformは、現在、resiliency factor 即ち replicaton factor(RF)とchecksumを 用いて、node,diskの故障や機能低下が発生した場合にdataの冗長性と有効性を保障している。 上記に述べた通り、OpLogは、低遅延のSSD tierへの書込み発生を吸収するための処理の段階と なる。 hostへの書込みに成功した事を知らせるacknowledge(ack)が発行される前に、 ローカルなOpLogに書込まれる時に、dataは同期的にRFの値に依って他の1つ或いは2つのCVMOpLogに 複製される。

この仕組により、少なくても2~3箇所の独立した異なった場所にデータが存在しているため、 障害に耐性があることを意味している。

注) RF3を実現するためにはmetadataはRF5となるため、最低5nodeが必要となる。Data RFは、 PRISM経由でコンフィグレーションが行われ、コンテナレベルで実現されている。

いかなる"ホットノード"も除外しスケールがリニアに実現されることを保障するために、全てのnodeが OpLogの複製に参加している。 dataが書込まれている間にchecksumが計算され、metadataの一部として 保存される。 そして、dataは、RFが暗黙のうちに維持されているextent storeは、非同期的に書出される。 node或いはdiskに障害が発生した場合、dataはRFを維持しているため、クラスター内の全nodeにわたって 再度複製が作られる。 dataが読取られる時は常に、dataが正しいものであることを保障するために checksumが計算される。 checksumとdataが、一致しない様な事態が発生した場合、複製からdataが 読み出され正しくない複製を置換える。

以下の図は、この仕組が論理的にどの様な見え方をするのかを表している。

<<Fig.2-01-01>>

Fig.2-01-01

EditNutanixバイブル


Edit

computeとstorageが統合されたplatformとして、I/Oとdataの局所性は、NutanixのclusterとVM performanceにとってkeyである。 先にI/Oパスのセクションで説明した通り、全てのread/write I/Oは、通常のVMの近隣にある各hypervisor上にあるローカルなCVM(Controller VM)により処理される。 VMのデータは、CVMからローカルにサービスを提供され、CVMの制御下にあるローカルディスク上に保存される。 VMが1つのhypervisorから他のhypervisorへ移動する時(或いはHAが発生している間に)、新たに移動したVMのデータは今度は新たにローカルになったCVMによりサービスが提供される。

(マイグレーションの発生によりリモートnode/CVM上に保存されている)古いdataに対するreadが発生した時、I/Oは、ローカルCVMにより リモートCVMに転送される。 全てのwrite I/Oは、直ちにローカルに実行される。NDFSは、自分以外の異なったnodeから 発生したI/Oを検出し、全てのread I/Oがそれ以降ローカル ノードで実行される様にデータをバックグラウンドで移動する。 必要以上にネットワークを溢れさせることが無い様に、データの移動はreadが発生した場合にのみ行われる。

VMが、hypernvisor 間を移動した場合に、どの様にデータがVMの移動に追従するのかを以下に説明します。

<<Fig.2-02-01>>

Fig.2-02-01

EditNutanixバイブル


(3).Administrateion.

<<TO BE TRANSLATED IN THE FUTURE.>>

[3].Book of vSphere.

<<TO BE TRANSLATED IN THE FUTURE.>>

[4].Book of Hyper-V.

<<TO BE TRANSLATED IN THE FUTURE.>>

[5].Revision.

<<TO BE TRANSLATED IN THE FUTURE.>>

Learning?


*1 訳者注:実際は、殆どのStorage I/OとNetwork I/O
*2 Cassandraは、トロイ戦争に出てくるトロイの王女の一人。アポロンにより正しい予言をするが誰も信じない様に呪いが掛けられた。
*3 Browserによって表示される。詳細はAdministrationのセクション参照。
*4 ギリシア神話の時の神。ゼウスの父神。
*5 Pithosは、古代ギリシアの保存用の壺のこと。アンフォラより大き目らしい。

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS