この投稿は Nutanix Advent Calendar 2020 の12月9日分です。
Nutanix CE 5.18 から、ハイパーバイザーとしてAHV だけでなく ESXi が選択できるようになりました。そこで ESXi 上のネステッド ハイパーバイザーとして ESXi 版 Nutanix CE を構築してみます。
目次
- 目次
- 今回の環境
- インストーラの入手
- Web サーバの構築(ESXi インストーラ 用)
- 物理 ESXi (ネストの外側)の準備
- ESXi VM の作成
- Nutanix CE のインストール
- Prism への初回ログイン
- ストレージ コンテナの作成
- 注意点の補足
これまでの AHV 版での環境構築については、こちらもどうぞ。
今回の環境
具体的な構成については本文も参照のこと・・・
- Nutanix CE: 5.18(ce-2020.09.16-stable)
- 物理 ESXi: ESXi 6.7 U3。vCenter Server 6.7 U3 から管理操作しています。
- Nutanix CE のハイパーバイザー: ESXi 7.0 GA (Build 15843807)
- Web サーバ: Oracle Linux 7
インストーラの入手
Nutanix CE は、Nutanix Community の Webサイトから、ESXi は My VMware からダウンロードしておきます。どちらもユーザ登録が必要です。
Nutanix Community: Download Community Edition
https://next.nutanix.com/discussion-forum-14/download-community-edition-38417
My VMware: VMware vSphere Hypervisor (ESXi) 7.0.0
https://my.vmware.com/jp/web/vmware/downloads/details?downloadGroup=ESXI700&productId=974&rPId=56743
今回は、あえて最新ではない ESXi 7.0 (U1 ではない)を利用しています。使用する ESXi の ISO イメージ ファイルは、VMware-VMvisor-Installer-7.0.0-15843807.x86_64.iso です。
Web サーバの構築(ESXi インストーラ 用)
Nutanix CE のインストーラで、ESXi のダウンロード URL を指定することになるので、適当な Linux サーバなどで、Web サーバを用意して、ESXi を配置しておきます。
なお今回は Oracle Linux 7 を利用していますが、RHEL7 や CentOS7 でも同様です。
# yum install -y httpd # rm -f /etc/httpd/conf.d/welcome.conf # systemctl enable httpd # systemctl start httpd # firewall-cmd --add-port=80/tcp # firewall-cmd --add-port=80/tcp --permanent
一応、サービス起動を確認してきます。
# systemctl is-active httpd active
ISO イメージ ファイルは、SCP や SFTP などで、/var/www/html ディレクトリ直下に配置しておきます。インストーラで URL の入力があるため、ファイル名を短く「esxi70.iso」にしておきます。
# mv /var/www/html/VMware-VMvisor-Installer-7.0.0-15843807.x86_64.iso /var/www/html/esxi70.iso
Web サーバから ISO ファイルがダウンロードできることを確認しておきます。今回用意した Web サーバの IP アドレスは 192.168.20.200 なので、URL が http://192.168.20.200/esxi70.iso になります。
[root@lab-web-02 ~]# curl -OL http://192.168.20.200/esxi70.iso % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 350M 100 350M 0 0 93.6M 0 0:00:03 0:00:03 --:--:-- 93.6M [root@lab-web-02 ~]# ls esxi70.iso
Web ブラウザからも、ISO イメージ ファイルにアクセスできるか確認しておくとよいかなと思います。
物理 ESXi (ネストの外側)の準備
利用する物理マシンについて
物理 ESXi と vCenter Server は、すでに用意されていた vSphere 6.7 U3 環境を利用しています。今回インストールする Nutanix CE では ESXi 7.0 を利用するため、登録する vCenter 7.0(以降のバージョン)は別途必要になります。
今回利用した物理 ESXi ホストのスペックです。(ただし、リソース消費は、ほとんど同居している別 VM によるものです)
データストアについて
Nutanix CE VM はシン プロビジョニングで作成するので、インストールをためしたり UI 確認をするだけであれば、データストアは 100GB 程度あれば十分です。ただ、HDD ではなく SSD が必須かなと思います。
ちなみに vCenter 6.7 の vSphere Client などでは、データストア容量を超える仮想ディスク作成をしようとするとエラーになってしまいます。その場合は、PowerCLI など別の方法からであれば作成できたりします。
PowerCLI> Get-VM "VM の名前" | New-HardDisk -Datastore "データストア名" -CapacityGB 500 -StorageFormat Thin
ESXi VM の作成
Nutanix CE をインストールする VM を作成します。
仮想ハードウェア
- 互換対象: ESXi 6.7 以降(仮想ハードウェア バージョン: vmx-14)
- ゲスト OS ファミリ: その他
- ゲスト OS バージョン: VMware ESXi 6.5 以降
vCPU
- vCPU 数は 8にします。ただし、インストール後は 4 vCPU に変更できます。
- 物理マシン側では、ここで設定する vCPU 数の論理コア(Hyper-Threading のスレッド)が必要になります。
- 「ハードウェア アシストによる仮想化をゲスト OS に公開」を有効にしておきます。
メモリ容量
CVM 以外のユーザ VM も起動できるように、22GB にしています。(AHV 版での経験測から)
仮想ディスク
仮想ディスクは 3つ作成しておきます。
- ハイパーバイザー インストール先: 40GB(もう少し多くてもよい)
- データ用1: 200GB
- データ用2、CVM boot: 500GB
仮想 SATA コントローラ
「新規デバイスを追加」から、「SATA」コントローラを追加しておきます。
ハイパーバイザー インストール先以外の仮想ディスク(今回は 200GB と 500GB)は、SATA コントローラ接続に変更しておきます。
200 GB の仮想ディスクです。
500GB の仮想ディスクです。
設定パラメータ
インストーラから仮想ディスクの ID を認識できるように、VM にパラメータを追加します。
VM の「設定の編集」→「仮想マシン オプション」→「詳細」→ 設定パラメータの「設定の編集」を開きます。
「設定パラメータの追加」で、下記を追加します。
- 名前: disk.EnableUUID
- 値: true
起動オプション
ファームウェアは「BIOS」にしておきます。
VM の「設定の編集」→「仮想マシン オプション」→「起動オプション」→「ファームウェア」で、「BIOS」を選択しておきます。
仮想 CD/DVD ドライブ
Nutanix CE のインストーラをデータストアに配置したものを選択しておきます。そして「パワーオン時に接続」を有効にしておきます。
vNIC とポートグループ
vNIC は、1つだけ作成しておけば Nutanix CE をインストールできます。ポートグループでは「無差別モード」と、「偽装転送」を有効(承諾)にしておきます。
Nutanix CE のインストール
VM の起動 ~ インストール開始
VM をパワーオンすると、ISO イメージ ファイルからブートされて、インストーラが起動します。下記のようにパラメータを入力してから「Next Page」で次に進みます。
- Select Hypervisor: ESXi を選択。
- ISO URL: ESXi の ISO イメージを配置した Web サーバの URL を入力。
- Disk Selection: hypervisor boot(H)、CVM boot(C)、data(D)を選択。
たいていデフォルトで大丈夫だと思いますが、「Serial」が表示されていない場合は VM で仮想 SATA コントローラを選択して、disk.EnableUUID 設定してあるか確認します。 - Host IP Address / Host Subnet Mask / Host Gateway: ESXi に設定するネットワーク情報を入力。
- CVM IP Address / CVM Subnet Mask / CVM Gateway: CVM に設定するネットワーク情報を入力。
- Create single-node cluster? / DNS Server: Nutanix CE インストールと同時に Nutanix クラスタを作成します。DNS Server 設定は、CVM がインターネット アクセスする際の名前解決で参照ものなので、Google Public DNS など(たとえば 8.8.8.8)でも大丈夫です。
EULA を下まで読んで(Page Down キーなどでスクロールして)、「I accept the end user license agreement.」にチェックを入れてから「Start」します。
VM の再起動
インストール処理が終了すると再起動要求があるので、ISO イメージを取り外してから再起動します。
ISO イメージを取り出すため、VM の CD/DVD ドライブを「クライアント デバイス」などに変更します。
このとき、CD-ROM ドア ロックの質問が出る(VM にオレンジのアイコンが付く)場合は、速やかに質問に応答します。(VM が静止してしまっているので)
「はい」で回答します。
そして、Nutanix CE インストーラの再起動確認では「Y」と Enter キーで再起動します。
ESXi が起動しない場合の対処
再起動後に ESXi が起動しない場合は、VM 起動時の F2 キー(もしくは VM の「設定の編集」→「仮想マシン オプション」にある「次回起動時に、強制的に BIOS セットアップ画面に入る」をオンにしてから起動)で PhoenixBIOS Setup Utility を起動して、ブート デバイス設定を変更します。
「Boot」メニューで下記のように、ハイパーバイザーのインストール先としたディスクが最上位となるように調整します。「+」と「-」キーで移動できますが、英語キーボード配列になっているので「-」キーが使いやすいかなと思います。
今回の環境では、「Hard Drive」→「VMware Virtual SCSI Hard Drive (0:0) 」を一番上に移動しています。
F10 キーで、保存してから終了します。
これで、ESXi が起動するはずです。
ESXi 起動直後は、Host Client にアクセスすると「Installing...」といったメッセージが表示されています。しばらく待つと、自動的に ESXi が再起動されて CVM の設定や Nutanix クラスタの作成などが自動実行されます。
しばらく待って、あらためて Host Cient の画面にアクセスすると、通常のログイン画面が表示されます。
デフォルトの root パスワードは「nutanix/4u」が設定されています。
初回ログイン時には、カスタマ エクスペリエンス改善プログラム(CEIP)への参加確認があります。これはチェック On / Off どちらでも大丈夫です。
ESXi の Host Client にログインできました。
CVM (NTNX-~-CVM)が起動されています。CVM が存在しない、または起動していないという場合は、インストール処理の途中か、失敗しています。たとえば、仮想ディスクで SATA コントローラを使用していないと、CVM が登録されなかったりします。
Prism への初回ログイン
インストール時の single-node cluster 作成が成功していれば、Prism にアクセスできるようになっています。Web ブラウザから、CVM の IP アドレス宛にアクセスします。このとき、HTTP / 80 番ポート宛にアクセスすると、自動的に HTTPS の URL にリダイレクトされます。
初期ログインアカウントは、ユーザが「admin」、パスワードが「nutanix/4u」です。
パスワード変更を要求されるので、新しいパスワードを設定します。
そして、admin ユーザ / 新しいパスワードでログインします。
NEXT アカウント(Nutanix Community のアカウント)でのログイン確認があります。これは、Nutanix CE をダウンロードした際の ユーザ / パスワードでログインします。インストール時に指定した DNS サーバは、このときの認証確認で必要になっています。
Prism にログインできました。Hyeprvisor が ESXi になっています。
ストレージ コンテナの作成
Nutanix の分散ストレージ ファブリックを、ESXi の NFS データストアとして利用するために、ストレージ コンテナを作成します。
「Storage」メニュー → 「Table」→「Storage Container」→「+ Storage Container」から、ストレージ コンテナを作成します。
ストレージ コンテナの名前(NFS データストアの名前になる)を入力してから、「Mount on all ESXi hosts」を選択して「Save」をクリックします。
ストレージ コンテナ(今回は「ctr-01」)が作成されました。
ESXi では、この NFS データストアがローカルスイッチ経由でマウントされます。NFS サーバの接続先 IP アドレスは、環境に関わらず必ず「192.168.5.2」になります。
ESXi の Host Client は複数台ホストがある環境にむけた機能(共有データストアなど)を操作するようにできていないので、SSH から NFS データストア接続を確認してみました。
本来は Nutanix 環境でも、ESXi は vCenter Server から管理します。ここから先は、まずvCenter に ESXi を登録してから、検証 / デモ を進めるとよいかなと思います。
注意点の補足
今回はインストーラの「Create single-node cluster?」で、インストールと同時に Nutanix クラスタ作成をしていますが、これだと「シングル ノード クラスタなのに RF2」という、イレギュラーなクラスタが作成されてしまいます。(可用性などは微妙ですが、UI 操作などのデモ環境としては利用できます)
美しめの RF1 のシングルノード クラスタを作成するには、「Create single-node cluster?」のチェックはいれず、インストール後に CVM にログインして下記のようにクラスタを作成します。
CVM$ cluster -s <CVM の IP アドレス> --redundancy_factor=1 create
以上。