HoneyComb LX2KにESXi Arm Edition v1.8を導入してみた

#はじめに

Raspberry Pi 4では少々非力だったので、ESXi Arm Editionの公式ページでワンランク上のNear EdgeカテゴリであるHoneyComb LX2Kを購入してESXiを導入してみました。
ESXi Arm Edition version 1.8と一緒に入手できる導入ガイド(Fling-on-SolidRun-HoneyComb-LX2K.pdf)が少し古いようで、少し試行錯誤したので備忘録として残しておきます。
通常のESXiと変わらない部分はざっくりと書いてあります。

#準備したもの

|準備したもの|概要|参考URL等|
|:---|:---|:---|
|ESXi Arm Edition|今回はv1.8を使用しました|https://flings.vmware.com/esxi-arm-edition|
|HoneyComb LX2K|Mini-ITXサイズのキャリアボードとARM CPUモジュールのセット|公式サイト <br> https://www.solid-run.com/arm-servers-networking-platforms/honeycomb-workstation/ <br>今回利用した国内通販 <br> https://www.petapico.biz/%E3%83%80%E3%82%A4%E3%83%AC%E3%82%AF%E3%83%88%E3%82%B7%E3%83%A7%E3%83%83%E3%83%97/lx2160a/#cc-m-product-13521387889|
|DDR4 SO-DIMM| W4N2666CM-16G <br> 2400,2666,2993,3200(※後述)で最大64GBまで搭載可能とのこと||
|ATX電源|SST-AD120-DC <br> なお、Sandy Bridge機から流用したATX電源でも動作していました||
|MicroSDカード|UEFI Firmware用 <br> 32GBを使用しましたが、ファームウェアは4MB程度なので小容量でも大丈夫と思われます|
|Intel PRO/1000 PT Server Adapter|余り物 <br> 今のところオンボードのNICを認識しないので、PCIeかUSBのNICを追加する必要があります　<br>古いせいかインストール時にサポートされていないデバイスと表示されるので、もう少し新しいものの方が良いでしょう||
|USBメモリ|ESXiのインストーラ格納用として||
|2.5インチSATA SSD|Crucial MX500 <br> ESXiのインストール先として||
|MicroUSB Micro-B to USB Type-Aケーブル|シリアルコンソール用 <br> ボードにシリアル to USB変換を内蔵しており、接続したPC等にドライバをインストールして使います||
|作業用PC|Windows10 Pro バージョン21H2(64bit)を使用しました||
|MicroSDリーダ/ライタ|作業用PCにリーダ/ライタが無い場合には、別途必要です||

#組み立て
自作PCと同様です、特別に注意する所はありませんでした。

#シリアルコンソールのドライバインストールと接続

作業用PCはWindows Update経由でのドライバ取得は行わないようにしている為、手動でUSBシリアルドライバをインストールしました。
https://ftdichip.com/drivers/d2xx-drivers/ からX64(64-Bit)の2.12.28を入手してインストールします。

USBシリアルポートとして認識したら、デバイスマネージャーからプロパティを変更します。

+ 「ビット／秒」を 115200 に変更

![USB_Serial_Portのプロパティ.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1469510/895a0cce-48c9-da73-cbab-d70f7c9ce648.jpeg)

ターミナルエミュレーターでHoneyComb LX2Kに接続します。今回はTeraTermを使用しました。
![TeraTermNewConnection.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1469510/045b923b-ee02-ac4d-b3b3-9c84942009a1.jpeg)

接続したところ。UEFI Firmware等が無いと何も応答しません。
![TeraTrem_FirstConnect.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1469510/f7ac1e52-4edf-2ffc-db23-a2e640d9286c.jpeg)

#MicroSDカードにUEFI Firmwareを書き込む

MicroSDカードにUEFI Firmwareを書き込みます。ここは導入ガイドが更新されていないのかファームウェアのダウンロードリンクが切れていて、少々嵌りました。

+ 見つけたファームウェアのダウンロード先

https://images.solid-run.com/LX2k/lx2160a_uefi

+ （参考）ファームウェアのソースリポジトリ

https://github.com/SolidRun/lx2160a_uefi

lx2160acex7_2000_700_\<RAM速度\>\_8_5_2_\<書き込み先\>_\<コミットID\>.img.xz という形式でファイルがあります。
今回は、RAM速度：DDR4-2666、書き込み先：sdなので、lx2160acex7_2000_700_2600_8_5_2_sd_ee5c233.img を使用しました。

RAM速度は2400、2666(ファイル名では2600と記載)、2993(ファイル名では2900と記載)、3200から選べるようです。搭載したRAMに合わせたものを選択します。

+ 書き込みツール

https://www.balena.io/etcher/

1.ファームウェアファイルと書き込みツールをダウンロードします。
2.圧縮されているファームウェアファイルは解凍しておきます。
3.書き込みツールを起動してファームウェアファイルを指定します。ファイルはRAWイメージなのでパーティションテーブルが無いとの警告が出ますが続行します。
4.書き込み先のMicroSDカードを選択してFlash!をクリックします。コマンドプロンプトのUACが表示される場合がありますが、これも続行します。
5.Flash Complete!と表示されたら書き込み終了です。ツールを終了してMicroSDカードを取り出します。

#USBメモリにESXiのインストーラを書き込む
ESXiのインストーラISOファイルをRufus等でUSBメモリに書き込みます。

#ESXiのインストール

1.作成したMicroSDカードとUSBメモリをHoneyComb LX2Kに差し込みます。
2.ターミナルエミュレーターを接続してからHoneyComb LX2Kの電源を入れます。

ブートが成功すると以下のような表示が出力されます。うちの個体は時々ブートせずにNICのLEDが点滅する状態になる事がありますが、その時は電源を入れなおします。
なお、ファンコントロールは実装されていないようで(実装するなら自分で)、CPUファンが全力で回るのが少々難点です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1469510/1d699cd8-23d1-01d6-01fc-fc52bc226784.png)

3.UEFIに入ります。

ブートして数秒で以下の画面が表示されるのでESCキーを押してUEFIの画面に入ります。インストールメディアからの自動ブートはしないようです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1469510/7c64e824-f246-f9d6-1442-c68fd4c24e79.png)

4.ESXiのインストールメディアを選択してインストーラを起動します。

Boot Managerに入り、ESXiのインストーラが入っているUSBメモリを選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1469510/76573910-2505-b63a-9436-c27a061ab9dc.png)

ESXi起動の表示が流れた後、以下のような画面が表示されます。ここから先は通常のESXiと同様ですが、選択の時などにキーを連打するとインストールのキャンセルを聞いてくる事があり、キー入力の反応は割と遅いようなので、入力はゆっくり目にすると良いでしょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1469510/78007641-fa2f-1a06-0e46-07eb726b5615.png)

5.インストール完了

インストールが完了して再起動すると以下のような画面になります。お疲れさまでした。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1469510/c1c42e91-430d-6567-8c0d-93ea7eaaa50e.png)

6.時刻同期の設定

導入ガイドには時刻同期を設定する事が推奨されています。導入ガイド作成時点ではRTCに時刻を保存できなかったからのようですが、この手順で使用したファームウェア／ESXiのバージョンだと時刻は保存されていました。
ただ、ボードの初期値は2000年のようなので、時刻は合わせた方が良いでしょう。

#おまけ1：NVMe SSDにインストールしようとした場合

せっかくM.2スロットが付いているので、NVMe SSDを接続してインストールも試したのですが、PSODになってしまいました…
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1469510/aaff2df3-23cc-998c-38ce-4aff12f684db.png)

#おまけ2：PRO/1000 PTで表示される警告

警告ですので続行でき、一応動作もします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1469510/e67a8db3-689d-1c6b-e8f2-52c25bb2bd32.png)

以上です。

\[2021/06/20]
新バージョンのリリースに合わせてv1.3 → v1.4での内容に更新 

\[2021/12/31]
(更新が遅くなりましたが)新バージョンのリリースに合わせてv1.4 → v1.8での内容に更新