皆さん、こんにちは
レノボ・エンタープライズ・ソリューションズ 小宮です。
HCIが各社から出ているかと思いますが、本日は(Lenovoで取り扱っている)HCIの違いについてお話したいと思います。
HCIの比較について
HCIを比較する際、通常は以下のような比較表をよく見かけるかと思います。
こちらの比較表から見るとNutanixの対応ハイパーバイザーが多いなどの面でメリットがある反面、NutanixでESXを利用したい場合はNutanixおよびESXを両面で買わなければならないなど、デメリットがあるとかいろいろとあります。
果たして、HCIをそれぞれのベンダーのコストだけで選ばれることもありますが、本質的にはどのような観点で選択されるのかを考えて提案することが望ましいと思われます。(たとえば以下のような観点で)
- どのような悩みを解決しているのか?
- どのソリューション(HCI)が最適なのか?
- HCIがそれぞれどのように違うのか?
今回は機能面(1-クリックアップグレードなど)での説明ではなく、それぞれのベンダーのアーキテクチャの観点からお話しようと思います。特定ベンダーを推奨することはなく、一つの参考資料として読んで頂ければ幸いです。
基本的な技術を理解しましょう
まずはハイパーコンバージドについて説明します。
1.ハイパーコンバージドはSDS上で動作します
以下の図はホストとストレージ部分に分けて示しておりますが、通常ホストからiSCSI/NFSなどを通じてストレージアクセスすることになります。
上記は単にハイパーバイザーのホストとSDSでの構図になりますが、先ほど話をしたハイパーコンバージドは以下のようになります。
実際にストレージプールを形成しているサーバの中にハイパーバイザーも含むようにしてハードウェアを集約しています。
2.データ保護と高可用性
ハイパーコンバージドのデータ保護と可用性ですが、以下のようになります。
Nutanixの場合、RF2は1台のノード障害、RF3は2台のノード障害を想定しています。
RF2の場合、1台ノードを障害を想定すると倍の容量が必要となります。RF3の場合は3倍になります。ハイパーコンバージドを構成する場合は、共有ディスクで構成するときに比べて容量が必要となります。
3.パリティ処理について
2のデータ保護の説明をしましたが、ハードディスクのRAIDのような構成も取ることができます。その際、RAID5のような構成をとる場合を以下のように示します。
こちらの場合、1.33倍の容量が必要になりますが、実際にReplicationをとるようなデータ保護に比べてデータ容量の効率が上がります。
4.イレージャーコーディング
3のお話した内容になりますが、正確にはエレ―ジャーコーディングと呼ばれております。通常はディスク上にパリティを書き込んで障害時に残りのデータとパリティを元に欠損したデータ算出して完全なデータに生成できます。
こちらはそのレプリケーション(Replication Factor)とイレージャーコーディングで必要な容量と信頼性について記載しております。
5.イレージャーコーディングの修復問題
データ容量の観点においては、Replicationで複製するよりもEraser Codingの方が容量が少なくて済むというお話をしましたが、実際のノード障害時にどれだけの影響があるのかをまとめたのがこちらの資料です。
障害が発生し、修復までに転送されるチャンクがどれくらいになるのかを調べてみると、たとえばチャンクサイズが256MBの場合で一番下のケースで転送されるデータ容量は12x256MB=3GBになります。つまり容量が増えればその分Eraser Codingにしたときは復旧に時間を要することもありますので、どちらを選択するかはサービスレベルによって選択した方が良いと考えます。
6.データの重複排除
最後にデータの重複排除についてです。
データを複数回書き込みした時に重複したデータを書き込まず、追加のポインタのみを格納して容量を削減します。通常はバックアップアプライアンスで利用されていますが、最近ではHCIで利用されています。(重複排除が売りのHCIもあります)
このようにして、データ容量と可用性、また障害時のデータの復旧でそれぞれアーキテクチャが存在します。
次は、各社においてこの違いがどのようになっているのかを説明していきたいと思います。
実装の違いを理解しましょう
1.各社のイレージャーコーディングの違い
ここで各社のHCIのイレージャーコーディングの実装について記載します
それぞれHCIでアーキテクチャの違いがありますが、内容について説明していきたいと思います。
VMwareとNutanixについては先に説明した通りのイレージャーコーディングですが、Microsoftについては、若干異なるので詳細を以下に記載いたします。
2.Microsoftのイレージャーコーディング
こちらでわかる通り、Microsoftについては、ミラーとパリティ付きのボリュームとなっております。イレージャーコーディングに必要なノード数については各社ともに使用が異なります。またMicrosoftのS2Dにおいては必ずReFS(Resilient File System)が必要となります。
つまり、各社HCIを実現するために専用のファイルシステムで必要として、その整合性を保つために、各社チェックサムを用いています。
3.データローカリティとデータの分散
次に各社のデータのアクセスについて説明いたします。
こちらですが、Nutanixのようにデータローカリティで仮想マシンからの書き込みを早く処理させる方式に比べ、Microsoftのアーキテクチャではむしろ分散化することで同時に2つのノードで障害が合ってもデータを復旧できるようなものになっています。もちろんどちらにもメリットはあるので、SLAなどを考えながらどちらを選ぶのか考えても良いかと思います。
Microsoftについては、弊社の過去のブログにも記載がございますので、合わせて参考になって頂ければと思います。
Windows Server 2016 -S2D 導入事例あります! - LTN Blog 〜 Lenovo Technology Network 〜
4.ディスクのハンドリング
次は各社のストレージプールを構成する際にDiskをどのようにハンドリングしているのかを記載します。
こちらについては、それぞれの会社で異なるアーキテクチャになっています。特にSSDの利用は大きく違ってきます。IOPSなどにこだわる場合には一つ考えても良いところです。
5.ポリシーの違い
次に説明するのはポリシーの違いについてです。
Nutanix/Microsoftについてはストレージコンテナ管理で共通ですが、VMwareについては仮想マシンにそれぞれポリシーを適用します。
これを実装することにより影響を受けるのは、バックアップソフトウェアです。データをレストアする際に、ポリシーも含めてレストアを行う必要があります。最近はその対応もできているバックアップソフトウェアも増えてきており、先日ご紹介したVeeamもその対象のベンダーの一つになります。
ハイパーコンバージドに最適なバックアップソフトウェア Veeam Backup & Replicationのご紹介 - LTN Blog 〜 Lenovo Technology Network 〜
6.ディスクのレイアウト
最後に紹介するのは、各社のディスクレイアウトです。
NutanixとMicrosoftの実装は左側で、VMwareが右側になります。
これを見る限りストレージの詳しい方から見た場合、左側の方が管理しやすいと思われますが、仮想マシンをオブジェクトとして管理したりバックアップを行う際は右側も管理方法としては便利に思えるところはあります。
それぞれのアーキテクチャがどのようなものに合っているのかを考慮しながら、HCIを検討してみてはいかがでしょうか。
宜しくお願い致します。