第一章 引言
第一章 引言
Proxmox VE 是一个用于运行虚拟机和容器的综合性平台。该平台基于 Debian Linux 构建,并完全以开源形式提供。为了实现高度灵活性,Proxmox VE 集成了两种核心虚拟化技术——基于内核的虚拟机(KVM)以及基于容器的虚拟化(LXC)。
本平台的设计目标之一是最大程度地简化管理流程。用户既可以选择在单个节点上部署 Proxmox VE,也能够构建由多个节点组成的集群环境以满足更高需求。所有管理操作均可通过我们提供的基于 Web 的图形化管理界面完成,从而显著降低操作复杂度。即使是初学者,也能够在几分钟内快速完成 Proxmox VE 的安装与基础配置。
1.1 中央管理
尽管多数用户最初从单节点部署开始,但 Proxmox VE 支持横向扩展至包含多个节点的集群环境。其集群架构完全集成于系统之中,并随默认安装一并提供,无需额外配置。
1.1.1 独特的多主架构设计
Proxmox VE 集成了基于 Web 的管理界面,能够为用户提供所有 KVM 虚拟机、Linux 容器以及整个集群的统一视图。用户可通过图形界面便捷地管理虚拟机、容器、存储及集群资源,无需部署额外的、结构复杂且成本高昂的管理服务器。
1.1.2 Proxmox 集群文件系统(pmxcfs)
Proxmox VE 采用专为其开发的集群文件系统 pmxcfs,该系统是一种基于数据库的配置文件存储机制,支持对数千台虚拟机的配置信息进行集中管理。借助 corosync 协议,配置数据可在所有集群节点之间实时同步。该文件系统将数据持久化存储于磁盘数据库中,同时在内存中保留一份副本,以实现快速访问。内存中数据的最大容量为 30MB,足以满足数千台虚拟机的配置需求。Proxmox VE 是目前唯一采用此类集群文件系统的虚拟化平台。
1.1.3 基于 Web 的管理界面
Proxmox VE 提供直观易用的管理体验。所有管理任务均可通过内置的 Web 管理界面完成,无需部署独立的管理工具或附加带有大型数据库的管理节点。其多主架构支持用户从集群中的任意节点对整个集群进行统一管理。该界面基于 JavaScript 框架 ExtJS 构建,用户可通过图形界面全面控制各项功能,并查看各节点的历史操作记录与系统日志,包括备份与恢复任务、虚拟机实时迁移以及高可用性(HA)触发的操作等。
1.1.4 命令行接口
针对熟悉 Unix Shell 或 Windows PowerShell 的高级用户,Proxmox VE 提供了功能完备的命令行接口(CLI),用于管理虚拟化环境中的所有组件。该接口支持智能自动补全功能,并配有完整的 UNIX 手册页文档,便于用户查阅与使用。
1.1.5 RESTful API
Proxmox VE 提供基于 RESTful 架构的 API 接口,采用 JSON 作为主要数据交换格式,并通过 JSON Schema 对整个 API 接口进行形式化定义。这种设计便于第三方管理工具(如定制化的托管平台)实现快速、高效的集成。
1.1.6 基于角色的权限管理
Proxmox VE 支持基于角色的用户与权限管理系统,允许对各类对象(如虚拟机、存储资源、节点等)设置细粒度访问控制。该机制可实现对用户权限的精确配置,有效控制资源访问权限。该模型通常被称为访问控制列表(ACL),其中每项权限均定义了一个主体(用户或用户组)、一个角色(权限集合)以及对应的操作路径。
1.1.7 多种身份验证方式
Proxmox VE 支持多种身份验证源,包括 Microsoft Active Directory、LDAP、Linux PAM 标准认证机制,以及内置的 Proxmox VE 身份验证服务器,便于实现灵活、安全的用户接入控制。
1.2 灵活的存储架构
Proxmox VE 采用高度灵活的存储模型,支持多种存储方式。虚拟机镜像既可部署于一个或多个本地存储设备,也可存放于共享存储系统,如 NFS 或 SAN。系统在存储配置方面无数量限制,用户可根据实际需求定义任意数量的存储单元。此外,Proxmox VE 支持所有适用于 Debian Linux 的存储技术,确保了广泛的兼容性。
将虚拟机部署于共享存储环境具有显著优势,其中最关键的是支持虚拟机的实时迁移(Live Migration)。由于集群中的所有节点均可直接访问虚拟机的磁盘镜像,因此在迁移过程中无需中断服务,从而实现业务连续性。
目前 Proxmox VE 支持的网络存储类型包括:
- LVM 组(通过 iSCSI 目标提供网络后端支持)
- iSCSI 目标端
- NFS 共享
- CIFS 共享
- Ceph 块设备(RBD)
- Ceph 文件系统(CephFS)
- 直接使用 iSCSI LUN 或通过光纤通道连接的 SAN 设备
同时,Proxmox VE 也支持以下本地存储类型:
- LVM 组(支持本地块设备、光纤通道设备、DRBD 等)
- 目录存储(基于现有文件系统)
- ZFS(Zettabyte 文件系统,提供高级数据管理功能)
1.3 集成备份与恢复机制
Proxmox VE 内置的备份工具 vzdump 能够为正在运行的容器(CT)和 KVM 客户机(Guest)生成一致性快照。该工具通过创建虚拟机或容器的数据存档,完整保留其配置文件与运行状态,从而确保备份的完整性与可用性。
进一步地,Proxmox 备份服务器的集成扩展了备份功能,提供包括全量备份与数据去重技术的结合、客户端加密机制、备份至磁带或 S3 对象存储,以及跨地域与远程 Proxmox 备份服务器之间的数据同步等功能,显著提升了数据保护能力与灵活性。
QEMU/KVM 的实时备份功能兼容多种存储类型,适用于 NFS、CIFS、iSCSI LUN 以及 Ceph RBD 上的虚拟机镜像。其采用的新型备份格式经过性能优化,可实现高效、快速的虚拟机备份操作,支持稀疏文件处理、无序数据写入以及 I/O 操作最小化等特性,从而有效降低系统资源消耗并提升备份效率。
1.4 高可用性集群架构
Proxmox VE 的多节点高可用性(HA)集群支持构建具备故障转移能力的虚拟服务器。该高可用性集群基于成熟的 Linux HA 技术栈构建,融合了 Corosync 和 Pacemaker 等核心组件,能够提供稳定、可靠的服务保障。通过节点间状态实时同步与自动故障切换机制,确保关键业务在发生硬件或服务故障时仍能持续运行。
1.5 灵活的网络架构设计
Proxmox VE 采用桥接式网络模型,实现虚拟机之间的高效互联。所有虚拟机可共享同一个网络桥接设备,其网络行为等同于物理设备连接至同一交换机。为实现虚拟机与外部网络的通信,桥接设备将绑定至物理网卡,并配置相应的 TCP/IP 参数。
为进一步增强网络灵活性,系统支持 VLAN(IEEE 802.1q)划分与网络接口绑定(Bonding/Aggregation)技术。借助这些功能,用户可构建高度可定制的虚拟网络拓扑,充分发挥 Linux 内核网络协议栈的性能与功能优势,满足复杂网络环境下的部署需求。
1.6 集成式网络防火墙
Proxmox VE 内置网络层防火墙系统,支持在任意虚拟机或容器的网络接口上进行数据包过滤。系统允许将常用的防火墙规则集合组织为“安全组”(Security Groups),便于统一管理与策略复用。该机制为虚拟化环境提供了细粒度的网络安全控制能力,有助于实现多租户环境下的隔离与访问控制。
1.7 超融合基础设施支持
Proxmox VE 是一个集计算、存储与网络资源于一体的虚拟化平台,具备对高可用集群、备份与恢复机制以及灾难恢复功能的统一管理能力。其所有核心组件均基于软件定义架构构建,具备良好的兼容性与集成性。
通过集中式的 Web 管理界面,用户可将整个基础设施视为单一系统进行统一管理,显著提升运维效率。上述特性使 Proxmox VE 成为构建和管理开源超融合基础设施(Hyper-Converged Infrastructure, HCI)的理想平台,适用于对灵活性与可扩展性有高要求的企业级应用场景。
1.7.1 超融合基础架构(HCI)在 Proxmox VE 中的应用优势
超融合基础架构(HCI)特别适用于基础设施需求高、但运维预算有限的部署场景,例如分布式架构环境(如远程办公室和分支机构)以及虚拟私有云和公共云平台。
Proxmox VE 提供的 HCI 解决方案具备以下核心优势:
可扩展性:支持计算、网络与存储资源的无缝扩展,用户可独立、快速地扩展服务器与存储容量,满足不断增长的业务需求。
成本效益:作为开源虚拟化平台,Proxmox VE 集成了计算、存储、网络、备份及管理中心等关键组件,无需额外采购昂贵的专有软硬件,有效降低总体拥有成本(TCO)。
数据保护与效率:平台内建备份与灾难恢复机制,确保数据安全与业务连续性,同时提升运维效率。
操作简便:提供直观的配置流程与集中式管理界面,简化系统运维工作,降低管理复杂度。
开源开放:基于开源架构设计,避免供应商锁定(Vendor Lock-in),保障用户对系统的自主控制权和技术灵活性。
1.7.2 超融合基础设施:存储支持
Proxmox VE 原生集成了对超融合存储架构的全面支持。用户仅需通过 Web 管理界面,即可轻松部署和管理以下两种主流存储技术:
Ceph:一种具备自愈与自管理能力的分布式共享存储系统,具有高可靠性、高可扩展性以及良好的容错机制。用户可通过 Proxmox VE 管理节点上的 Ceph 服务,实现存储资源的统一调度与维护。
ZFS:集文件系统与逻辑卷管理器于一体的高级存储解决方案,具备强大的数据完整性校验、多种 RAID 配置模式、快速且低开销的快照功能等多项特性。通过 Proxmox VE,用户可充分发挥 ZFS 在数据保护与存储效率方面的优势。
此外,Proxmox VE 还兼容多种其他存储技术,用户可通过“存储管理器”章节进一步了解相关配置与集成方式。
1.8 开源的价值与优势
Proxmox VE 采用 Linux 内核,并基于 Debian GNU/Linux 发行版构建,其全部源代码依据 GNU Affero 通用公共许可证第 3 版(AGPLv3)对外发布。该许可协议保障了用户随时访问和审查源代码的权利,同时也支持用户直接参与项目开发与贡献。
在 Proxmox,我们始终坚持优先采用开源软件的原则。开源不仅意味着对所有功能模块的完全访问权限,更体现了在安全性、稳定性与可靠性方面的高度保障。我们坚信,每一位用户都应拥有运行、修改、扩展软件源代码的权利,并可将改进成果回馈至开源社区。我们积极鼓励用户参与贡献,同时 Proxmox 团队负责确保产品始终符合企业级质量标准与可用性要求。
采用开源软件还能够显著降低总体拥有成本(TCO),并使您的核心基础设施摆脱对单一供应商的依赖,提升技术自主性与长期可持续发展能力。
1.9 使用 Proxmox VE的核心优势
- 开源软件架构
- 无供应商锁定风险
- 基于稳定高效的 Linux 内核
- 安装部署快速,操作界面友好
- 提供标准化 REST API,便于集成与自动化管理
- 拥有活跃且技术实力强大的开源社区支持
- 运维成本低,部署流程简洁高效
1.10 获取支持与帮助资源
1.10.1 Proxmox VE 维基
Proxmox VE 官方维基是用户获取信息的核心来源。该平台整合了官方参考文档与社区用户贡献的技术内容,为用户提供全面、持续更新的知识支持。
1.10.2 社区支持论坛
作为完全开源的虚拟化平台,Proxmox VE 鼓励用户通过 Proxmox 社区论坛进行技术交流与经验分享。该论坛由 Proxmox 官方支持团队维护,汇聚了来自全球的活跃用户群体。庞大的社区基础使其成为获取实际应用案例、疑难解答和技术建议的重要渠道。
1.10.3 邮件列表
邮件列表是用户与 Proxmox 社区进行高效异步沟通的重要方式之一。
用户邮件列表:proxmox-ve-users(Proxmox VE 用户交流群组)
Proxmox VE 作为开源项目,欢迎开发者参与贡献。开发团队的主要沟通方式如下:
开发者邮件列表:proxmox-ve-devel(Proxmox VE 开发讨论组)
1.10.4 商业支持服务
Proxmox Server Solutions GmbH 提供专业的企业级技术支持服务,用户可通过订阅 Proxmox VE 服务计划获得相应支持。订阅用户可访问 Proxmox VE 企业级软件仓库,其中基础版、标准版和高级版订阅用户还可登录 Proxmox 客户门户,享受由核心开发团队提供的技术支持服务,并享有承诺时限的响应机制。
如需了解批量订阅折扣或获取定制化服务信息,请联系 sales@proxmox.com。
1.10.5 缺陷与功能追踪系统
Proxmox 在 https://bugzilla.proxmox.com 提供一个公开的缺陷追踪平台。当您在使用过程中遇到任何问题时,均可在此平台提交报告。所提交的内容不仅可以是程序缺陷(Bug),也可以是新增功能建议或系统改进请求。该追踪系统具备完善的任务跟踪机制,可实时反映问题处理进度,并在问题修复完成后自动向提交者发送通知。
1.11 项目历史
Proxmox VE 项目起始于 2007 年,并于 2008 年发布首个稳定版本。初期采用 OpenVZ 实现容器虚拟化,同时结合 QEMU 与 KVM 构建虚拟机环境。当时的集群功能较为有限,用户界面也相对简单,采用传统的服务器端渲染网页技术。
随着项目的发展,我们迅速引入 Corosync 集群框架,进一步增强了集群管理能力。2009 年 Proxmox 集群文件系统(pmxcfs)的发布标志着集群管理的重大突破。该系统将底层集群复杂性完全抽象化,使用户无需了解底层实现即可轻松管理多达 16 个节点的集群,其操作体验与管理单一节点无异。
2011 年推出的 REST API 采用 JSON-Schema 编写的完整声明式规范,为第三方系统集成和扩展服务开发提供了标准化接口,极大提升了平台的可集成性与可扩展性。
REST API 的成熟也推动了前端架构的革新,使基于 JavaScript 的现代单页应用(SPA)得以取代原有用户界面。同时,我们以 noVNC 替换了传统的 Java VNC 控制台,使用户仅需浏览器即可完成对虚拟机的全面管理。
在存储支持方面,我们持续扩展兼容性。2014 年 Proxmox VE 成为首个默认集成 ZFS on Linux 的发行版,标志着存储技术的重大进步。随后实现的 Ceph 存储原生管理功能,为用户提供了高性价比的软件定义存储解决方案。
自项目启动以来,Proxmox VE 一直是首批为 KVM 提供商业支持的公司之一。KVM 项目本身也在持续演进,如今已成为广泛使用的虚拟化解决方案。Proxmox VE 团队开发了 KVM 实时备份功能,支持在任意存储类型上创建快照备份,进一步增强了数据保护能力。
项目初期,Proxmox 即作为全球首批企业之一,为 KVM 提供商业支持。KVM 技术持续演进,现已成为主流虚拟化引擎。我们开发的 KVM 实时备份功能,实现了在任意存储类型上的快照备份,显著提升了数据保护能力。
版本 4.0 的核心变革在于从 OpenVZ 迁移至 LXC 容器架构。容器系统现已深度集成,支持与虚拟机一致的存储与网络配置。同时推出的高可用性(HA)管理器,显著简化了高可用集群的部署与维护流程。
在 Proxmox VE 5 的开发周期中,我们引入了异步存储复制机制以及基于 ACME/Let's Encrypt 的自动化证书管理功能,进一步增强了平台的安全性与可用性。
软件定义网络(SDN)功能由社区与开发团队协作完成。该功能于 6.2 版本作为实验特性集成至 Web 管理界面,有效简化了复杂网络拓扑的配置流程。自 8.1 版本起,SDN 功能正式纳入默认安装组件,实现全面支持。
2020 年,我们发布了基于 Rust 编程语言构建的 Proxmox 备份服务器。该组件与 Proxmox VE 深度集成,通过增量备份、数据去重等机制显著提升了平台的备份效率与灵活性。
2022 年推出的 Proxmox 离线镜像工具,解决了无法接入互联网的封闭环境下的软件更新与订阅问题,扩展了平台的适用场景。
2023 年,用户期待已久的深色主题正式上线,提升了视觉体验。同年发布的 8.0 版本集成了对 Ceph 企业级存储库的访问支持,使所有 Proxmox VE 订阅用户均可获得最稳定的 Ceph 版本资源。
8.2 版本进一步增强了部署能力,引入了 ISO 安装程序的自动化与无人值守安装功能,大幅简化了大规模部署流程。同时发布的导入向导工具,支持用户从 VMware ESXi [1] 等外部虚拟化平台高效迁移虚拟机。此外,用户还可通过 Web 界面直接从文件存储中导入 Open Virtualization Format(OVF/OVA)格式的虚拟机镜像,提升迁移与部署效率。
1.12 文档优化与社区贡献
Proxmox VE 文档的改进与完善依赖于广大用户的积极参与。我们始终欢迎对文档内容进行补充、修正和优化。
如您在阅读过程中发现任何错误、遗漏或可提升之处,建议您通过 Proxmox 官方缺陷追踪系统提交问题报告,以协助我们持续提升文档质量。
如您希望贡献新的内容,请根据内容类型选择以下合适的渠道:
维基平台:适用于特定部署场景、操作指南或技术教程的分享,是社区知识沉淀的重要载体
参考文档:适用于面向所有用户的通用性内容,包括 Proxmox VE 的安装、配置、使用方法及故障排查指南等。该部分文档采用 AsciiDoc 格式编写。如需参与编辑,请克隆官方 Git 仓库(地址:git://git.proxmox.com/git/pve-docs.git),并参照 README.adoc 文件中的说明进行操作。
1.13 多语言本地化支持
Proxmox VE 的用户界面默认采用英文显示。得益于活跃的开源社区贡献,目前已有多种语言的本地化版本可供使用。我们诚挚欢迎更多用户参与翻译工作,包括新增语言支持、翻译最新功能模块,以及优化现有翻译内容中不完整或不一致的部分。
我们采用 gettext 工具集管理翻译资源文件。推荐使用 Poedit 等具备图形界面的工具进行翻译编辑,当然您也可以使用任意熟悉的文本编辑器。翻译工作无需编程经验或技术背景。
1.13.1 使用 Git 进行翻译贡献
所有语言资源文件均托管于 Git 仓库中。若您熟悉 Git 操作,建议参考《开发者文档》中的指引进行协作贡献。
如需创建新的语言翻译,请执行以下命令(请将 `<LANG>` 替换为对应的语言代码):
# git clone git://git.proxmox.com/git/proxmox-i18n.git
# cd proxmox-i18n
# make init-<LANG>.po如需编辑已有语言的翻译文件,可直接使用 Poedit 打开对应的 `.po` 文件:
# poedit <LANG>.po1.13.2 不使用 Git 进行翻译
若您不熟悉 Git 工具,仍可通过以下方式参与翻译。首先访问指定链接下载语言文件,找到您希望改进的语言条目,右键点击“raw”原始文件链接,选择“另存为”保存文件。完成翻译后,请将更新后的 `.po` 文件连同已签署的《贡献者许可协议》发送至 office@proxmox.com。
1.13.3 测试翻译效果
为确保翻译可在 Proxmox VE 中正常加载,您需将 `.po` 文件转换为浏览器可识别的 `.js` 格式。可通过以下脚本完成转换(脚本位于源码仓库中):
# ./po2js.pl -t pve xx.po > pve-lang-xx.js生成的 `pve-lang-xx.js` 文件可复制至 Proxmox 服务器的 `/usr/share/pve-i18n` 目录下进行测试。
您也可在仓库根目录运行以下命令构建 Debian 安装包:
# make deb
# apt-get install perl liblocale-po-perl libjson-perl1.13.4 提交翻译
完成翻译后,用户可将 .po 文件连同已签署的贡献者许可协议一起发送至 Proxmox 团队邮箱 office@proxmox.com。具备开发经验的用户还可选择将翻译作为补丁提交至 Proxmox VE 开发邮件列表。更多详情请参阅开发者文档。
