因为懒,想更省事
域设置用户名密码和key,只要有镜像,其他Linux的cloud-image也是通用的
下载img
axel -n 20 https://download.rockylinux.org/pub/rocky/8/images/x86_64/Rocky-8-GenericCloud-Base.latest.x86_64.qcow2
设置网络为dhcp模式
cat > user-data.yaml <<-EOF
#cloud-config
network:
version: 2
ethernets:
eth0:
dhcp4: true
EOF
用 qm 命令创建一个新的虚拟机,无硬盘
qm create 110 --name rocky8 --memory 4096 --net0 virtio,bridge=vmbr1 --cores 2 --sockets 1 --serial0 socket --boot c --bootdisk scsi0
将下载的磁盘镜像导入给新创建的虚拟机
qm importdisk 110 Rocky-8-GenericCloud-Base.latest.x86_64.qcow2 local-lvm --format qcow2
将分配给虚拟机的磁盘配置为 SCSI 控制器
qm set 110 --scsihw virtio-scsi-pci --scsi0 local-lvm:110/vm-110-disk-0.qcow2
qm set 110 --scsi0 local-lvm:110/vm-110-disk-0.qcow2
添加一个 Cloud-Init 驱动器,用于配置虚拟机的网络和用户设置
qm set 110 --ide2 local-lvm:cloudinit
网络配置是设置为 DHCP
qm importdisk 100 user-data.yaml local-lvm --format qcow2
或
qm set 110 --cicustom "user=data:text/plain;base64,$(echo -e '#cloud-config\nnetwork:\n version: 2\n ethernets:\n eth0:\n dhcp4: true' | base64 -w0)"
设置虚拟机从 scsi0 启动
qm set 110 --boot c --bootdisk scsi0
在虚拟机上启用 Cloud-Init
qm set 110 --ciuser root --cipassword your-password --searchdomain your-domain --nameserver your-nameserver --sshkeys /path/to/your/public/key