Intel N97のミニPCを買った話（ついでにCML2.8 Free Tierをベアメタルにインストール）

## はじめに
自宅にあるマシン環境の小話です。
現在、自宅で使用しているメインのハイパーバイザ環境はShuttleのベアボーン DH170です。
ベアボーンは一部のパーツがすでに組まれてる、半分組み立てられたPCですね。
DH170はCPU、メモリ、ディスクを自分で用意します。
名前の通りH170チップセット（使っているCPUはi5 6600）なのでかなり古め。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/16582070-ebf3-1a1f-a905-28e2f2619c31.png" width="600">


DH170は省スペースながらRJ-45ポートが2搭載されていたりTDP 60WクラスのCPUを搭載可能であったりといい筐体です。
最新の後継機種は[DH770](https://shuttle-japan.jp/dh770/)になりますね。
DH170を購入した当時は3万円弱くらいだったのですが、後継機種では5万円強くらいになってました。DH770は現時点ではShuttleに見積もり取ってみないと値段は分からないみたいです。
販売方法が変わったのかな。
<br>
そろそろ新しいマシンに変えようかな思い、ベアボーンもそこそこ値が張るので普通にミドルタワーの自作PCを検討していたところ、Intel NシリーズのミニPCが非常に安く手に入るようなのでネットを物色。
基本的にはTDP 15W以下のCPUですね。ノートPC用の省電力モデル。
高性能CPUもロマンがありますが、自分は省電力/省スペース(と静音)の方が好きです。
（ハイエンドのCPU/GPUは高い電力で殴るという力技感があり、あまり手を出したくないなぁと思ったり。頑張って排熱してもサーマルスロットリングが起こるみたいなの嫌ですしねぇ。）
Nシリーズはメモリが1チャネルかつ16GBまでということでした。
[N97の仕様](https://www.intel.co.jp/content/www/jp/ja/products/sku/233090/intel-processor-n97-6m-cache-up-to-3-60-ghz/specifications.html)
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/b9e7c016-34ce-0da4-8f2f-c5d4ab962f3f.png" width="600">
ただ32GBでも認識はするという情報もあるのでノートPC用メモリ1枚だけ挿せるよくらいに思っておけばよさそうです。
<br>
amazonでミニPCを探していると、N97のRJ-45のポートが2つ搭載されている筐体を発見。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/dbd0bece-bfdc-f28f-832a-0049d2ed08c8.jpeg" width="250">

https://www.amazon.co.jp/dp/B0CNTLLK3Y?ref=ppx_yo2ov_dt_b_fed_asin_title

__CPU:Intel N97__
__Memory: 16 GB__
__Disk: 512GB M.2 SSD__
自分が見たときはセールで3万円切っていました。
メモリクロック、SSDの通信規格(SATAかNVMeか)は判断つかず。
<br>
N97のベンチはi5 6500よりちょっといいくらいでi5 6600よりは低いくらいかなという印象。
前述した通りDH170がSkylakeのCPU積んでいるのでその世代で比較しました。
[N97 vs i5-6500](https://www.cpu-monkey.com/ja/compare_cpu-intel_processor_n97-vs-intel_core_i5_6500)
[N97 vs i5 6600](https://www.cpu-monkey.com/ja/compare_cpu-intel_processor_n97-vs-intel_core_i5_6600)
当時の60WクラスのCPUと同等と思うと進化を感じますね。
<br>
新しいハイパーバイザ環境として活躍してくれることを期待して
ぽちっと購入。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/a90ab8f5-ed73-1ae4-c606-615595bc6878.png" width="100">
（購入してしばらく放置。）
<br>
最近CMLの無料版がリリースされたということもあり、本機をハイパーバイザとして使用する前に今回のネタとしてベアメタルでCML2.8 Free Tierを入れてみることにしました。


## 開封
結構しっかりした梱包です。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/3f05258a-08b9-2cc8-c644-05319d477bce.png" width="400">

内容物は以下。
- 本体
- HDMIケーブル
- AC電源ケーブル
- スタンド

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/19946f04-ea5f-7c4b-56d0-d4f299dae9d6.png" width="400">

筐体サイズは‎12.38 x 12.8 x 4.09 cmで重さは1.17 kgとのこと。
背面のカバーはマグネットになっており、簡単にメモリとM.2 SSDにアクセスできます。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/d934dfee-7e6f-d5e0-9aad-6191ab21aac7.png" width="400">

SSDはNVMeで、メモリはDDR4 2666MHz 16GBが入っていました。
もしメモリを差し替えるならここらへんですかね。
[Crucial 32GB(32GBx1枚) DDR5 4800MT/s(PC5-38400) ](https://www.amazon.co.jp/Crucial-%E3%83%8E%E3%83%BC%E3%83%88PC%E7%94%A8%E5%A2%97%E8%A8%AD%E3%83%A1%E3%83%A2%E3%83%AA-PC5-38400-%E3%80%90%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E4%BB%A3%E7%90%86%E5%BA%97%E5%93%81%E3%80%91-CT32G48C40S5/dp/B09RVNMGFH/ref=sr_1_17?crid=PGE96KUURAVU&dib=eyJ2IjoiMSJ9.6cEeKsFNMDTw_6op2ZkpFpyfKM0x26DsrxRr8Bp1UDKtRp2DApMzTXRZ2UN4gGiS_gCz2XF3SQUPdAHlbpTMcooN_V-TJMPYrNzvnTp0zuciO_1CUE4tlxg8CmSUY4GViigdEIyxOANTKaWigfkGLTJSZ7dIQsDFVViEDGnfCJOTBSLCDCxG6ydTFbe-6KUxTuNZh4GLEGqx3KzTn2N3s3HQ4eYIwye6J_LfMWCKSRxfxEfcddrfTPPwEU6elDKGsECJPts_kULaU4khQ7rZzJlBvGG00N5A9DlAk2U88is.thJ7e2dB7gME4wE0Dsn0-_Rv76XAoOQb9eF1SE_6k3w&dib_tag=se&keywords=%E3%83%8E%E3%83%BC%E3%83%88pc%E7%94%A8%E3%83%A1%E3%83%A2%E3%83%AA+32gb&qid=1733031114&sprefix=%E3%83%8E%E3%83%BC%E3%83%88PC%E7%94%A8%E3%83%A1%E3%83%A2%E3%83%AA+%2Caps%2C165&sr=8-17)


## CMLインストール

### CML
Cisco Modeling Labsの略でシスコの提供するネットワークシミュレーションプラットフォームです。
詳しくはこちら
[Introduction to Cisco Modeling Labs](https://developer.cisco.com/docs/modeling-labs/introduction/)

### CML 2.8 Free Tier
CML 2.8から最大5ノードまでを使用可能な無料のFree Tierバージョンがリリースされました。
[CML 2.8 Release Notes](https://developer.cisco.com/docs/modeling-labs/cml-release-notes/)
>CML 2.8 is the latest feature release of CML. This release introduces a free-tier version of the product allowing you to start up to 5 nodes without a license. 

ネットワーク機器のノードの種類は以下3つです。
- ASAv
- IOL
- IOL-L2 

各Nodeのは[VM Images for CML Labs](https://developer.cisco.com/docs/modeling-labs/vm-images-for-cml-labs/)を参照。
External ConnectorとUnmanaged Switchは5ノードの制限には含まれません。

### 要件
ハードウェアに要件は以下のページから。
[System Requirements](https://developer.cisco.com/docs/modeling-labs/system-requirements/)

| System Resource | Minimum Requirements |
| ---- | ---- |
| Memory | 8 GB |
| CPU | 4+ (physical) cores, Intel processor<br>Processor must support VTx and EPT. |
| Network | 1 Interface |
| Hard Disk | 32 GB or more |


### イメージダウンロード
イメージはCML本体のISOとrefplatと名のついたISOが必要となります。
refplatはCML上で使用するルータなどノードのイメージが入っています。
- cml2_f_2.8.0-6_amd64-32-iso.zip
- refplat-20241016-freetier-iso.zip

ダウンロードは以下から。
https://software.cisco.com/download/home/286193282/type/286326381/release/2.8.0%20Free%20Tier?i=!pp

### インストール
インストール手順は[CML Installation Guide](https://developer.cisco.com/docs/modeling-labs/cml-installation-guide/)を見ながらやっていきます。
ちなみにCMLのベースはUbuntu 24.04.1 LTSです。

`cml2_f_2.8.0-6_amd64-32-iso.zip`を解凍し、中にある`cml2_2.8.0-6_amd64-32.iso`を使ってBootable USB flash driveを作成します。
rufus-4.6で問題なく作れました。
`refplat`のイメージはCMLインストール後に使用するので今は何もしなくてOK。

<br>
PCを起動し、BIOSの画面に入るキーが表示されるかなと思いましたがそのままWindowsが起動したので、Windowsの設定画面からBIOSへ。
Boot Optionの一番上をUSB Deviceにしてブート。
<br>

以下の画面になるので一番上の`Install CML`を選択（か放置）するとインストールが進みます。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/b135a163-e44f-8c47-0e31-0920f93cedf6.png" width="600">

~~ちなみにWindowsを削除すると本体のディスプレイは時間表示しかしなくなります。~~
電源on/offで`ACEMAGIC`という文字列しか表示しなくなりました。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/3eb7bc25-d29a-e63d-f627-5decd5a8ae11.png" width="400">


インストール完了後自動で再起動しますが、もう一度USBからブートして今度は2番目の`Boot from next volume`を選択すればCMLの起動画面となります。
一番上を選択するか放置。
CMLが起動したらインストールメディアは抜いちゃいましょう。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/eac1d432-d3f8-a100-ebed-b4e3cf4ff2cf.png" width="600">
<br>
初期設定としてユーザアカウントの設定とネットワーク設定があるので設定。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/ec5e3b6c-a1d2-1c6e-654a-310f07230b24.png" width="600">
<br>
CMLの起動が完了するとWebUIからアクセスできるので先ほど設定したアカウントでログイン。
まだノードのイメージがないので、右下を見ると赤字で`SYSTEM HEALTH ISSUE`となっています。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/049d247c-c787-a2aa-2d25-ab26c41e6f8c.png" width="300">

### refplatからノードのイメージをCMLへコピー
ノードのイメージをコピーするためにはCMLへrefplatのISOをマウントする必要があります。
ISOをUSBフラッシュにコピー → ISOファイルをCMLへコピー(省略可) → コピーしたISOをマウントの順でやっていきます。
```
$sudo mkdir /media/usbdrive
$sudo mount /dev/sda1 /media/usbdrive
$cp /media/usbdrive/refplat-20241016-freetier-iso ./

$sudo mkdir /media/cdrom
$sudo mount -o loop -t iso9660 refplat-20241016-freetier-iso /media/cdrom
```
マウントしたらcockpitから`Copy Refplat ISO`を実行。
cockpitへは`https://"CML Address":9090`でアクセスします。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/d07a641e-2afe-3662-a8c2-89b00780d8f9.png" width="700">

再びCMLのWebUIからアクセスすると今度はSystem StatusがすべてREADYになっています。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/0d41cf9f-6138-a39e-d408-9bb3a7dc70e4.png" width="300">
<br>
アンマウントとISOの削除を行い、準備完了です。
```
$sudo umount /media/usbdrive
$sudo umount /media/cdrom
$rm -f refplat-20241016-freetier-iso
```

## ラボ作成
ラボを作成して追加できるノードを確認してみます。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/9f7ad8cf-e5ab-15d1-d6dc-3bad2a77974b.png" width="300">



IOLのノードを5個追加して適当にOSPFなどしゃべらせてみましたが特に重さなどなくリソースの使用率も問題なさそうでした。
IOLは非常に軽いですしね。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/966e6b22-68a8-2209-5014-59c82b852b0e.png" width="500">

UbuntuなどLinuxノードを追加していじっていた時に、瞬間的にCPU使用率が70%になることがありましたが5ノード程度なら問題なさそうです。

## おわりに
無料版では5ノードのみですが、N97のマシンでもリソースには余裕があるように見えます。
小規模ですが3万円弱のマシンでネットワークの検証環境や仮想環境が手に入るのは中々いいですね。
この後はProxmoxを入れて遊んでみる予定です。

これくらいのミニPCは手で持ち運べるのでラボ用に1台あると便利かも。

<br>
ちなみに今回購入したN97のマシンでC8000vを5台起動するとリソースの使用率は真っ赤に。
最終的に起動できたのは3台でした。
有償版のライセンスを購入してCML環境を構築する場合はリソースをしっかり用意しましょう。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/e2183b66-7b4d-ca74-7ccc-4abeeb1d613d.png" width="500">

## おまけ：CML 2.8で追加されたノードの話
FreeTier用のrefplatには含まれていませんが、CML2.8からFMCv/FTDvが追加されたようです。
[VM Images for CML Labs](https://developer.cisco.com/docs/modeling-labs/vm-images-for-cml-labs/)
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223892/734f8ca8-60af-3428-58fc-21853387932f.png" width="300">