CML で利用出来る Windows Server の qcow2 イメージを作成する
Cisco CML の Reference Platform には Windows のクライアント / サーバは含まれません。 その為、CML 上で Windows Server を利用したい場合は自身で追加する必要があります。 Windows Server 2019 評価版のダウンロード先は GitHub の cml-community に書かれていますが、詳細な手順は書かれていません。 今回はこの手順を噛み砕いてメモします。
VHD イメージの入手¶
製品によっては、Microsoft 関連の評価イメージは Evaluation Center からダウンロード出来ます。 Windows Server は各々、下記からダウンロード出来ます。
vhd → qcow2 へのイメージ変換¶
qemu-img
を使ってダウンロードした .vhd
ファイルを .qcow2
フォーマットへ変換します。 -f vpc
と指定していますが、vpc
とは「VHD イメージ」のことを差しています。 データフォーマット毎に qemu-img
で指定する引数は qemu-img convert: raw, qcow2, qed, vdi, vmdk, vhd に記載されています。
qemu-img convert -f vpc -O qcow2 \
17763.737.amd64fre.rs5_release_svc_refresh.190906-2324_server_serverdatacentereval_en-us_1.vhd \
17763.737.amd64fre.rs5_release_svc_refresh.190906-2324_server_serverdatacentereval_en-us_1.qcow2
qemu-img convert -f vpc -O qcow2 \
20348.169.amd64fre.fe_release_svc_refresh.210806-2348_server_serverdatacentereval_en-us.vhd \
20348.169.amd64fre.fe_release_svc_refresh.210806-2348_server_serverdatacentereval_en-us.qcow2
上記では「オジリナルのファイル名はそのままに、拡張子だけ .qcow2
へ変更」しています。 実際に利用する際は win2019.qcow2
や win2022.qcow2
のように短いファイル名の方が扱いやすいかも知れません。
ノード定義ファイルの作成¶
CML 用のノード定義ファイルは各々、以下の通りです。 ホストのリソースが余っているようであれば、CPU / メモリ割り当てはもう少し増やした方が使いやすいかもしれません。
Windows_server_2019
id: win2019
general:
description: Windows Server 2019
nature: server
read_only: false
device:
interfaces:
has_loopback_zero: false
physical:
- eth0
serial_ports: 1
default_count: 1
ui:
visible: true
label_prefix: win2019-
icon: server
label: Windows Server 2019
sim:
linux_native:
libvirt_domain_driver: kvm
driver: server
disk_driver: sata
ram: 16384
cpus: 4
cpu_limit: 100
nic_driver: e1000
boot_disk_size: 64
video:
model: cirrus
memory: 16
boot:
timeout: 300
inherited:
image:
ram: true
cpus: true
cpu_limit: true
data_volume: true
boot_disk_size: true
node:
ram: true
cpus: true
cpu_limit: true
data_volume: true
boot_disk_size: true
configuration:
generator:
driver: server
schema_version: 0.0.1
Windows_server_2022
id: win2022
general:
description: Windows Server 2022
nature: server
read_only: false
device:
interfaces:
has_loopback_zero: false
physical:
- eth0
serial_ports: 1
default_count: 1
ui:
visible: true
label_prefix: win2022-
icon: server
label: Windows Server 2022
sim:
linux_native:
libvirt_domain_driver: kvm
driver: server
disk_driver: sata
ram: 16384
cpus: 4
cpu_limit: 100
nic_driver: e1000
boot_disk_size: 64
video:
model: cirrus
memory: 16
boot:
timeout: 300
inherited:
image:
ram: true
cpus: true
cpu_limit: true
data_volume: true
boot_disk_size: true
node:
ram: true
cpus: true
cpu_limit: true
data_volume: true
boot_disk_size: true
configuration:
generator:
driver: server
schema_version: 0.0.1
ノード定義ファイルのインポート¶
cmlutils (virlutils) を使って CLI からノード定義ファイルを CML へインポートする場合は以下のように実行します。
cml definitions nodes import -f win2019.yaml
cml definitions nodes import -f win2022.yaml
.qcow2 ファイルのインポート¶
cmlutils を使って CML から .qcow2
ファイルを CML へインポートする場合は以下のように実行します。
cml definitions images import image-file -f 17763.737.amd64fre.rs5_release_svc_refresh.190906-2324_server_serverdatacentereval_en-us_1.qcow2
cml definitions images import image-file -f 20348.169.amd64fre.fe_release_svc_refresh.210806-2348_server_serverdatacentereval_en-us.qcow2
イメージ定義ファイルの作成¶
Windows_server_2019
id: win2019
node_definition_id: win2019
description: Windows Server 2019
label: Windows Server 2019
disk_image: 17763.737.amd64fre.rs5_release_svc_refresh.190906-2324_server_serverdatacentereval_en-us_1.qcow2
read_only: false
disk_subfolder: win2019
schema_version: 0.0.1
Windows_server_2022
id: win2022
node_definition_id: win2022
description: Windows Server 2022
label: Windows Server 2022
disk_image: 20348.169.amd64fre.fe_release_svc_refresh.210806-2348_server_serverdatacentereval_en-us.qcow2
read_only: false
disk_subfolder: win2022
schema_version: 0.0.1
イメージ定義ファイルのインポート¶
cmlutils を使って CLI からイメージ定義ファイルを CML へインポートする場合は以下のように実行します。
cml definitions images import definition -f win2019.yaml
cml definitions images import definition -f win2022.yaml
CML 上の Windows Server へ Ctrl + Alt + Del を送信する¶
グループポリシー設定がデフォルトのままであれば、Windows Server は ログイン時に Ctrl + Alt + Del の入力を要求します。 CML 上の Windows Server へこのシーケンスを送信する手順は以下の通りです。
Step.1¶
CML 上で Windows Server を起動して VNC 接続すると、やがて初期セットアップが開始されます。
Step.2¶
初期セットアップが完了すると、初回ログイン時に Press Ctrl + Alt + Delete to unlock.
と表示されます。
Step.3¶
VNC 接続しているホストのタブを右クリックし、表示されたメニューから Send CTRL+ALT+DEL
をクリックします。
Step.4¶
これで CML 上の Windows Server へキーシーケンスが送信され、Windows Server のパスワード入力画面が表示されました。