PVE入门-导入模版机

创建模版

# 下载带cloud-init的ubuntu镜像
wget -O /var/lib/vz/template/iso/ubuntu-22.04-server-cloudimg-amd64.img http://cloud-images.ubuntu.com/releases/22.04/release/ubuntu-22.04-server-cloudimg-amd64.img

TEMPLATE_ID=9999
# 创建虚拟机
qm create $TEMPLATE_ID --name ubuntu22-template --memory 8192 --net0 virtio,bridge=vmbr0 --onboot 1

# 导入云镜像
qm importdisk $TEMPLATE_ID /var/lib/vz/template/iso/ubuntu-22.04-server-cloudimg-amd64.img local-lvm

# 设置硬盘总线为virtio
qm set $TEMPLATE_ID --virtio0 local-lvm:vm-9999-disk-0

# 修改虚拟机的引导顺序
qm set $TEMPLATE_ID --boot c --bootdisk virtio0

# 虚拟机添加cloud-init硬件设备
qm set $TEMPLATE_ID --ide2 local-lvm:cloudinit

# (使用OVMF才需要)设置串口显卡,否则你的虚拟机启动不了
qm set $TEMPLATE_ID --serial0 socket --vga serial0

# 将虚拟机设置成模板(这个虚拟机只能被克隆,无法运行)
qm template $TEMPLATE_ID

以下附加操作会造成VM启动或无法关机故障
1,使用EFI BIOS(OVMF),但没设置串口显卡
2,允许QEMU Guest Agent


创建配置文件(可选)

cat >/var/lib/vz/snippets/user-data.yaml <<EOF
#cloud-config
disable_root: False
chpasswd:
  expire: False
ssh_pwauth: True
EOF

这个文件必须放在snippets内(数据中心>存储>片段),并可对所有宿主机有效,不然虚拟机会迁移或启动失败


部署实例

VM_ID=123
# 从模版clone出一台虚拟机
qm clone $TEMPLATE_ID $VM_ID --name ubuntu

# 默认镜像硬盘只有2G,扩容到100G
qm disk resize $VM_ID virtio0 +100G

# 设置硬件
qm set $VM_ID --cores 2 --memory 8192

# 设置root密码
qm set $VM_ID --ciuser root --cipassword 123123

# 配置静态网络
qm set $VM_ID --ipconfig0 ip=10.0.10.123/24,gw=10.0.10.1,ip6=dhcp

# 设置DNS,默认用网关地址(可选)
qm set $VM_ID --nameserver 114.114.114.114

#附加配置,就是上一步中创建的文件(可选)
qm set $VM_ID --cicustom "user=local:snippets/user-data.yaml"

# 设置ssh密钥(可选)
qm set $VM_ID --sshkey ~/.ssh/id_rsa.pub

#如发生无法关机等情况,请删下面目录中虚拟机相关id的conf文件
rm /var/lock/qemu-server/lock-$VM_ID.conf
qm stop $VM_ID


安装qemu-guest-agent
https://www.ctyun.cn/developer/article/474676370411589
https://blog.csdn.net/qq_43626147/article/details/128289823

参考:

https://cloudinit.readthedocs.io/en/latest/index.html
https://pve.proxmox.com/wiki/Cloud-Init_Support
https://pve.proxmox.com/pve-docs/qm.1.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容