PVE(Proxmox Virtual Environment),是一款功能强大的开源虚拟化平台。基于 Debian GNU/Linux 开发,同时附带自定义内核并封装 KVM 虚拟化和 Linux 容器 (LXC)。

PVE 是一个用于企业虚拟化的服务器管理平台,也可以在简单的 IT 设置中用于托管虚拟机。

Proxmox 提供集成的 Web UI,用于集中管理虚拟机、容器和集群。对于习惯 Linux shell 的高级用户,Proxmox 提供了一个 CLI 实用程序来管理虚拟环境中的所有组件。

Proxmox 主要用于裸机硬件,以获得最佳性能,尤其是在生产环境中更建议直接安装。另一方面,由于它基于 Debian,因此可以无缝安装在 Debian 之上。

本教程将演示如何在 Debian 12 系统安装 PVE。

1] 更新 apt 缓存

安装 PVE 之前,使用如下命令更新 apt 软件库缓存:

# apt update

2] 设置静态 IP 地址

出于显而易见的原因,我们需要为 Proxmox 服务器设置一个静态 IP 地址,这样方便之后的虚拟化管理。默认情况下,Debian 12 网络会被配置高使用 DHCP。

为了确认地址是动态地址还是静态地址,可以使用如下命令:

# ip a

图.1 查看 Debian 12 主机 IP 地址类型

在 IP 地址信息中,如果出现了”dynamic”,则表示此地址是由 DHCP 分配的动态 IP。查看 Debian 系统的网络配置文件”/etc/network/interfaces”,可以获得详细信息。如下图所示,可以确认网络设备”ens33″的 IP 地址是动态获取的:

图.2 查看 Debian 网络配置文件

修改该配置文件,将类型由”dhcp”修改为”static”,并设置如下示例内容,则完成了静态 IP 地址的设置:

allow-hotplug ens33
iface ens33 inet static
    address 192.168.209.252/24
    network 192.168.209.0
    broadcast 192.168.209.255
    gateway 192.168.209.2
    dns-nameservers 192.168.209.2

静态地址配置完成后,可以使用如下命令重新启动网络,以使静态 IP 生效:

# systemctl restart networking

再次查看 IP 详情,就会发现此时的 IP 地址已经成为静态地址了(”dynamic”消失)。

3] 配置主机名解析

现在需要配置主机名和 IP 地址的解析,在不使用 DNS 的情况下,可以通过修改”/etc/hosts”文件来配置主机和 IP  地址的解析。首先使用如下命令设置主机名:

# hostnamectl set-hostname proxmox
# exec bash

之后,在”/etc/hosts”文件中增加如下内容:

192.168.209.252 proxmox

最后,使用如下命令确认配置已经生效:

# hostname 
# hostname --ip-address

图.3 查看主机名及解析 IP

4] 添加 Proxmox VE 软件库

在安装 Proxmox 之前,需要安装一些基础依赖包,命令如下:

# apt install curl software-properties-common apt-transport-https ca-certificates gnupg2

安装完依赖包后,就可以使用如下命令添加 PVE 软件源了:

# echo "deb [arch=amd64] http://download.proxmox.com/debian/pve bookworm pve-no-subscription" > /etc/apt/sources.list.d/pve-install-repo.list

此命令实际上是在”/etc/apt/sources.list.d”目录增加 proxmox 的软件源。命令执行成功后,就可以下使用如下命令下载 PVE 软件库的密钥了:

# wget https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg

最后,使用如下命令更新 APT 缓存:

# apt update && apt full-upgrade

5] 安装 Proxmox 内核

一旦系统更新成功,就可以安装 Proxmox 的定制内核了,Proxmox 需要使用定制内核,而之前 Debian 的内核则可以卸载不用了。

# apt install proxmox-default-kernel -y

图.4 安装 Proxmox 内核

安装成功后,会出现如上图的提示,表示 Proxmox 内核已经安装完成。

6] 安装 Proxmox 软件包

使用如下命令,安装 PVE 软件包:

# apt install proxmox-ve

安装过程比较久,耐心等待安装完成。

安装完成后,使用如下命令检测 PVE 是否正常启动:

# ss -tunelp | grep 8006

图.5 查看 Proxmox 侦听端口

如出现如图所示信息,表示8086端口已经有进程侦听,则表示 PVE 已经安装成功了。

7] 移除 Linux 内核

由于 Proxmox VE 附带其内核,保留默认的 Debian 内核可能会在升级时造成麻烦。因此,建议按如下方式清除默认的 Debian 内核:

# apt remove linux-image-amd64 'linux-image-6.1*'

删除系统默认内核后,记得使用如下命令更新 grub,否则会造成系统启动不成功:

# update-grub

Debian 系统 os-prober 是一个实用程序,它扫描磁盘分区中的操作系统并将它们列在 GRUB 条目上。但是,扫描的分区可能还包括分配给虚拟机的分区。

这肯定是我们不想得到的结果,为了防止这种情况发生,使用如下命令卸载 os-prober 软件包:

# apt remove os-prober

8] 访问 PVE Web UI

现在,重新启动主机:

图.6 PVE 启动项

可以看到,重新启动后的 GRUB 启动项只包含 PVE 内核启动项了。选择”Proxmox VE GNU/Linux”,按回车键启动系统。

启动成功后,就可能通过浏览器访问”https://your-ip-address:8006/”来访问 PVE 的仪表盘了,示例主机 IP 为 192.168.209.252,则仪表盘访问 URL 为”https://192.168.209.252:8006″。

图.7 PVE 控制台登录页面

使用主机 root 用户账户及密码,即可登录进入 PVE 控制台,如下所示:

图.8 PVE 控制台界面

通过控制台,可以方便的创建和管理虚拟机、Linux 容器以及其他组件,例如存储、用户和网络。

本教程演示了如何在 Debian 12 上安装 Proxmox。需要牢记的是,Proxmox VE 是裸机安装程序,最适合在没有安装任何操作系统的物理服务器上安装。

2 thoughts on “Debian 12 系统安装 PVE 虚拟化环境”

  1. 您好,我使用华为RH2288v3 使用Debian 12.4安装PVE 8.1
    我在删除Debian Linux 内核后,开机正常进入PVE,显示我的内网IP+8006,但我始终无法连上,主机上所有网口都试过了

    我尝试不删除Debian Linux内核,Debian+PVE 双内核,这样的情况下,我就能进入PVE 后台,这种情况要怎么解决呢?

    1. 您好,根据您描述的现象,感觉 PVE 内核对于服务器网卡的驱动支持有问题,造成网卡不能正常工作。因为 PVE 后台只是一个 web 应用,访问时需要网卡支持。您可以使用 PVE 内核启动后,再通过显示器直接进入系统终端界面,然后尝试 ping 外部的 IP 地址,来判断故障是不是由于网卡工作不正常引起的。

      或者直接通过 PVE 安装镜像在服务器安装系统,看会不会遇到类似问题,以便逐步定位问题原因。

      我能想到的暂时只有这些,希望有帮助。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注