本記事では、ここ数年「ハイパーコンバージドインフラ」の世界で急成長している「Nutanix」という製品について紹介したいと思います。
「Nutanix」を使うと、数万人が利用する仮想デスクトップ基盤のような大規模なインフラでも素早く設計してシンプルに構築することが可能になります。
AWSやAzureなどの「パブリッククラウド」の利用が拡大している昨今ですが、こちらは「オンプレミス環境」な「プライベートクラウド」のお話になります。
記事のカテゴリは「Cloud」ですがAWSは登場いたしません。 あしからずご了承ください。
インフラ畑ではない人には聞きなれない言葉かもしれません。
Nutanixを紹介する前に、まずは「ハイパーコンバージドインフラ」と「従来型のインフラ」の違いについて説明します。
従来型の基盤インフラには下記の3点が必ずと言っていいほどセットでついて回っていました。
・サーバー本体
・外部ストレージ装置
・ストレージネットワーク(SAN)
そして、この3点は下記のようにそれぞれ別のベンダーの製品が利用されているケースが多いと思います。
「サーバ」「ネットワーク(SAN)」「ストレージ」それぞれの部品の接続を論理的に表すと、下記のような3層構造型となることが多いため、従来型のインフラは「3-Tier(階層)」なんて呼ばれたりもしています。
従来型の3-Tierな基盤には下記の欠点があります。
・各製品のベンダーがバラバラであることが多いため、障害発生時などベンダーによるサポートが必要な時は各製品ごとに別々の窓口に問い合わせなければならない。
→窓口ごとに問い合わせの方法が異なるため、運用管理のコストが増える。また、原因が特定できなかった場合に別の窓口へたらい回しにされてしまうこともある。
・各製品が”密結合”となっているため、メンテナンスや拡張作業がシステムに与える影響の範囲が大きい。
→ストレージ部分だけの増設であっても、サーバーを含めたシステム全体を停止して作業を行わなければならず、作業工数と休日出勤の回数が増える。
・各製品(サーバー/ストレージ)の構築を別々のチームが担当している場合、チーム間の密接な連携が必須。
→設定変更などの作業が”依頼ベース”になり、管理コストが増える。また、作業完了まで時間がかかる。
先ほどあげた3-Tierの欠点は「サーバー」と「ストレージ」が別々の装置として存在していることが原因で生じているため、欠点を解決するための答えの一つが「サーバーとストレージを1つに統合してしまう」ということです。
乱暴な言い方ではあるのですが、「サーバー」と「ストレージ」を一つの装置に集約してしまうことで、自動的に装置間を接続する「ネットワーク(SAN)」は必要なくなります。
では、「サーバー」と「ストレージ」をどうやって”物理的に”集約/統合するかというと、従来のサーバー装置本体(2Uとか3Uサーバーと言われているもの)の構造を変更して、装置本体に大量のディスクを搭載できるようにしています。下図は、ハイパーコンバージドインフラのハードウェア構成の一例(2Uサイズのサーバー筐体に各コンポーネントを集約した例)です。
旧来の3-Tier型のインフラでは、サーバーは1U~3U程度の大きさの筐体に計算装置(マザーボード+CPU+メモリ=ノード)を1セットと記憶装置(ディスク)を2~3本搭載し、本体内蔵のディスクはサーバーのOS領域としてのみ利用して、業務データはすべて大型の外部ストレージに保存するという考え方が一般的でした。
ハイパーコンバージドインフラの世界では、製品によって違いはありますが1つのサーバ筐体に計算装置を2~4セット、記憶装置を12本~24本程度程度搭載し、業務データは外部ストレージではなくサーバー本体内蔵のストレージに保存します。上図のイメージでは、1つのサーバー筐体に計算装置を4セット、記憶装置を24本搭載しています。
また、記憶装置はハードディスクとSSDを組み合わせたハイブリッドストレージ、もしくはすべてSSDのオールフラッシュストレージとなります。
“コンバージド(Converged)”には「統合」や「集約」といった意味があります。では、その前にくっついている”ハイパー”は何を意味しているのでしょうか。
“ハイパー”を直訳すると「超○○」といった意味になりますよね。スーパーサイヤ人の”スーパー”よりもさらに一段階上の言葉なのでなおさら凄そうに聞こえますが、ここでは”高い次元で(もしくは「高度に」)”というニュアンスで訳すのが適切だと思います。
「サーバー」と「ストレージ」の機器が物理的に集約されていても、その設計や構築、そして管理がまったく別々に行われていては管理コストを含めた工数の節約にはなりません。そのため、ハイパーコンバージドインフラ製品では「サーバー」部分と「ストレージ」部分を”まとめて面倒を見ることができるソフトウェア”を搭載しています。また、従来は「ストレージ」の役割であった「データの可用性の担保(≒RAID)」も”ソフトウェア”によって実現しています。RAIDボリュームやLUNの設計といった、従来のストレージ設計では必須の作業の不要になります。
(ストレージのデータ保護をソフトウェアで実現する詳しい仕組みについては、機会があれば別の記事で紹介したいと思います)
この”まとめて面倒を見ることができるソフトウェア”によって、ハイパーコンバージドインフラ機器は「耐障害性のある大容量のディスクを備えたサーバの集まり」として扱うことができます。冒頭の「3-Tierの例」で示したような複数の「サーバー」「ネットワーク(SAN)」「ストレージ」を論理的なプール/クラスタに束ねて、一つのコンソールですべて構成要素を管理することができるようになります。
従来はまったく別々に管理されていた「サーバ」「ネットワーク(SAN)」「ストレージ」を”高い次元(hyper)”で”一つに統合(converged)”しつつ、ストレージの可用性担保も行うことで、インフラ基盤の設計、構築、管理コストを削減することを目指したソリューション、それが”ハイパーコンバージドインフラ”です。物理的なインフラの構築は、下図のようにサーバーを複数並べてネットワーク(LAN)で接続するだけで済んでしまいます。初めに紹介した3-Tierのイメージと比較すると、ずいぶんとシンプルになったと思いませんか?
前置きが長くなってしまいましたが、ここからようやく本題です。本記事で紹介する「Nutanix」とは、実は先ほどの前置きで紹介した「サーバー」と「ストレージ」を”まとめて面倒を見ることができるソフトウェア”そのものなのです。
NutanixはAOS(Acropolis OS)を中心に、様々なソフトウェアの集合体として構成されています。下記はその一例です。
- AOS(サーバとストレージを統合管理し、Nutanixの核となるLinuxベースのOS)
- DFS(ソフトウェアベースの分散ファイルストレージ)
- PRISM(Nutanixを管理するためのWebベースのUI)
- AHV(Linux KVMをベースとした無料で利用可能なハイパーバイザ)
- Nutanix Files(ソフトウェアベースのNASソリューション)
- Nutanix Volumes(ソフトウェアベースのブロックストレージサービス)
- ASync DR(遠隔地保管と災害対策のためサービス)
上記のように、Nutanixのソリューションはインフラの統合管理だけに留まりません。サーバー上のデータは「DFS」の仕組みによって完全に保護され、インフラ上でゲストOSを稼働させるために必要なハイパーバイザや、仮想デスクトップ基盤を構築する場合に必須となるファイルサーバ(NAS)を実現するためのソフトウェアもすべて含まれています。
なお、ハイパーバイザ(AHV)は必要であればVMWareやHyper-Vなど、サードパーティベンダーのものに入れ替えることも可能です。
これらのソフトウェアをうまく使えば、NASやバックアップ装置を追加で導入することなく、Nutanixだけでインフラ基盤構築に必要な機能をすべて実装できます。
「Nutanix」の実体は「ソフトウェア」ですが、基本的にはハードウェアにインストールされた状態で「アプライアンス製品」として販売されています。
「アプライアンス製品」であることの利点は、「ソフトウェア」と「ハードウェア」をまとめてサポートできるということです。また、この「ハードウェア」には「サーバー」と「ストレージ」の両方が含まれます。
3-Tierなインフラの欠点の一つに「製品サポートがすべてばらばらであるため管理コストが増える」というものがありました。Nutanixではすべての要素が一つに統合されているため、サポート窓口も一つに集約されます。
つまり、原因がハードウェア起因でもソフトウェア起因でもトラブルは常に同じ窓口に相談すればよいということになります。これは管理コストの削減とともに、障害の早期解決にもつながる大きな利点となります。
3-Tierで基盤を構築する場合、「サーバー」「ネットワーク(SAN)」「ストレージ」のそれぞれの要素について個別にサイジングする必要がありました。
Nutanixを使ってインフラを構築する場合、サイジングで考えるのは「Nutanixの入ったサーバーを何台買うか」ということだけです。弊社が構築を担当したある案件では、15000人程度のユーザーが見込まれる仮想デスクトップ基盤(VDI)をおよそ250台のNutanixを使って構築しています。
Nutanixをはじめとしたハイパーコンバージドインフラの基本は「スケールアウト」ですので、設計ではインフラの規模に合わせて「サーバーを買う台数」を決めます。もし、容量や処理性能が足りなかったら、後から新しくサーバーを購入して追加すればよいのです。
3-Tierと違い、「サーバー同士がネットワーク(LAN)でつながっているだけ」の”疎結合”ですので、システムを止めることなく柔軟に規模を拡張できます。(GUIから数クリックで完結しますよ)
また、逆に処理能力が過剰であれば「サーバーを削除」して台数を減らすことも可能です。なんとスケールインもシステムを止めることなくできてしまいます。(もちろん、制約はありますが)
これは、3-Tierではまず不可能な芸当です。
ハイパーコンバージドインフラ製品である「Nutanix」でインフラを作ると、下記のようにシンプルに設計・構築できます。
- 「サーバー」と「ストレージ」が物理的にも論理的にも”高度に”統合されており、一つの管理コンソール(PRISM)からまとめて管理/運用できる
- 「ストレージ」に関する設計(RAIDグループやLUNなど)がすべて不要になる
- サポート窓口を一つに集約でき、運用管理にかかるコストを削減できる
- 柔軟なスケールアウト/スケールインが可能であるため、システムを止めることなく構成が変更できる
特に「ストレージ」の設計/構築/管理コストを丸ごと削減できるのはとても大きなメリットになると思います。