概要
Rocky Linux の VM テンプレートを Cloud Image から作成する方法です。
Cloud Image のダウンロード
公式 Repo から必要なイメージをダウンロードしてください。
# wget https://dl.rockylinux.org/pub/rocky/8/images/x86_64/Rocky-8-GenericCloud.latest.x86_64.qcow2
VM テンプレートの作成
IMG_ID=9000 \
IMG_FILE="Rocky-8-GenericCloud.latest.x86_64.qcow2" \
STORAGE="local-lvm" \
BRIDGE="vmbr0" \
&& qm create $IMG_ID --memory 2048 --net0 virtio,bridge=${BRIDGE} \
&& qm importdisk $IMG_ID ${IMG_FILE} ${STORAGE} \
&& qm set $IMG_ID --scsihw virtio-scsi-pci --scsi0 ${STORAGE}:vm-${IMG_ID}-disk-0 \
&& qm set $IMG_ID --ide2 ${STORAGE}:cloudinit \
&& qm set $IMG_ID --boot c --bootdisk scsi0 \
&& qm set $IMG_ID --serial0 socket --vga serial0 \
&& qm template $IMG_ID
変数について
| 変数 | 説明 |
|---|---|
| IMG_ID | Proxmox 内でユニークな VM ID |
| IMG_FILE | ダウンロード済みの qcow2 ファイル名 |
| STORAGE | インポート先ストレージ |
| BRIDGE | ネットワークブリッジ名 |
変数定義
IMG_ID=9000 IMG_FILE="Rocky-8-GenericCloud.latest.x86_64.qcow2" STORAGE="local-lvm" BRIDGE="vmbr0"
テンプレート用 VM 作成
# qm create $IMG_ID --memory 2048 --net0 virtio,bridge=${BRIDGE}
ダウンロードしたイメージをインポート
# qm importdisk $IMG_ID ${IMG_FILE} ${STORAGE}
scsi で attach
# qm set $IMG_ID --scsihw virtio-scsi-pci --scsi0 ${STORAGE}:vm-${IMG_ID}-disk-0
cloud-init 用の CD ドライブを用意
# qm set $IMG_ID --ide2 ${STORAGE}:cloudinit
attach したディスクを boot disk に設定
# qm set $IMG_ID --boot c --bootdisk scsi0
シリアルコンソールに接続
# qm set $IMG_ID --serial0 socket --vga serial0
テンプレートに変換
# qm template $IMG_ID
テンプレートからのデプロイ
作成したテンプレートから Clone して VM を起動します。
