こんにちは。
クロステック事業部 第二クロステックセンター Ao です。

 

ここ数年、社内ではクラウド激推しの流れが続いており、オンプレに光が当たらないことに寂しさを覚えています…
今回は激推しに逆行し、ハイパーコンバージドインフラ(以後HCI)の記事を書いていこうと思います!

本記事では、”そもそもHCIなんて初耳だ”という方向けに、
HCIの簡単な紹介から始め、3-Tierとの比較、HCIの内部構造の概要を説明させていただきます。

目次

  1. HCIとは?
  2. 3-TierとHCIの違い
  3. HCIの内部構造(概要編)

1. HCIとは?

HCI(ハイパーコンバージドインフラ)とは、ストレージ仮想化技術を利用し、ストレージとサーバを統合することで、従来のインフラをよりシンプルに扱うことができる技術及び製品の総称です。

HCIでは、一般的なx86サーバと内蔵ディスクのみで従来のストレージとサーバの役割を果たすことが可能です。
これは、従来のインフラで登場するSANストレージを必要としないことを意味しています。
SANストレージを構築・管理したことがある人からすると、これがどれだけ大きな意味を持つかお分かりいただけるでしょう。
詳しくは次章で解説します。

2. 3-TierとHCIの違い

次に3-TierとHCIの違いを説明していこうと思います。
まずは、物理的な構成の違いを見ていきましょう。

3-Teirでの構成

3-Tierは文字どおり、サーバ・ネットワーク(SAN)・ストレージの3層構造で成り立っています。

ストレージは専用のストレージ機器(D社やH社などの製品)を用意し、
サーバとストレージ間はSAN(Storage Area Network)を介して接続を行います。
なお、単にネットワークスイッチにサーバとストレージを接続すればいいわけではなく、SANを構成するために必要なFCスイッチが必要になります。
かなりザックリ作業を切り出したとしても、ポート結線図の作成、ゾーニングの設計、RAIDの設計、LUNの設定等多くの作業が必要となります。
そのため、SANを設計・構築するには専門知識や工数がそれなりに必要となります。

HCIでの構成

HCIは先述した通り、ストレージとサーバを統合することで、従来のインフラをよりシンプルにしています。
ストレージとサーバの統合は、いわゆるSDS(Software Defined Storage)と呼ばれるストレージ仮想化技術を利用してを実現しています。
また、HWの差でいえば、サーバ筐体の本体に複数のディスクを搭載し、それらのディスクをSDS技術でまとめ上げることで専用のストレージ装置が不要となっています。
なお、専用のストレージ装置が不要となるため、SANを構成するFCスイッチなども不要となります。
そのため、L2/L3スイッチに繋ぐだけでHCIとしては動作可能となります。

ポイントは、前述した通り、各サーバのローカルディスク(内蔵ディスク)をストレージ仮想化技術により1つの論理的なストレージプールとして利用する点です。
1本あたり1TBのディスクを6本搭載したサーバが3台あり、それらのサーバでHCIを構成した場合、約18TBの論理的なストレージが利用できるイメージです。(実際はキャッシュ層とキャパシティ層で分けるため、純粋に足し算した合計容量を使えるわけではない)

また、HCIはノード(サーバのこと)のスケールアウトを行うことで、クラスタ全体の処理能力向上を図ります。
ノードを追加することでCPU、メモリ、ストレージの拡張が可能です。
CPUやメモリだけ拡張したい場合は内蔵ディスクを搭載していないモデルを追加することも可能です。
HCIは、SANの追加設定やストレージの設定などが不要となり、3-Tier構成よりも容易にスケールアウトすることができるのです。
そのため、スモールスタートで徐々に規模を大きくすることができます。
そのような考え方はクラウドチックですね。

物理的な構成以外の違い

3-TierとHCIの大まかな構成の違いはご理解いただけたでしょうか。
HCIは3-Tierに比べ、扱うコンポーネントが減り、シンプルな構成になっています。
これは、見かけ上の違いだけではなく、設計要素や構築にかかる時間、運用・保守のシンプル化が期待できます。
運用・保守の部分でいえば、ストレージとサーバが一体になることで、問い合わせ先を一本化することも可能です。

3-Tierの場合、ストレージはA社、物理サーバはB社、仮想化レイヤはC社など複数ベンダにまたがる

一方、HCIの場合は、ストレージ・サーバ・仮想化の3つを1つのベンダに集約可能
※どのHCI製品を選択するかにより異なります

また、扱う製品が減ることで、運用者が身に付けるべきスキルが少なくて済むこともメリットの1つかと思います。

より細かなHCIの内部構造については、次の章で触れたいと思います。

3. HCIの内部構造(概要編)

HCIといっても、すべてのHCI製品が同じ内部構造をしているわけではありません。
各製品によって内部構造が異なる場合があります。
本章では、ストレージI/Oをコントロールするコンポーネントの違いに着目して説明させていただきます。
※より技術的な話は後日執筆させていただく予定です

前述した通り、HCIは専用のストレージ装置を持っておりません。
では、どのようにストレージとして機能しているのでしょうか?

ストレージI/Oの制御方法

専用のストレージ装置では、いわゆるストレージコントローラがストレージ装置側に存在し、I/Oをコントロールしていました。
一方、HCIでは専用のVMを用意してストレージI/OをコントロールするパターンとハイパーバイザのカーネルでストレージI/Oをコントロールするパターンの2つに大別されます。

それぞれ絵にしてみると以下のようなイメージになります。
※下図ではストレージI/OをコントロールするVMを”CVM”としています

ハイパーバイザのカーネルにてストレージI/Oをコントロールするアーキテクチャの場合、専用のVMが不要であるため、リソース面(CPU/メモリ等)で有利となります。
VMwareが提供しているvSANは、この構成をとっております。
vSANの場合、ハイパーバイザであるESXiにHCIとしての機能が含まれているため、機能を有効化するだけで利用できるといった点もメリットになります。

一方、専用のVMを用意するアーキテクチャの場合、ストレージI/OをコントロールするVMからストレージへのパスは、ハイパーバイザを経由しません。
仮想マシン(User VM)からストレージI/OをコントロールするVMに対しては、ハイパーバイザを経由して通信を行いますが、ストレージI/OをコントロールするVMからストレージに対してはPCIパススルーなどを利用して直接I/Oを行います。
そうすることで、ハイパーバイザに依存しない構成を実現しています。
NutanixやCiscoが提供するHyperFlexなどは、この構成をとっております。
なお、Nutanixでは、ESXi、Hyper-V、Xen、AHV(※)といったマルチプラットフォームで動作することが可能です。
(※)Nutanix社が開発しているKVMベースのハイパーバイザ
選択の幅といった部分では専用のVMを用意するアーキテクチャのほうが有利と言えます。

両者ともにメリット・デメリットが存在するため、その時々の要件に合わせてHCI製品を選択しましょう。

おわりに

最後まで読んでいただきありがとうございました。
HCIと3-Tierの違いや、HCIのザックリとした内部構造をご理解いただけたでしょうか?
今回のブログでは、HCIの概要をお伝えさせていただきました。
同じHCI技術でも製品によって重複排除・圧縮の仕組みや障害時のリビルドの仕組みなどが異なるため、それぞれの製品の特長を学ぶとより深くHCIを理解できると思います。
各製品については、次回以降のブログで紹介させていただければと思います。

それではまたお会いしましょう;-)