クラウド屋さんになりたい

地方でインフラエンジニアやってます。 仮想環境を含めた広義のクラウド屋さんを目指して、勉強したことや思ったことをゆるく書いてみます。 時代や最新技術の流れに置いていかれないよう、のんびりでもコツコツ頑張りたいなあ。

新ブログ「Nutanixと暮らす」を始めます

はじめに

いつも「クラウド屋さんになりたい」を読んでいただきありがとうございます。これまで本ブログでは検証の作業ログをメインに発信してきましたが、この度、技術の背景や設計思想をじっくり整理するための別ブログを立ち上げました。役割の違いや今後の運用について、新ブログの第1回記事としてまとめましたので、こちらでも共有させていただきます。

これまでは、日々の学習記録として本ブログの方に、Nutanixの基礎知識の整理やNutanix CE(Community Edition)の構築手順、操作手順の確認や動作検証などを書き溜めてきました。しかし、実機を触り、学びを深めていく中で、ある一つの壁を感じるようになりました。

それは、「操作手順(How)をなぞるだけでは、いざという時のアーキテクチャの振る舞い(Why)が本当に理解できたとは言えないのではないか」という思いです。

情報発信の場を分ける

そこで、自分自身の頭の中をよりクリアに整理するために、情報発信の場を2つのブログに切り分けることにしました。

  • 備忘録・検証ログ:「クラウド屋さんになりたい」(本ブログ)
    • 引き続き、「How(どうやるか)」の記録場所として更新を続けます。構築手順、コマンドの実行結果、試行錯誤のプロセスなど、検証(作業)のメモはこちらに残します。

  • 基礎知識・設計思想・アーキテクチャ考察:「Nutanixと暮らす
    • こちらは「Why(なぜそう設計されているのか)」に特化しようと思っています。公式ドキュメントから読み解いた基礎知識をもとに、技術の背景、他方式との違い、運用上のメリットや注意点、ベストプラクティスなど、自分なりの解釈をまとめる場とします。

手順を知りたい、思い出しつつ手を動かしたい時は「クラウド屋さん」へ。 仕組みや思想、設計の判断材料についてじっくり考えたい時は「Nutanixと暮らす」へ。

この2つのブログを並行して更新することで、実務の設計にも活かせるような知見を、少しずつ自分の中にストックしていきたいと考えています。また、同じようにNutanixを学習している方や、設計・運用で悩んでいる方にとっても、何かしらの判断材料になれば幸いです。

おわりに

世の中には素晴らしいNutanixの技術ブログがたくさんあります。私自身はまだあまり知見がなく、まだまだ手探りの部分も多いため、時には間違った解釈をしてしまうこともあるかもしれません。しかし実機での検証を通して一つずつ正しい知識に近づいていければ良いなと考えています。

引き続き、試行錯誤の過程は本ブログにも記録していきますので、用途に応じて読み分けていただければと思います。

今後とも、2つのブログをよろしくお願いいたします。

CVMの役割をシンプルに整理してみる(なぜ1ノード1台なのか?)

はじめに

Nutanixを触っていて「なぜCVMは1ノード1台なのだろうか?」と気になりました。ということで今回はCVMの役割をシンプルに整理しつつ、1ノード1台の理由を探っていきたいと思います。

※個人的な勉強メモとなりますので、記載内容について一切の責任は持ちません。

今日のトピックス

・CVMの役割をシンプルに整理してみる。
・なぜ1ノード1台なのかを理解する。

CVMの役割を一言で言うと

  • Nutanixの制御プレーン
    • Nutanixの内部では、さまざまな分散サービスが動作している。代表的なものは以下。これらは全てCVM内で動作をしている。

なぜ1ノード1台?

Nutanixの設計思想は「1ノード = 1ストレージコントローラ(CVM)」という構成に基づいているため。

  1. ローカルディスクの I/O パスを一元管理するため
    • CVMはノード内の全ディスクを直接制御するコンポーネント
    • もし複数台のCVMが動作した場合、「どのCVMがどのディスクを扱うのか?」という競合が発生する。
      ⇒ RAIDコントローラが1ノードに複数不要なのと同じ理由。

  2. 分散ストレージを成立させるため
    • Nutanix の分散ストレージはノード単位でデータを保持・複製する。
    • I/O処理は各ノード上のCVMが行う。
    • 1ノードに複数のCVMがあるとデータ複製やメタデータが矛盾する原因になる。

CVMが停止するとどうなるか?

  • 該当ノードのI/Oを担当するStargateが停止 → そのノードのVMはI/Oパスが無くなる
  • データの複製(Curator)が遅延 → クラスタ健全性が低下
  • Prism/Zeusメタデータの冗長度が低下 → 障害時の対応幅が狭くなる

おわりに

今回はCVMについて調べてみました。Nutanixのコアコンポーネントなだけあって重要な機能を担っていますね。勉強を始めたころは、「ノード上に複数台あっても良いのでは?」と思ったこともありましたが、実際には、
・ローカルディスクの一元管理
・分散ストレージの構成
といった観点から「1ノード=1台」が最適な設計であることが分かりました。多ければ良いというものではないですね。

こういった仕組みを理解しておくことで、トラブルシュートやクラスタ構成・設計の理解にもつながります。今回の調査が今後の知識の土台になればうれしいなと思います。

無茶してみた:要件未満の環境でNutanix CEを動かした結果

この記事は Nutanix Advent Calendar 2025 の12月9日分として書きました。

はじめに

自宅検証環境のNutanix CEは要件通りに構築して触っていますが、ふと気になりました。「もし最低要件を満たさない環境で動かしたらどうなるのだろう?」と。

もちろん公式的には推奨されない環境なので、本番環境では絶対に避けるべきですが、これこそ検証環境だからこそできる“無茶”ですよね。

そこで今回は、CPU・メモリ・ディスクを要件未満に削ってみて、 Nutanix CEがインストールできるのか?Prism Elementは起動するのか?そして操作感はどう変わるのか?を実際に検証してみました。

今日のトピックス

  • あえてリソース要件を下回るNutanix CE環境を構築してみる。
    • CPU・メモリ・ディスクを削った9パターンで検証する。
    • インストール可否・Prism起動・操作感を確認する。

Nutanix CEのリソース要件

まずは前提となる、Nutanix CE(Community Edition)の最小要件をおさらいします。ある程度のリソースが必要となっています。

今回の検証環境

今回の検証は、以前の記事で紹介した自宅検証環境を利用しています。 ESXi上の仮想マシンとしてNutanix CEを構築します。この環境をベースに、CPU・メモリ・ディスクを要件未満に削った全9パターンで検証を行いました。インストール手順はこちらの記事に沿っています。

  • ハイパーバイザー:VMware ESXi 7.0 U2
  • Nutanix CE:2.1 (AOS 6.8.1ベース)
  • 仮想マシン構成(要件通りの場合)
    • vCPU:4
    • メモリ:32GB
    • ディスク:
      • [H]Hypervisor Boot:32GB
      • [C]CVM Boot:200GB ※Hot Tier
      • [D]Data:500GB ※Cold Tier

検証パターン

今回の検証パターンは以下の通りです。

検証結果

早速ですが各パターンの検証結果は以下の通りとなりました。以降各パターンの詳細を紹介していきます。

CPUを減らした場合(パターン①②③)

  • 結論:
    • いずれのパターンでもNutanix CEのインストールは完了しなかった。
    • Nutanix CEをインストールするためには、AHV用2vCPU+CVM用2vCPUの合計4vCPUがやっぱり必要。
  • 状況:
    • パターン①②はAHVのインストールは完了するが、CVMの作成に失敗。
      • 起動後のAHV上で「virsh list」コマンドを実行してがCVMが表示されない。
    • パターン③はAHVのインストールが序盤で失敗。
  • 原因(予想):
    • CPUを減らした場合の検証なので、CPUのリソース不足が原因のはず。
  • 調査内容:
    • パターン①②においてインストールログ(/var/log/installer.log)に、『'skip-create-cvm-xml': True』と『Computed CVM size to be vcpu 0, mem 16』のログ有。
    • パターン③においてコンソールに、『Not enough cores on node. Expected 2 cores, detected 1 cores.』のメッセージ有。
  • 考察:
    • パターン①②は、CVM用のCPUが割り当て不可のためCVM作成用のXMLファイルが作られていない?その結果、CVMの作成に失敗している?
    • パターン③は、AHVインストール用のリソース(vCPU)が足りない?
    • この結果から、Nutanix CE環境では、AHV用に2vCPU、CVM用に2vCPUがそれぞれ必要。

メモリを減らした場合(パターン④⑤⑥)

  • 結論:
    • パターン④はNutanix CEのインストールに成功。クラスター作成やPrismログインまでOK。仮想マシン作成も可能。操作感も問題は無さそう。
    • パターン⑤⑥はAHVのインストールが序盤で失敗。
    • Nutanix CEをインストールするためには、最低24GBあればOK(?)。
  • 状況:
    • パターン④は一通りの環境構築に成功した。
      • Prismログインも正常に完了。操作感も問題ないが、インストール直後のメモリ使用率が約84%だったため、CVM以外に構築できる仮想マシンは1台~2台程度が限界な気がする。もちろんPrism Centralの展開も不可能。
    • パターン⑤⑥ともにネットワーク設定やEURAまでは進むが、その後のAHVインストール時にエラーが発生。
  • 原因(予想):
    • メモリを減らした場合の検証なので、メモリのリソース不足が原因のはず。
  • 調査内容:
    • パターン⑤においてAHVインストール中にエラーになったが、VMwareのリモートコンソールを利用していたため具体的なエラーメッセージは特定できず…。早々に流れていきました…。
    • パターン⑥においてコンソールに、『Not enough physical memory on node. Expected 11.000000 GB, detected 7.78000 GB.』のメッセージ有。
  • 考察:
    • パターン⑤はもう少し詳細調査を行う必要がある。
    • パターン⑥はAHVインストール用のメモリ数が足りて無さそう。少なくともAHVのインストールには最低12GBのメモリが必要?

ディスク容量を減らした場合(パターン⑦⑧⑨)

  • 結論:
    • パターン⑦はNutanix CEのインストールに成功。クラスター作成やPrismログインまでOK。仮想マシン作成も可能。操作感も問題は無さそう。
    • パターン⑧はAHVのインストール開始すらできなかった。
    • パターン⑨はNutanix CEのインストールに成功。リソース要件通りに構築した時とあまり差は無かった。
    • Nutanix CEをインストールするためには、最低でも[H]16GB、[C]200GB、[D]200GBあればOK(?)。
  • 状況:
    • パターン⑦は一通りの環境構築に成功した。
    • パターン⑧はAHVのインストール開始すらできなかった。
      • インストールディスクやネットワーク設定の画面で『CVM boot disk(s) must be at least 200 GB in size.』のメッセージ有。
      • [C]と[D]を逆にしても『Data disk(s) must be at least 200 GB in size.』のメッセージ有。
    • パターン⑨は一通りの環境構築に成功した。
  • 原因(予想):
    • ディスクを減らした場合の検証なので、ディスクのリソース不足が原因のはず。
  • 調査内容:
    • 状況:に記載した通り、コンソール上に明確にディスク容量が足らないためといったメッセージ有。
  • 考察:
    • Nutanix CEのインストールにおいて、[H]のディスクは32GBを下回っても大丈夫そう?
    • [C]と[D]は最低200GBが必要。それ以下であればインストールに進むことすらできない。

検証を経ての結論

  • 全9パターンでNutanix CEインストール完了まで進めたのは3パターン。(パターン④、⑦、⑨)
  • Nutanix CEのインストールには最低でも以下のリソースが必要と思われる。
    • CPUは要件通り絶対必要!
    • メモリは24GBでもギリ動きそう。(Prism触ってみたいだけならありかも・・・)
    • ディスクはCVMとDataで200GBずつ必須。

おわりに

今回の検証で、Nutanix CEは最低要件を満たさなくても動作するパターンがあることが分かりました。ただし長く使うことを考えると安定性にはやや不安が残りそうだなあという感想です。また今回は各パターン1回ずつ実施しましたが、もしかしたら"たまたま"という結果になったものもあるかもしれません。再現性があるかも確認してみたいです。もしリソース不足で導入を迷っている方がいれば、本記事がチャレンジの参考になればうれしいです。
(ちなみに、、、私の環境はかなりぎりぎりの環境で動かしていたこともあり、途中で検証用のリソース不足に陥りました。泣く泣く検証用のNutanix CEを削除することで何とか記事化できました・・・。最終的には再構築してます!)