Skip to main content

第二章 部署Proxmox VE

Proxmox VE 是基于 Debian 操作系统构建的虚拟化平台。因此,Proxmox 官方提供的安装镜像(ISO 文件)中集成了完整的 Debian 系统环境以及所有必需的 Proxmox VE 软件包,便于用户快速部署。

提示:如需了解 Proxmox VE 各版本与对应 Debian 发行版之间的兼容关系,请参阅《常见问题解答》中的版本支持对照表。

安装程序将引导用户完成整个部署流程,包括本地磁盘分区、基础系统配置(如时区、语言、网络设置)以及核心软件包的安装。整个安装过程通常仅需数分钟即可完成。对于新用户和现有用户而言,使用官方 ISO 镜像进行安装是最为推荐的方式。

此外,Proxmox VE 也支持在已有的 Debian 系统之上进行部署。该方式仅适用于具备 Proxmox VE 相关知识和系统配置经验的高级用户。

2.1 系统要求

在生产环境中部署 Proxmox VE 时,我们建议使用高质量的服务器硬件,以确保系统的稳定性与性能。为进一步降低单点故障风险,可将 Proxmox VE 部署于支持高可用性(HA)的集群环境中,实现虚拟机和容器服务的持续运行。

Proxmox VE 支持多种存储类型,包括本地存储(DAS)、存储区域网络(SAN)、网络附加存储(NAS)以及分布式存储系统(如 Ceph RBD)。有关详细信息,请参阅“存储”章节。

2.1.1 最低要求(仅用于评估用途)

以下配置仅适用于测试和评估环境,不适用于生产部署:

- 中央处理器(CPU):64 位架构(支持 Intel 64 或 AMD64)

- 支持 Intel VT 或 AMD-V 技术的 CPU/主板,以启用 KVM 全虚拟化功能

- 内存(RAM):1GB,外加运行虚拟机所需的额外内存

- 存储设备:硬盘驱动器

- 网络接口卡(NIC):至少一张千兆网卡

2.1.2 推荐系统要求

以下是 Proxmox VE 的推荐配置,适用于生产环境:

- CPU 架构:Intel 64 或 AMD64,且支持 Intel VT 或 AMD-V 技术。

- 内存:操作系统及 Proxmox VE 服务至少需 2GB RAM,另需为虚拟机预留内存空间。若使用 Ceph 或 ZFS 文件系统,每使用 1TB 存储空间建议额外配置约 1GB RAM。

- 存储性能:建议采用高速冗余存储方案,推荐使用固态硬盘(SSD)以提升性能。

- 操作系统存储配置:可使用带电池保护写缓存(BBU)的硬件 RAID 控制器,或采用非 RAID 模式结合 ZFS(可选 SSD 用于 ZIL 缓存)。

- 虚拟机存储配置:

对于本地存储,建议采用带 BBU 缓存的硬件 RAID,或使用非 RAID 模式以支持 ZFS 和 Ceph。

注意:ZFS 与 Ceph 不兼容硬件 RAID 控制器

支持共享存储与分布式存储架构。

- 存储设备建议:优先选用具备掉电保护功能(PLP)的工业级 SSD,避免使用消费级 SSD。

- 网络配置:建议配备冗余的千兆及以上网络接口控制器(NIC),并根据所选存储架构和集群部署需求配置额外网卡。

- PCI(e) 透传支持:CPU 需支持 VT-d(Intel)或 AMD-d(AMD)技术。

2.1.3 系统性能初步评估

如需快速了解已部署 Proxmox VE 系统的 CPU 和磁盘性能表现,可运行系统内置的 `pveperf` 工具进行初步测试。

提示:该工具提供的测试结果仅为快速基准参考。建议针对系统 I/O 性能等关键指标进行更详细的测试,以全面评估硬件性能。  
2.1.4 支持的 Web 浏览器

访问 Proxmox VE 的基于 Web 的管理界面时,推荐使用以下浏览器之一:

- Firefox(当前年份版本或最新扩展支持版本)

- Chrome(当前年份版本)

- Microsoft Edge(当前支持版本)

- Safari(当前年份版本)

从移动设备访问时,Proxmox VE 将自动切换至轻量化的触摸式界面,提供更好的用户体验。


2.2 准备安装介质

请从以下网址下载安装程序 ISO 镜像:https://www.proxmox.com/en/downloads/proxmox-virtual-environment/iso

Proxmox VE 的安装介质采用混合 ISO 格式,支持两种使用方式:

- 作为标准 ISO 镜像文件,可直接刻录至 CD 或 DVD;

- 作为原始扇区(IMG)镜像文件,可直接复制至 USB 闪存盘(U 盘)。

推荐使用 USB 闪存盘进行安装,因其具有更快的读写速度和更便捷的操作体验。

2.2.1 准备 USB 闪存盘作为安装介质

USB 闪存盘需要至少 1GB 的可用存储空间。

注意:
- 不建议使用 UNetbootin 工具,因为它可能无法正确处理 Proxmox VE 的安装镜像。  
- 在开始操作前,请确保 USB 闪存盘未挂载,并且其中不包含任何重要数据。 
2.2.2 GNU/Linux 系统操作指南

在类 Unix 系统中,可使用 `dd` 命令将 ISO 文件写入 USB 闪存盘。首先需确认 USB 设备的正确设备名称(详见下文),然后执行如下命令:

# dd bs=1M conv=fdatasync if=./proxmox-ve_*.iso of=/dev/XYZ
说明:
- 请将 `/dev/XYZ` 替换为实际的设备路径,并根据实际路径调整 `if=./proxmox-ve_*.iso` 中的文件名。  
- 操作时请务必谨慎,避免误写入其他磁盘分区。

查找正确的 USB 设备名称:

1. 使用 `dmesg` 命令查看插入 USB 设备前后的系统日志变化,识别新接入的设备。

2. 使用 `lsblk` 命令查看设备列表。插入 USB 闪存盘前后各执行一次:

# lsblk

插入后系统将新增一个设备节点,该节点即为当前使用的 USB 闪存盘。建议进一步核对其容量信息,以确保选择正确设备。

2.2.3 macOS 操作指南

打开终端(可在 Spotlight 中搜索“终端”应用)。

使用 `hdiutil` 工具将 ISO 文件转换为 macOS 可识别的 `.dmg` 格式,例如:

# hdiutil convert proxmox-ve_*.iso -format UDRW -o proxmox-ve_*.dmg
提示:macOS 通常会自动为输出文件添加 `.dmg` 扩展名。

获取当前设备列表:

# diskutil list

插入 USB 闪存盘后再次执行上述命令,识别新增的设备节点(如 `/dev/diskX`)。

卸载该设备:

# diskutil unmountDisk /dev/diskX

开始写入镜像:

# sudo dd if=proxmox-ve_*.dmg bs=1M of=/dev/rdiskX
注意:上述命令中使用 `/dev/rdiskX` 而非 `/dev/diskX`,是为了提升写入速度。
2.2.4 Windows 操作指南

在 Windows 系统中,可以使用以下工具准备 USB 闪存盘:

- Etcher

Etcher 是一款简单易用的工具,可以从 https://etcher.io 下载。它会引导用户完成选择 ISO 文件和 USB 闪存盘的过程。

- Rufus

Rufus 是一个轻量级替代方案,但需要启用 DD 模式才能正常工作。可以从 https://rufus.ie 下载。安装或使用便携版后,选择目标驱动器和 Proxmox VE ISO 文件。

重要提示:
  - 开始操作时,在询问是否下载不同版本 GRUB 的对话框中点击“否”。  
  - 在下一个对话框中选择 DD 模式。  

2.3 使用 Proxmox VE 安装程序

Proxmox VE 的安装程序 ISO 映像包含以下组件:

- 完整的操作系统(基于 64 位 Debian Linux);

- Proxmox VE 安装程序,支持使用 ext4、XFS、BTRFS(技术预览)或 ZFS 文件系统对本地磁盘进行分区,并完成操作系统的安装;

- 集成了 KVM 和 LXC 支持的 Proxmox VE Linux 内核;

- 提供用于管理虚拟机、容器、主机系统、集群以及所有必要资源的完整工具集;

- 基于 Web 的图形化管理界面,便于用户进行集中式管理。

注意事项:
在安装过程中,所选驱动器上的所有现有数据将被完全删除,请确保提前备份重要信息。
此外,安装程序不会为其他操作系统添加启动菜单项,因此多系统环境需手动配置引导加载程序。

请将准备好的安装介质(如 USB 闪存盘或 CD-ROM)插入目标服务器,并从该介质启动安装程序。

 提示:
为确保安装过程顺利进行,请确认服务器固件设置中已启用从安装介质(例如 USB)启动的功能。
需要注意的是,在 Proxmox VE 8.1 版本之前,启动安装程序时必须禁用安全启动(Secure Boot),以避免兼容性问题。

image.png

选择正确的启动项(例如“从 USB 启动”)后,Proxmox VE 安装菜单将显示,用户可以从以下选项中进行选择:

安装 Proxmox VE(图形界面)

启动标准的图形化安装程序。

 提示:
安装向导支持纯键盘操作。通过按住 ALT 键并结合按钮中标有下划线的字符,可以触发相应功能。
例如,按下 ALT + N 可激活“下一步”按钮。  


安装 Proxmox VE(终端用户界面)

启动基于终端的安装向导。该模式提供与图形化安装程序相似的整体体验,但对老旧或新型硬件具有更好的兼容性,适用于无法正常运行图形界面的环境。

安装 Proxmox VE(终端用户界面,串行控制台)

启动基于终端的安装向导,并配置 Linux 内核以使用主机的第一个串行端口作为输入和输出设备。此选项适用于完全无显示器的服务器环境,仅依赖串行控制台进行操作。

image.png

两种安装模式均基于相同的代码库执行实际的安装过程,从而充分利用十多年的错误修复成果,并确保功能一致性。

提示:
如果图形安装程序因驱动程序问题等原因无法正常运行,可以使用终端用户界面选项。
此外,请参考添加 nomodeset 内核参数以解决可能的兼容性问题。

高级选项:安装 Proxmox VE(图形,调试模式)

以调试模式启动安装程序。在多个安装步骤中会打开控制台窗口,便于排查潜在问题。若需退出调试控制台,请按 `CTRL-D`。此选项可用于引导一个包含所有基本工具的实时系统,例如修复降级的 ZFS rpool 或修复现有 Proxmox VE 设置的引导加载程序。

高级选项:安装 Proxmox VE(终端用户界面,调试模式)

与图形调试模式类似,但准备系统以运行基于终端的安装程序,适用于无法支持图形界面的环境。

高级选项: 安装 Proxmox VE(串行控制台调试模式)

与基于终端的调试模式相同,但额外配置 Linux 内核以使用机器的第一个串行端口进行输入和输出操作。此选项适用于完全无头的服务器环境。

高级选项:安装 Proxmox VE(自动化)

以无人值守模式启动安装程序,即使 ISO 文件未针对自动化安装进行适当准备。此选项可用于收集硬件详细信息或调试自动化安装设置。更多详情请参阅“无人值守安装”章节。

高级选项:救援启动

此选项允许从现有安装引导系统。它会搜索所有连接的硬盘,若检测到现有安装,则直接使用 ISO 中的 Linux 内核引导至该磁盘。此功能对解决引导加载程序(如 GRUB/systemd-boot)故障或 BIOS/UEFI 无法读取磁盘引导块的问题非常有用。

高级选项:测试内存(memtest86+)

运行 memtest86+ 工具以检查内存是否正常且无错误。为运行此选项,必须在 UEFI 固件设置实用程序中禁用安全启动。

安装流程概述

通常情况下,选择“安装 Proxmox VE(图形界面)”以启动标准安装过程。

第一步:阅读 EULA 并选择目标硬盘

首先阅读最终用户许可协议(EULA),然后选择安装的目标硬盘。

通过“选项”按钮可选择目标文件系统,默认为 ext4。若选择 ext4 或 xfs 作为文件系统,安装程序将启用逻辑卷管理(LVM),并提供额外选项以限制 LVM 空间分配(详见下文)。

Proxmox VE 还支持安装在 ZFS 上。由于 ZFS 提供多种软件 RAID 级别,因此对于缺乏硬件 RAID 控制器的系统而言是一个理想选择。目标磁盘必须在“选项”对话框中明确指定。更多特定于 ZFS 的设置可在“高级选项”中调整。

基本配置选项

接下来需要输入一些基础配置信息,包括所在位置、时区和键盘布局。这些信息用于选择附近的下载服务器以加速更新过程。安装程序通常能够自动检测这些设置,仅在自动检测失败或需要使用非标准键盘布局时才需手动调整。

超级用户密码与管理员邮箱

随后需要指定超级用户(root)的密码以及管理员邮箱地址。密码长度至少为 8 个字符,建议遵循以下指南以增强安全性:

- 密码长度至少为 12 个字符;

- 包含小写字母、大写字母、数字及特殊符号;

- 避免重复字符、键盘模式、常见字典单词、连续字母或数字序列、用户名、亲属或宠物名字、浪漫关系(当前或过去)以及个人信息(如身份证号码、祖先名字或日期)。

管理员邮箱地址用于接收系统通知,例如可用软件包更新信息或定期 cron 作业的错误消息。所有通知邮件都将发送至指定的邮箱地址。

网络配置

最后一步是网络配置。处于“UP”状态的网络接口将在下拉菜单中显示实心圆圈标记。请注意,在安装过程中只能指定 IPv4 或 IPv6 地址之一,不能同时指定两者。若需配置双协议栈节点,请在安装完成后手动添加额外的 IP 地址。

安装摘要与确认

安装向导将显示先前选择的所有选项摘要。请仔细检查每一项设置,如有必要可通过“上一步”按钮返回修改。

点击“安装”按钮后,安装程序将开始格式化磁盘并将软件包复制到目标磁盘。请等待此步骤完成后再移除安装介质并重新启动系统。

当软件包复制与配置完成后,服务器将自动重启(默认延迟几秒)。若安装失败,请在第二个虚拟终端(`Ctrl + Alt + F2`)查看具体错误信息,并确保系统满足最低要求。如问题仍未解决,请参考“获取帮助”章节。

2.3.1 安装后访问管理界面

系统成功安装并重启后,可通过 Proxmox VE 网页界面进行进一步配置:

1. 在浏览器中访问安装时分配的 IP 地址及端口 8006(例如:`https://youripadd:8006`);

2. 使用安装过程中设置的 root 用户名(PAM 域)及密码登录;

3. 上传订阅密钥以访问企业存储库。若未订阅,需配置公共存储库以获取安全更新、错误修复及新功能;

4. 检查 IP 配置与主机名;

5. 核对时区设置;

6. 审核防火墙规则。

2.3.2 高级LVM配置选项

在使用 ext4 或 xfs 文件系统时,安装程序将自动创建一个名为 `pve` 的卷组(VG),并在此卷组中创建三个逻辑卷(LV):`root`(根分区)、`data`(数据卷)和 `swap`(交换分区)。用户可通过以下参数自定义各逻辑卷的容量分配:

hdsize:定义总硬盘空间的使用量,预留部分空间可用于后续分区(如创建交换分区)。

swapsize:定义交换卷大小,默认值为已安装内存大小,最小 4GB,最大 8GB。所得值不得超过 `hdsize/8`。

maxroot:

设定根分区的最大容量,用于存储操作系统核心文件。当可用磁盘空间大于 48 GiB 时,默认值为硬盘容量的四分之一(`hdsize / 4`),上限为 96 GiB;若可用空间小于 48 GiB,则根分区至少占硬盘容量的一半(`hdsize / 2`)。

maxvz:定义数据卷的最大大小,实际大小计算公式为:

datasize = hdsize - rootsize - swapsize - minfree

其中 `datasize` 不得超过 `maxvz`。

minfree:指定在卷组 `pve` 中保留的最小空闲空间。当可用存储空间超过 128GB 时,默认保留 16GB;否则,默认值为 `hdsize / 8`。

2.3.3 高级 ZFS 配置选项

若在安装过程中选择 ZFS 文件系统,安装程序将自动创建名为 `rpool` 的 ZFS 存储池。默认情况下不会创建交换空间,但您可以在安装磁盘上预留未分区空间用于后续交换用途。此外,您也可以在系统安装完成后创建交换用的 zvol,但需注意这可能会引发兼容性或性能问题(详见 ZFS 交换注意事项)。

ashift

指定所创建 ZFS 存储池的 `ashift` 值。该值应至少设置为底层磁盘的物理扇区大小(扇区大小为 2 的 `ashift` 次方)。若未来可能将其他磁盘(如替换磁盘)加入该池,也应确保其扇区大小兼容当前 `ashift` 设置。

compress

控制是否在 `rpool` 中启用数据压缩功能。启用后可节省存储空间,但可能略微增加 CPU 负载。

checksum

定义 `rpool` 中数据使用的校验和算法,用于检测和防止数据损坏。建议使用默认推荐算法以确保数据完整性。

copies

设定 `rpool` 中数据的副本数量。该参数可提升数据可用性,但不能替代磁盘级别的冗余机制(如镜像或 RAID)。具体行为及限制请参考 `zfs(8)` 手册页。

ARC 最大容量

定义 ZFS 自适应替换缓存(ARC)的最大内存占用上限,用于控制 ZFS 对系统内存的使用量。如需更精细的内存管理策略,请参阅“限制 ZFS 内存使用”相关章节。

hdsize

指定安装过程中使用的磁盘总容量。通过设置该参数,可在磁盘上保留部分未分配空间,便于后续手动分区(例如创建交换分区)。该参数仅对可引导磁盘生效,具体包括:RAID0、RAID1 或 RAID10 配置中的第一个磁盘或镜像,以及 RAID-Z[123] 配置中的所有磁盘。

2.3.4 BTRFS 高级配置选项

当使用 BTRFS 文件系统时,安装程序不会自动创建交换空间。但您可以在安装磁盘上预留未分区空间,用于后续创建交换空间。您可以选择以下任意一种方式来配置交换:

- 创建独立的交换分区

- 创建 BTRFS 子卷并用于交换

- 使用 `btrfs filesystem mkswapfile` 命令创建交换文件

compress

该参数用于控制是否在 BTRFS 子卷中启用数据压缩功能。支持的压缩算法包括:`on`(等同于 `zlib`)、`zlib`、`lzo` 和 `zstd`,默认情况下压缩功能处于关闭状态。

hdsize

定义安装过程中使用的总硬盘容量。通过设置该值,可以在磁盘上保留部分未分配空间,以便后续手动分区(例如创建交换分区)。


2.3.5 ZFS 性能优化建议

ZFS 在具备充足内存的环境中运行效果最佳。若计划部署 ZFS,请确保为其分配足够的系统内存。推荐的内存配置策略为:4GB 基础内存 + 每 1TB 原始存储空间增加 1GB 内存。

ZFS 支持使用专用高速存储设备作为写入缓存,称为 ZFS 意图日志(ZIL)。建议使用 SSD 等高性能设备作为 ZIL 缓存。该功能可在系统安装完成后通过以下命令添加:

# zpool add <池名称> log </dev/快速 SSD 的路径>


2.3.6 添加 nomodeset 内核参数

由于图形驱动程序兼容性问题,在非常老旧或新型硬件上可能会出现启动故障。如果在引导过程中安装进程卡住,可以尝试添加 `nomodeset` 参数。该参数会阻止 Linux 内核加载任何图形驱动程序,并强制其继续使用 BIOS/UEFI 提供的帧缓冲区模式。

操作步骤如下:

1. 在 Proxmox VE 引导加载菜单中,选择“安装 Proxmox VE(终端用户界面)”项;

2. 按 `e` 键进入编辑模式;

3. 使用方向键定位到以 `linux` 开头的行,将光标移至该行末尾;

4. 添加参数 `nomodeset`,并用空格与原有最后一个参数分隔;

5. 按 `Ctrl-X` 或 `F10` 启动配置。


2.4 无人值守安装

Proxmox VE 支持通过自动化安装方式实现无人值守部署,适用于裸机环境下的全自动系统设置。完成安装并启动主机后,还可结合 Ansible 等自动化配置工具进行后续的系统调优与管理。

实现无人值守安装的关键在于提供一个包含安装参数的应答文件。该文件支持定义筛选规则,用于指定系统应使用的磁盘和网络接口。

要启用自动化安装流程,首先需要确定应答文件的获取来源,并基于该配置准备定制化的安装 ISO 镜像。

生成 ISO 后,其初始启动菜单中将新增一个名为“自动安装”的启动项,并在 10 秒倒计时后自动选中该选项开始安装。

如需了解更多关于无人值守安装的配置细节与操作步骤,请参考 Proxmox 官方 Wiki 文档。

2.5 在 Debian 上安装 Proxmox VE

Proxmox VE 以一组 Debian 软件包的形式发布,可部署于标准的 Debian 系统之上。在完成软件仓库配置后,您需执行以下命令以安装核心组件:

# apt-get update
# apt-get install proxmox-ve

虽然在现有 Debian 系统上安装 Proxmox VE 看似操作简便,但其前提是基础操作系统已正确配置,并且您需事先明确本地存储的规划与使用方式。此外,网络参数也需由用户手动设定。

尤其在使用 LVM 或 ZFS 等复杂存储架构时,安装与配置过程更具挑战性,需谨慎操作。

如需完整的操作流程与技术细节,建议参考 Proxmox 官方维基文档中提供的详细安装指南。