cloud init
更新时间:2026年2月22日 22:29
浏览:99
https://cloudinit.readthedocs.io/en/latest/tutorial/qemu.html
下载并转换镜像
wget https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.img
qemu-img convert -f qcow2 -O qcow2 jammy-server-cloudimg-amd64.img s150.qcow2
qemu-img resize s150.qcow2 512G
qemu-img info s150.qcow2
如已有现成的 qcow2 镜像,可跳过
创建 cloud-init 配置
user-data
#cloud-config
user: ubuntu
password: ubuntu
chpasswd: { expire: False }
ssh_pwauth: True
meta-data
instance-id: s150
local-hostname: s150
network-config
version: 2
ethernets:
eth0:
dhcp4: false
addresses: [10.117.11.150/24]
gateway4: 10.117.11.254
nameservers:
addresses: [119.29.29.29]
打包成 cloud-init.iso
# apt install cloud-image-utils
cloud-localds \
cloud-init.iso \
user-data \
meta-data \
--network-config network-config
# 验证
isoinfo -i cloud-init.iso -l
创建
镜像中已经包含了操作系统的情况
virt-install \
--name s150 \
--vcpus 16 \
--memory 65536 \
--disk path=/data/kvm/vm/s150/s150.qcow2,size=512,format=qcow2 \
--disk path=/data/kvm/vm/s150/cloud-init.iso,device=cdrom \
--import \
--os-variant ubuntu22.04 \
--network network=direct,source=bond0,source.mode=bridge,model.type=virtio \
--noautoconsole \
--graphics none \
--console pty,target_type=serial \
--serial pty \
--boot hd,cdrom
# VNC
# --graphics vnc,listen=0.0.0.0 \
# --network bridge=br-150 \
# --network network=default \
# --network type=direct,source=bond0,model=virtio \
# virsh destroy s150 && virsh undefine s150
