pve9中使用cloud-init

Cloud-Init 的核心价值就是 “一次配置,无限克隆”。它能让你跳过每次安装系统时的语言选择、分区、设置账户等繁琐流程。

各大 Linux 发行版(包括 Debian)都提供专门的 **Cloud Image (通用云镜像)**,格式通常是 .qcow2。这种镜像甚至不需要你去跑安装流程。

这里介绍的是安装好系统后手动创建cloud-init驱动器的操作。

1.关于 Cloud-Init 驱动器的配置

总线/设备 (Bus/Device): 建议选择 IDE

  • 原因: Cloud-Init 驱动器本质上是模拟一个只读的小型 CD-ROM(ISO文件)。IDE 总线的兼容性最好,能保证你的 Debian 在启动初期还没加载复杂驱动时就能稳稳读取到它。虽然 SCSI 也可以,但在 PVE 里 IDE 是 Cloud-Init 驱动器的“标准答案”,最不易出错。

存储设备 (Storage): 完全不影响

  • 原因: 这个驱动器文件极小(只有几 MB),里面存的只是几行文本配置(IP、密码等)。无论放在机械盘还是 SSD 上,对性能的影响都可以忽略不计。随便选一个即可(通常选 local-lvm)。

2.安装核心组件

Cloud-Init 是核心交互组件,但为了 PVE 能更好地管理虚拟机(如显示 IP 地址、支持优雅关机),必须同时安装 qemu-guest-agent

1
2
apt update
apt install cloud-init qemu-guest-agent -y

3.清理环境

为了保证克隆出来的虚拟机是“全新”的(拥有独立的 Machine ID 和 SSH Host Key),我们需要执行清理操作。

1
2
3
4
5
6
7
8
9
10
11
12
# 清理旧的 apt 缓存
apt clean

# 删除当前机器的 machine-id,这样新克隆的机器启动时会生成新的 ID
# 注意:这一步对 DHCP 获取 IP 很重要
truncate -s 0 /etc/machine-id

# 清理 Cloud-Init 的历史痕迹
cloud-init clean

# 关机
poweroff

4.添加 Cloud-Init 驱动器

这是你之前报错的步骤。现在可以安全添加了。

  • 路径:虚拟机 -> 硬件 (Hardware) -> 添加 (Add) -> Cloud-Init Drive。
  • 存储:选择 local-lvm 或其他存储池(不影响性能)。
  • 总线/设备:建议选择 IDE 0 或 IDE 1(兼容性最佳,防止找不到驱动)。
  • 点击创建

5.开启 QEMU Agent 选项

为了配合刚才安装的 qemu-guest-agent

  • 路径:虚拟机 -> 选项 (Options) -> QEMU Guest Agent。
  • 设置:改为 Enabled

6. 设置默认 Cloud-Init 参数(可选)

你可以现在点击左侧菜单的 Cloud-Init 面板,预设一个通用的“用户”和“SSH 公钥”。这样以后克隆时就不用每次都填公钥了。ip地址默认是dhcp,可以修改成固定系统,当然也可以留空,以后每次创建新的虚拟机后单独修改。

  • 注意:此时不要点“重生成镜像”。

7.转换为模板

  • 在左侧虚拟机列表,右键点击该虚拟机 -> **转换成模板 (Convert to Template)**。
  • 警告:此操作不可逆。一旦转换,这台虚拟机就不能再启动了,它变成了只读的“印钞版”。

8. 部署新虚拟机(实战演练)

现在,假设你需要部署第二台 Debian 13 用于测试 Seafile 数据库:

  1. 克隆:右键刚才做好的模板 -> 克隆 (Clone) -> 模式选择 完整克隆 (Full Clone) -> 填写新名称(如 seafile-db-01)。
  2. 配置:等待克隆完成(几秒钟),选中新出来的虚拟机 -> 点击 Cloud-Init 选项卡。
    • User/Password:设置新密码。
    • IP Config:点击编辑,输入静态 IP(例如 192.168.1.50/24)和网关。
    • SSH Key:粘贴你的公钥。(也可不改,留空,只用帐号密码登录)
    • 点击顶部的“重生成镜像 (Regenerate Image)”(这一步是将你的配置写入那个小小的 Cloud-Init 驱动器)。
  3. 启动:开机。

结果:你会发现虚拟机启动后,直接就是你设置好的 IP,可以直接 SSH 登录,且主机名(Hostname)自动变成了你在 PVE 里设置的名称。

作者

fei

发布于

2026-01-15

更新于

2026-01-15

许可协议

评论