CML へ cmlutils で Ubuntu 22.04LTS イメージをアップロードする
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 を使わない場合¶
1 2 3 4 5 |
|
direnv を使う場合¶
1 2 3 4 5 6 |
|
Ubuntu 22.04LTS (jammy) のダウンロード¶
CML 上で Ubuntu を利用するには Ubuntu Cloud Images ページからイメージファイルをダウンロードします。 今回は Ubuntu 22.04LTS がターゲットですので jammy-server-cloudimg-amd64.img
をインストールしました。
1 |
|
必須ではありませんが、ダウンロードしたイメージの詳細を確認したい場合は qemu-img
を使います。 これは qemu-utils
パッケージに含まれています。
1 |
|
現時点でダウンロードしたイメージは以下のようになっていました。 フォーマットが qcow2 であることが分かります。
1 2 3 4 5 6 7 8 9 |
|
qcow2 イメージを cmlutils でアップロードする¶
cmlutils を利用するには認証情報を ~/.virlrc
へ記載します。 記載例は以下の通りです。
1 2 3 4 5 6 |
|
cmlutils でイメージをアップロードするには以下のように実行します。
1 |
|
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 |