基于 PVE 的折腾之路(1)之 Proxmox VE 的安装配置

/ 7 Comments / 10781 View

前言

家里那台 GEN 8 一直都是跑的 Windows 系统开启 Hyper-v 虚拟化 openwrt 和 CentOS。最近在测试一些东西的时候,觉得 8 G 的内存实在不够用,淘宝上的 8 G*2 也已经降到 320 而已,就买回来给换了。

最近发现 Nextcloud 备份照片无法后台进行,而且翻看照片也不方便,干脆全部推到重新规划一下,换个宿主系统,虚拟黑群晖 7 .0 和 openwrt,想干就干吧,毕竟生命在于折腾。

在经过几天的 Google 资料初步学习后,最后定下来使用 Proxmox VE。

介绍

Proxmox VE 是一个开源的服务器虚拟化环境 Linux 发行版。用户可通过网页的方式来管理服务器上使用 kvm 以及 lxc 技术运行的虚拟机。同时提供了一些先进功能的支持,如集群、HA 等,对普通用户而言,PVE 是可以免费使用的

安装

安装的 Windows 系统是安装在光驱位的 SATA 5 接口的固态硬盘上,然后使用 B120i RAID 对各个磁盘做了 RAID 0,所以引导没问题。这次安装 PVE 就更改成 AHCI 模式下,但产生的一个问题就是在 AHCI 模式下无法从 SATA 5 接口引导。

常见应对方法:

  1. 放弃 AHCI,继续使用 B120i 配置 RAID,和原来一样从 SATA 5 所在的 RAID 阵列引导;
  2. 系统安装在 SATA 5 的硬盘,用 GRUB 二次引导。
  3. 将系统装在 U 盘或 TF 卡里(主板上有一个 USB 和一个 TF 卡接口),然后在 BIOS 里选择从 USB 引导。

方法1 直接放弃了,因为发现哪怕用 B120i 做 RAID,也会出现无法成功引导启动的问题,而且风扇也和在 AHCI 模式下一直维持在 20%~25%(如果有解决方案,麻烦大神指教下);

方法 2 正常启动,但由于对 PVE 也是在熟悉过程中,不小心折腾崩溃了系统,尝试了多种办法无法修复,最后重新安装 PVE 格式化整盘,导致之前配置的虚拟机全部得重新安装和配置。

方法 3 就是我现在采用的安装方法,PVE 安装在 TF 卡上,虚拟机全部丢到 SATA 5 的固态硬盘上,提前备份好 qemu-server 目录的文件,哪怕系统崩溃直接重装后,然后把 qemu-server 目录的文件放回去,虚拟机就可以直接开机使用。

首先去 Proxmox 官网下载安装包,目前最新版本是 7.2。PVE 的安装过程跟 Esxi 或者 Windows 类似,GEN 8 可以通过 iLo 挂载镜像远程安装,这样省去了把 ISO 文件刻录进 U 盘再进行安装的麻烦,就是速度上会有点慢。

安装过程就懒得截图什么的了,网上已经很多大神分享了,本文也不是教程,主要记录个人的一些基础配置信息。建议去小破站或者油管看下司波图关于 PVE 的系列教程,对于入门而言还是很有参考价值。

初始配置

换源

# 删掉企业源
rm -rf /etc/apt/sources.list.d/pve-install-repo.list

echo "#deb https://enterprise.proxmox.com/debian/pve Bullseye pve-enterprise" > /etc/apt/sources.list.d/pve-enterprise.list
# 换源(中国科学技术大学)
wget https://mirrors.ustc.edu.cn/proxmox/debian/proxmox-release-bullseye.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bullseye.gpg

echo "deb https://mirrors.ustc.edu.cn/proxmox/debian/pve bullseye pve-no-subscription" > /etc/apt/sources.list.d/pve-no-subscription.list

echo "deb https://mirrors.ustc.edu.cn/proxmox/debian/ceph-pacific bullseye main" > /etc/apt/sources.list.d/ceph.list

sed -i.bak "s#http://download.proxmox.com/debian#https://mirrors.ustc.edu.cn/proxmox/debian#g" /usr/share/perl5/PVE/CLI/pveceph.pm

sed -i.bak "s#ftp.debian.org/debian#mirrors.aliyun.com/debian#g" /etc/apt/sources.list

sed -i "s#security.debian.org#mirrors.aliyun.com/debian-security#g" /etc/apt/sources.list
echo "deb http://download.proxmox.com/debian/pve bullseye pve-no-subscription" >>  /etc/apt/sources.list
# 更新系统
apt update && apt dist-upgrade -y

Local、Local-LVM 合并

安装了PVE,系统默认把 TF 卡空间分成了 Local、Local-LVM 两部分,不过以后也基本不会在这里面做什么操作,所以就把它们合并在一起,免得碍眼。

# 删除 local-lvm
lvremove pve/data

# 把删除的 Local-LVM 给Local
lvextend -l +100%FREE -r pve/root

然后选择 数据中心 ,存储 ,删除 Local-LVM。

编辑 Local,有需要的话就打上勾。个人建议是只选择 IOS,免得后面创建虚拟机的时候选错磁盘位置。毕竟TF 卡也主要运行系统,而且读写速度不够快,基本也不会去用。

编辑Local

添加 SSD 目录

硬盘分区、格式化

先确认硬盘的设备名称,例如 /dev/sdd,也可以在命令里用 fdisk -l 去确认。

# 分区
fdisk /dev/sdd

# 格式化
mkfs -t ext4 /dev/sdd1

# 创建 /mnt/ssd 目录:
mkdir -p /mnt/ssd

# 挂载分区:
mount -t ext4 /dev/sdd1 /mnt/ssd

# 开机挂载
echo /dev/sdd1 /mnt/ssd ext4 defaults 1 2 >> /etc/fstab

PVE 挂载硬盘

选择 数据中心 ,存储 - 添加 - 目录

ID 可以随便填,方便自己确认,目录就是刚挂载的 /mnt/ssd,内容全选,其它默认,点击添加;

几秒钟后就可以看到硬盘

添加 SSD目录

上传镜像文件

选择对应硬盘目录,选择内容 - 上传,选择准备好的ISO文件,上传即可,上传后建立虚拟机时便可以选择。

关联UPS

# 安装 apcupsd
apt-get install apcupsd -y
# 编辑配置文件 /etc/apcupsd/apcupsd.conf

# UPSNAME改成
UPSNAME XXX(起个名字)
 
# 设置为30表示,切换到ups电源30S后开始关闭虚拟机,然后关闭宿主机,0为不启用
TIMEOUT 30
 
# 每隔15s输出ups状态到日志中
STATTIME 15
 
# 开启日志,日志文件为/var/log/apcupsd.status
LOGSTATS on
 
# 线缆类型为usb
UPSCABLE usb
 
# usb接口,自动识别
UPSTYPE usb
 
# 还要注意把下面这行注释掉,不然不会自动发现usb
# DEVICE /dev/ttyS0
 
# 断电6s后才识别为正在使用电池,防止短时间断电导致错误+1
ONBATTERYDELAY 6
 
# 电池电量低于5%时关闭主机
BATTERYLEVEL 5
 
# 预计电量剩余时间小于3分钟时关闭主机
MINUTES 3

apcupsd 的命令

# 启动apcupsd
systemctl start apcupsd

# 查看apcupsd进程状态
systemctl status apcupsd

# 开机启动
systemctl enable apcupsd

# 重启apcupsd,更改配置文件后使用
systemctl restart apcupsd

# 查看ups状态
apcaccess

查看ups状态

总结

总得来说 PVE 的初始化配置都是命令为主,网上教程也很多,这些基础配置也属于比较简单,遇到什么问题 Google 一下都能找到答案,以后也基本上不会对宿主机做什么大改动。

后续是基于 PVE 上搭建 群晖 7.0.1、openwrt,为了一些操作需要还会安装一个 win10 系统的虚拟机吧。之前在 CentOS 上的那些 Docker 容器就交给群晖负责。

已有 7 条评论
  1. pve怎样可以恢复之前的虚拟机。重新安装PVE,还有一个数据硬盘,内有一个虚拟机,现在不知道怎样可以恢复这台虚拟机

    回复
    1. @海

      如果你记得那个虚拟机的大概配置,可以在 /etc/pve/qemu-server 新建一个 conf 配置文件挂载它

      回复
  2. Gen8就是内存最多只有16,受限制太大。
    我的gen8有很长一段时间都是宿主系统ESXI,也有试过做纯nas,安装了UNAS系统。
    有一段时间也尝试过PVE,不过感觉ESXI已经能完全满足我的需求了。
    现在干脆直接win10,看片的时候开机用下。
    风扇问题我倒是没有遇到,如果打游戏风扇声音会比较大,但是平时还算静音,转速大概就是十几。我觉得你的应该是磁盘模式调整一下或许就好了

    回复
    1. @青木

      现在风扇基本稳定在 10% 左右幅度,基本没啥影响。目前我也只是主系统 PVE,然后 lxc 安装 openwrt、docker之类的,然后虚拟机一个黑群晖和一个 windows,功率 50 瓦左右。

      回复
  3. Feng

    已经从PVE转到Unraid了

    回复
  4. 使用PVE对Linux的操作能力要求有点高,我还是习惯了VM。

    回复
    1. @山野愚人居

      上手简单,也基本是 web ui 里操作,只有一些设置需要 shell。
      现在纠结的就是,风扇问题,一直维持在25%,声音略大。

      回复
发表新评论