PVE安装后的优化记录

刚安装完ProxmoxVE后,发现默认配置在国内使用环境下不太友好,例如软件源、存储分配、性能模式等都需要进一步调整,本文记录一套自己的PVE优化流程,便于后续复用

更换PVE国内源

PVE默认使用国外源,在国内网络环境下容易出现更新慢或404问题,因此建议替换为国内镜像源

删除企业源

1
rm -f /etc/apt/sources.list.d/pve-enterprise.list

修改Debian软件源

编辑/etc/apt/sources.list.d/debian.sources,将里面的内容替换为如下

1
2
3
4
5
6
7
8
9
10
11
Types: deb
URIs: http://mirrors.tuna.tsinghua.edu.cn/debian
Suites: trixie trixie-updates trixie-backports
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Types: deb
URIs: https://security.debian.org/debian-security
Suites: trixie-security
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

修改Proxmox软件源

编辑/etc/apt/sources.list.d/pve-no-subscription.sources,将里面的内容替换为下面的内容

1
2
3
4
5
Types: deb
URIs: http://mirrors.tuna.tsinghua.edu.cn/proxmox/debian/pve
Suites: trixie
Components: pve-no-subscription
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg

修改CT Templates源

直接在终端运行就行

1
2
cp /usr/share/perl5/PVE/APLInfo.pm /usr/share/perl5/PVE/APLInfo.pm_back
sed -i 's|http://download.proxmox.com|http://mirrors.tuna.tsinghua.edu.cn/proxmox|g' /usr/share/perl5/PVE/APLInfo.pm

修改完成后可以更新下源然后重启机器

1
2
apt update
reboot

显示CPU频率与温度信息

PVE默认Web界面监控信息较少,可以通过第三方脚本增强显示能力

1
(curl -Lf -o /tmp/temp.sh https://raw.githubusercontent.com/a904055262/PVE-manager-status/main/showtempcpufreq.sh || curl -Lf -o /tmp/temp.sh https://mirror.ghproxy.com/https://raw.githubusercontent.com/a904055262/PVE-manager-status/main/showtempcpufreq.sh) && chmod +x /tmp/temp.sh && /tmp/temp.sh remod

如果功耗不显示,可以安装依赖,最后一行输出必须为“成功!”才表示安装成功了

1
apt update && apt install linux-cpupower && modprobe msr && echo msr > /etc/modules-load.d/turbostat-msr.conf && chmod +s /usr/sbin/turbostat && echo 成功!

如果之前使用过其他修改Web界面的脚本,建议先恢复官方版本后再安装本脚本

1
2
3
4
5
6
apt update
apt install --reinstall pve-manager=$(dpkg -l pve-manager | tail -n 1 | awk '{print $3}')
apt install --reinstall proxmox-widget-toolkit=$(dpkg -l proxmox-widget-toolkit | tail -n 1 | awk '{print $3}')
rm -f /usr/share/perl5/PVE/API2/Nodes.pm*bak
rm -f /usr/share/pve-manager/js/pvemanagerlib.js*bak
rm -f /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js*bak

每次pve升级之后都需要执行一次脚本,因为升级后PVE会自己还原文件

参考来源:GitHub 恩山论坛

PVE合并local-lvm到local

在安装PVE时,系统默认会自动创建两个存储:

  • local:用于存放ISO镜像、备份等
  • local-lvm:用于虚拟机磁盘存储

很多情况下会出现空间分配不合理的问题,例如local过小local-lvm过大

如果需要合并,需要在空环境下操作

删除local-lvm并扩展local空间

首先删除local-lvm

1
lvremove pve/data

接着把local-lvm空间分配给local

1
lvextend -l +100%FREE -r pve/root

删除PVE中的local-lvm存储

进入PVE Web界面,在数据中心-存储选择local-lvm点击移除即可

配置local存储支持虚拟机

编辑local存储,勾选以下全部内容即可

修改PVE节点名称

如果需要修改节点名称,需要在空环境下操作

修改hosts文件

编辑/etc/hosts文件,将其中的pve修改为你希望的新节点名称

修改主机名

1
hostnamectl set-hostname 新节点名称

完成上面的步骤后reboot重启系统

同步PVE节点目录

重启完成后,需要同步PVE节点配置目录

1
cp -r /etc/pve/nodes/pve /etc/pve/nodes/新节点名称

删除旧节点目录

确认新节点正常显示后,删除旧配置

1
rm -rf /etc/pve/nodes/pve/

PVE去除HTTPS不安全提示

PVE默认使用HTTPS访问,但由于未配置可信证书,浏览器会提示:不安全连接 无法保存密码 每次访问都有安全警告

对于仅内网使用无域名需求的用户,可以通过mkcert生成本地可信证书解决

下载mkcert工具

下载地址:

https://github.com/FiloSottile/mkcert/releases

根据设备架构选择文件下载,下载完后把文件重命名为mkcert.exe

生成证书

右键打开终端,运行以下命令

1
.\mkcert.exe -install PVE的IP



出现如下提示即表示成功,接着文件夹里面会多出192.168.2.3.pem 192.168.2.3-key.pem这两个文件

安装证书

打开PVE后台,在pve-凭证-上传自定义凭证里面上传我们的证书

*.key.pem文件上传到私钥栏,将*.pem文件上传到凭证链栏

重新打开PVE后台就可以看到一个小锁头了

参考来源:什么值得买


PVE安装后的优化记录
https://chenjihan.com/posts/1605/
作者
陈悸涵
发布于
2023年3月11日
许可协议