Cisco CML へ新しいイメージファイルをアップロードするには以下の手段があります。
- WebUI からアップロードする
- CLI からアップロードする
上記の「2.」に近いのですが、今回は CLI から cmlutils を使ってイメージをアップロードする手順をメモしておきます。 cmlutils の基本的な使い方は以前に CML2 を cmlutils で CML から操作する というメモに書きました。
作業環境
今回の作業環境は以下の通りです。 作業環境そのものの、CML へアップロードするイメージも Ubuntu 22.04LTS を使いました。 Ubuntu 20.04LTS と大きな違いはありませんが、Ubuntu 22.04LTS ではデフォルトで python
が無く、python3
なので注意 (読み替え) が必要です。
- CML 2.3.1
- 作業環境は Ubuntu 22.04LTS
- CML へアップロードするイメージも 22.04LTS
cmlutils のインストール
Python の venv 環境を作成し、pip で cmlutils をインストールします。 以前に Python の venv 環境を direnv で自動的に有効/無効化する というメモを書きましたが、direnv の利用有無に応じて以下にように実行します。
direnv を使わない場合
mkdir cmlutils
cd cmlutils
python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install --upgrade pip cmlutils
direnv を使う場合
mkdir cmlutils
cd cmlutils
python3 -m venv .venv
echo 'source .venv/bin/activate' > .envrc
direnv allow
python3 -m pip install --upgrade pip cmlutils
Ubuntu 22.04LTS (jammy) のダウンロード
CML 上で Ubuntu を利用するには Ubuntu Cloud Images ページからイメージファイルをダウンロードします。 今回は Ubuntu 22.04LTS がターゲットですので jammy-server-cloudimg-amd64.img
をインストールしました。
curl -LO https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.img
必須ではありませんが、ダウンロードしたイメージの詳細を確認したい場合は qemu-img
を使います。 これは qemu-utils
パッケージに含まれています。
apt -y install qemu-utils
現時点でダウンロードしたイメージは以下のようになっていました。 フォーマットが qcow2 であることが分かります。
# qemu-img info jammy-server-cloudimg-amd64.img
image: jammy-server-cloudimg-amd64.img
file format: qcow2
virtual size: 2.2 GiB (2361393152 bytes)
disk size: 597 MiB
cluster_size: 65536
Format specific information:
compat: 0.10
refcount bits: 16
qcow2 イメージを cmlutils でアップロードする
cmlutils を利用するには認証情報を ~/.virlrc
へ記載します。 記載例は以下の通りです。
cat << 'EOF' > ~/.virlrc
VIRL_HOST="10.0.0.1"
VIRL_USERNAME="admin"
VIRL_PASSWORD="password"
CML_VERIFY_CERT=false
EOF
cmlutils でイメージをアップロードするには以下のように実行します。
cml definitions images import image-file -f jammy-server-cloudimg-amd64.img
CML へイメージを登録する
Ubuntu22 のイメージ定義ファイルは下記にアップロードしてあります。 vCPU x 2、メモリ 4GB にしてあります。
ノード定義例は以下の通りです。
Item | Value |
---|---|
ID | ubuntu-22-04-20220503 |
Label | Ubuntu 22.04 - 03 May 2022 |
Description | Ubuntu 22.04 - 03 May 2022 |
Disk Image | jammy-server-cloudimg-amd64.img |
Node Definition | Ubuntu22 |
コメント