この記事は、BBSakura Networks アドベントカレンダー 19日目の記事となります。
こんにちは、BBSakura Networksにてモバイルコアの開発・運用をしている清水です。
先月、Ciscoから、CML2の無料版のリリースが発表されました。
同時に起動できるのは5ノードまで、などの制限はいくつかあるものの、CCNAの勉強や簡単な検証に使用する分には十分そうです。 そこで本記事では、 Proxmox + CML2.8 Free TierをミニPC上に構築するための方法について説明します(n番煎じではございますが...)。
構築に使用したPCについて

しばらく前にAmazonのセールで購入したPCです。45,000円くらいで買いました。*1 スペックは下表の通りです。
| 要素 | スペック |
|---|---|
| CPU | AMD Ryzen 7 5700U |
| メモリ | 32GB |
| ストレージ | M.2 SSD 1TB |
| ネットワーク | 2.5GbE LAN, Wifi 6E |
このPCにオープンソースの仮想化環境プラットフォームであるProxmox VEを導入し、その仮想環境上でCML2を動かします。 Proxmoxを使用せず、直接CML2をインストールすることも可能ですが、ミニPCを別の用途でも同時に利用したかったため、今回は仮想環境での構築を行っています。
Proxmox VEの導入
公式ページの手順に従い、Proxmox VEを導入していきます。
ISOイメージの入手
公式ページからISOイメージをダウンロードします。今回はProxmox VE 8.3 ISO Installer をダウンロードしました。

USBからイメージを起動する
ダウンロードしたISOイメージをUSBに書き込みます。書き込みにはRaspberry Pi ImagerやRufusなどをを使います。今回はRaspberry Pi Imagerを使用して書き込みました。

書き込みが終了したら、ミニPCにUSBメモリを挿して、Proxmoxのインストーラーを起動します。

インストール
インストーラーの指示に従い、タイムゾーンや管理者アカウントの設定、ネットワーク設定を進めていきます。

インストーラーを進めていき、最終的にこのような表示になったらインストール完了です

管理画面へのログイン
ミニPC以外のPCからProxmoxの管理ページへログインします。
http://<インストーラーで設定したIP>:8006/にアクセスし、IDとパスワードを入力しログインします

ログインに成功し、下図のようなダッシュボードが表示されればOKです

CML2 Free Tierのインストール
事前準備
https://software.cisco.com/download/home
上記のリンクから、CML2のインストールに必要なISOイメージを入手します(Ciscoのアカウントが必要です)

2.8.0 Free Tier からcml2_2.8.0-6_amd64-32-iso.zip と、refplat-20241016-supplemental-iso.zipをダウンロードします(赤枠で囲ってあるもの)。
Proxmox からCML2用のVMを作成
事前準備でダウンロードしたISOイメージをProxmoxにアップロードします
Proxmoxの管理画面から、ノード名 → local(ノード名) → ISOイメージ と遷移していき、アップロードをクリックし、2つのイメージをアップロードします


VMを作成します。全般〜ネットワークまで順番に設定していきます。 以下、重要な設定のみ抜粋
- OS
- ISOイメージとして
cml2_2.8.0-6_amd64-32.isoを指定(もう一方のイメージは後で使用します)
- ISOイメージとして

- システム
- BIOS: OVMF (UEFI)

- CPU
- 種別(Type)を規定値の
x86-64-v2-AESからhostに変更します。 - 規定値のままだとCML2のインストーラーが失敗します(参考)
- 種別(Type)を規定値の

CML2 インストール
管理画面からコンソールをクリックし、インストーラーの指示に従い設定を進めていきます


最後に、以下の画面がコンソールで表示されればインストール作業は完了です

ノード用イメージの登録
作成したVMを一旦停止し、ProxmoxのVMの設定画面からのハードウェア → CD/DVDドライブ(ide2)をクリックした後、編集をクリックし、ISOイメージをrefplat-20241016-freetier.isoに変更します


https://<CML2のIPアドレス>:9090にアクセスし、でcml-controllerにログインします。

ログイン後に表示される画面から、Copy Refplat ISOをクリックし、ノード用のイメージを登録します

これでCML2の導入作業は完了です。
CML2の動作確認
CML2のインストール作業が終わったので動作確認を行います
https://<CML2のIPアドレス>にアクセスし、ログインします。

ダッシュボードが表示されるので画面右上のADDをクリックしワークベンチを追加します。

画面上部のツールバーにあるAdd Nodeをクリックし、数種類のノードが出てくる状態になっていることを確認します

後は自由にノードを配置し、シミュレーションを行うだけです。 シミュレーション環境なので、実際の環境では試しにくいことも気軽に試せます。

終わりに
本記事では、ミニPC上にProxmox VEで仮想環境を構築し、その上にCML2の無償版をインストールする方法について紹介しました。 PC1台あれば環境を作れるため、低予算でラボ環境を作ることができ大変満足しています
本記事が、手元にPCが余っている方や、低予算でラボ環境を作りたい方の助けになれば幸いです。
*1:ちょっとお高めなので、CML2 無償版を動かすだけならばIntel N100搭載の2万円前後のミニPCでも問題ないと思います