首页
统计
留言版
壁纸
更多
相册
友人帐
直播
Search
1
jellfin、emby、kodi:电影、电视剧、字幕命名规范
289 阅读
2
群晖ssh修改sn码和mac地址
108 阅读
3
图片压缩网站与软件
99 阅读
4
podman安装青龙
94 阅读
5
pve设置开机挂载虚拟硬盘(适用基于debian的linux系统)
89 阅读
默认分类
小主机
资源工具
登录
Search
标签搜索
pve
podman
debian
linux
硬盘挂载
Power Query
Excel
cloud-init
虚拟机
Feng
累计撰写
10
篇文章
累计收到
4
条评论
首页
栏目
默认分类
小主机
资源工具
页面
统计
留言版
壁纸
相册
友人帐
直播
搜索到
1
篇与
的结果
2025-08-21
PVE 中 cloud-init 使用指北
在 PVE 中使用 LXC 容器可以快速创建 Linux 环境,并且能轻松设置好 IP 和 SSH 密钥。但用虚拟机搭建 Linux 环境的时候,每次都得登录进去手动修改 SSH 密钥、IP 地址这些配置,有点麻烦。有没有办法让虚拟机用起来也能这么轻松呢?兄弟,有的!办法就是用 cloud-init 来自动配置。cloud-init 简介Cloud-init 是一种用于云实例自动化初始化的工具,它在系统启动时执行一系列任务,如设置主机名、安装软件包、运行脚本等。Cloud-init 通过读取用户数据、元数据和供应商数据来执行这些任务,这些数据可以通过 YAML 文件提供。PVE 使用 cloud-init 要点相比通常创建的虚拟机,想要使用 cloud-init,需要注意以下要点{tabs}{tabs-pane label="包含 cloud-init 的系统镜像"}获取 Cloud Images。Cloud Images 镜像已内置 Cloud-init 组件,无需额外安装。Cloud Images 具体介绍:隐藏内容,请前往内页查看详情Cloud Images 下载地址。以下是常见发行版的 Cloud Images 下载地址:Debian: https://cloud.debian.org/images/cloud/Ubuntu: https://cloud-images.ubuntu.com/releases/centOS: https://cloud.centos.org/centos/Fedora: https://alt.fedoraproject.org/cloud/RedHat: https://access.redhat.com/downloads/openSUSE: http://download.opensuse.org/repositories/Cloud:/Images:/国内镜像源下载举例。国外下载比较慢,国内用户可以通过国内镜像源下载 Cloud Images。以南京大学镜像站为例,镜像参考如下,可以按需要在镜像源找其他需要的镜像:debian:https://mirrors.nju.edu.cn/debian-cdimage/cloud/bookworm/latest/debian-12-genericcloud-amd64.qcow2ubuntu:https://mirrors.nju.edu.cn/ubuntu-cloud-images/releases/24.10/release/ubuntu-24.10-server-cloudimg-amd64.img{/tabs-pane}{tabs-pane label="虚拟机添加 cloud-init 设备"}添加位置参考 pve-虚拟机-硬件-添加-CloudInit 设备{/tabs-pane}{tabs-pane label="cloud-init 设置"}修改用户名、密码、IP、网关等信息后,点击重新生成镜像即可{/tabs-pane}{/tabs}完整操作记录一、下载镜像找到你需要的镜像链接打开南京大学镜像站,找到符合要求的镜像,右键复制链接。{collapse}{collapse-item label="镜像查找" open}隐藏内容,请前往内页查看详情{/collapse-item}{/collapse}打开 PVE 输入以下命令下载点击右上角“Shell”,新窗口输入wget + 镜像链接即可下来镜像到 pve。wget https://mirrors.nju.edu.cn/debian-cdimage/cloud/bookworm/latest/debian-12-genericcloud-amd64.qcow2{collapse}{collapse-item label="指令说明" close}wget <镜像链接>{/collapse-item}{/collapse}‘debian-12-genericcloud-amd64.qcow2’ saved [345833472/345833472]说明下载完毕二、新建虚拟机点击右上角“创建虚拟机”各参数设置如下{tabs}{tabs-pane label="常规"}VM ID:按喜好设置,不与现有的虚拟机重复即可名称:按实际用途命名,这边是当作模版使用所以取名为“debian-template”{/tabs-pane}{tabs-pane label="操作系统"}选择“不使用任何介质”,使用云服务器镜像{/tabs-pane}{tabs-pane label="系统"}勾选“QEMU 代理”其余设置默认即可,便于 pve web UI 直接查看虚拟机信息{/tabs-pane}{tabs-pane label="磁盘"}删除默认磁盘,稍后使用命令将镜像转换成系统磁盘{/tabs-pane}{tabs-pane label="CPU"}按实际需要调整,可以按 CPU 实际核心数设置,后续可随时调整{/tabs-pane}{tabs-pane label="内存"}按实际需要调整,后续可随时调整{/tabs-pane}{tabs-pane label="网络"}去掉“防火墙”设置,后续可随时调整{/tabs-pane}{tabs-pane label="确认"}确认无误后,完成{/tabs-pane}{/tabs}三、导入镜像PVE 中输入以下指令,将刚刚下载的镜像转换为虚拟硬盘qm importdisk 404 debian-12-generic-amd64.qcow2 local-lvm{collapse}{collapse-item label="指令解析" close}qm importdisk <vmid> <image-name> <storage> --format=<disk-format><vmid>: 虚拟机的 ID。<image-name>: 磁盘镜像的文件名,如果不在当前文件夹则需带上路径。<storage>: 磁盘生成所在的存储名字。--format: 指定磁盘映像的格式(例如 qcow2、vmdk)。{/collapse-item}{/collapse}见到 successfully imported disk 'local-lvm:vm-404-disk-0' 说明导入成功进入虚拟机的硬件设置,可以看到,多了一个“未使用的磁盘”双击后添加即可可以看到硬盘只有 3 GB,只需要选定硬盘后选择“磁盘操作”即可调整大小,可以按需增加大小。也可以等有需要再增加大小。设置磁盘为系统盘,进入“选项-引导顺序”,勾选刚刚的硬盘,并拖动顺序到第一位如下图所示四、设置 cloud-init添加 cloud-init 设备,进入虚拟机的“设备”,点击添加,添加“CloudInit 设备”{card-describe title="额外设置"}不设置,并不影响使用隐藏内容,请前往内页查看详情{/card-describe}此时 Cloud-Init 可以点击了。点击进入,按需修改“用户名、密码、IP配置等信息”然后点击“重新生成镜像”即应用生效五、启动虚拟机点击“启动”即可启动虚拟机,然后点击“控制台”即可直接进入虚拟机控制界面,开机后会自动加载 Cloud-Init 看到上图信息,说明 Cloud-Init 运行完毕,可以输入用户名密码直接使用。安装 QEMU Guest Agent,输入以下指令安装apt update #如果 Cloud-Init 升级程序包为“是” 则无需该指令,直接运行安装指令即可 apt install qemu-guest-agent -y关闭虚拟机通过以下指令即可关闭虚拟机,为转换为模版做准备。poweroff六、转化为模版将虚拟机关闭之后,将虚拟机转换为模版此时就有一个随时可以克隆快速使用的 linux 虚拟机了克隆虚拟机,然后通过 cloud-init 即可快速初始化,快速创建虚拟机使用链接克隆,不占用额外磁盘空间、但是IO性能较差、适合临时测试完整克隆,完成复制硬盘,适合生产使用
2025年08月21日
16 阅读
1 评论
0 点赞