だいぶご無沙汰しています。
とある案件をきっかけに、社内ではNutanix & Azure屋が定着してしまいました。
オンプレ自作の魂の結晶のような働き方をしていましたが、環境が変われば人間変わるもんだなと思いました。
さて、昨今Nutanixを皮切りに各社からリリースされブームが巻き起こっている「ハイパーコンバージド」と称されるアプライアンス類ですが、ブームに半して個人的に心配していることがあります。
それはハイパーコンバージドと呼ばれているコンセプトを理解せず、「コストが安い」「拡張性がある」「ハイブリット構成が作りやすい」など、メリットや機能面ばかり押し出していて、本来目指すべきであるゴールを考えている人(考えられる人)がまだまだ少ない点です。
ついでにNutanixに限って言えば、アーキテクチャを理解してる(できる)人も少ないです。まあこれはエンタープライズな現場にいるせいかも。
でまあ、例えば以下のような矛盾を指摘します。
・コストが安い
別に安くないし、同じ容量で安いストレージならソフトウェア + IAサーバとかでよければいっぱいある。
有名なところだと例えばRAIDIXとか。
そうじゃないねん。
・拡張性がある
スケールアウト型のストレージなんていっぱるあるがな。
・ハイブリットなクラウド構成が作りやすい
これは同意。でパブリッククラウド使えるの?
あと勘違いで多いのが、クラスタで「CPUとメモリを共有できる」というのも多いです。
Nutanixに限って言えばあくまでストレージです。
CPU、メモリは物理ホスト上のみでしか展開できません。
ものすごーーーい複雑にできてるものを簡単に見せてるので、アーキテクチャや概念を理解しないままではミスマッチしか起こしません。
自分は日本のIT業界の歴史からこの懸念をすごい持っています。
とりあえず仮想化だけしておけばええやろ、みたいな。
では現場レベル、設計や運用者からみたハイパーコンバージドとはなんなのか。
自分は、「ソフトウェアの実装によるハードウェアレイヤーを抽象化すること」と説明しています。
自前で持つパブリッククラウドに近い感じですね。
実際ものの値段みた感じNutanixの大半ってソフトウェアと保守費用だと思います。
ハードウェアの抽象化って、うちのグループの某部隊もそうですが、物理コアとvCPUの数合わせるとか、ストレージの容量をLUNのパーティショニングで決めるとかやってる人々には、異次元の世界なんですね。
自分は仮想化を日本型と欧米型の二種類に勝手に分類しています。
日本型は仮想化するにも関わらず、大事なことだから2回と補足をつけて言いますが、VMwareのサイジングガイドなんぞ無視して、物理コア = vCPUという分けのわからないサイジング方式が根付いてるため、仮想化するコスト的なメリットが薄いです。
実際リソースはだだあまりしています。
(ライフサイクル運用が楽になるだろとかは後述)
上記日本型に対して欧米型は「リソースのプール化」が目的です。
欧米型はだだあまりしているリソースをプール化して有効活用してしゃぶりつくそう、というのが目的です。
これがハードウェアを物理の制限から解放する物理リソースのプール化です。
自分はこれを真の仮想化のメリットととらえています。
なので、日本のエンタープライズSEが好んで実行しているリソース分割型の手法では、そもそもハイパーコンバージドという考え方はマッチしません。
随時必要な時に必要な、CPU、メモリ、ストレージを足していって無限に拡張できる、これがハイパーコンバージドの目的と自分は考えます。
実際現場でみていると、ハイパーコンバージドとリソースプール化の概念をもっているSEは出会ったことがありません。
予算が組めないよーっておっしゃる人もいると思いますが、以下の2パターンどちらがいいと思いますか?社風もあわせて考えてみてください。
・一括で予算を決めて5年間はなにがあっても走り切る、そしてその後また同じ大規模リプレース後基盤移行作業
・1年ごとに予算を決めて小さい規模で拡張とリプレースをし続ける、基盤自体の移行作業は不要
という残業して帰ってきて疲れてかいた駄文でした。
Nutanixはいいぞ。(すくなくとも自分にはあってる)
あと仮想化にまかせた冗長化は微妙だからアプリレベルでも確保したほうがいいよ!