Community编程与开发github.com

bitranox/infra-proxmox

用于配置、管理或排查 Proxmox VE 问题 — 包括安装、主机管理、集群、虚拟机、容器、存储、Ceph、SDN、防火墙、用户管理、高可用、备份、通知以及 CLI 工具(pvecm、qm、pct、pvesm、pveceph、ha-manager、pvesh、vzdump)。涵盖 Proxmox VE 9.1.2。

infra-proxmox 是什么?

该技能为 Proxmox VE 9.1.2 提供了一个全面的操作参考,涵盖集群配置、安全协议、操作审查、代码风格、集群规模表和故障排查快速参考。它通过自动检测环境并指导使用 pvecm、qm、pct 等命令行工具,确保安全高效地管理节点、虚拟机、容器和存储,包括 Ceph 和 SDN。技能特别强调安全操作,要求在进行破坏性操作前进行节点数、集群仲裁和备份检查,并建议使用 JSON 输出格式以方便脚本处理。此外,它还包含一个强制性的行动审查协议,通过红队/蓝队评估降低生产环境风险。该技能适用于 Claude Code、Cursor 和 Codex 等 AI 代理平台,可将复杂的管理任务转化为分步指令,适合日常运维、故障排除以及自动化编排场景。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/bitranox/bitranox-skills/tree/HEAD/plugins/bitranox/skills/infra-proxmox

Installed? Explore more 编程与开发 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Proxmox VE 操作参考(版本 9.1.2)

节点、客户机和服务可能会宕机、不可达或在中途消失。切勿假设任何组件都在运行:应重新查询实际状态,在超时后重试,并优雅降级。有关自愈模式,请参见 bitranox:coding-resilience。


1. 集群配置(自动检测)

检查项命令
环境pveversion --verbose(完整组件版本:kernel、pve-manager、corosync、qemu-server)
节点pvecm nodes(数量、名称、ID)/ pvecm status(IP、仲裁、传输、链路状态)
仲裁pvecm status -- 检查 "Quorate" 字段。阈值:floor(total_nodes/2) + 1
API 访问pvesh(本地 CLI),pveproxy(HTTPS :8006),REST API。脚本中使用 --output-format json
存储pvesm status(活跃存储)/ cat /etc/pve/storage.cfg(完整配置)
网络pvesh get /nodes/{node}/network --output-format json / cat /etc/network/interfaces
订阅pvesubscription get(检查状态)/ pvesubscription set <key>(应用密钥)

2. 安全协议

规则详细信息
无破坏性批量操作影响超过 1 个节点的命令(重启、关机、批量停止虚拟机)需用户明确确认。
仲裁检查节点重启/维护前:pvecm status。如果 (current - 1) < floor(total/2) + 1 -- 中止。对于 2 节点集群,检查 QDevice。
先备份虚拟机配置更改或升级前,确认备份存在:pvesm list {storage} --content backup
禁止强制删除切勿在不验证资源 ID 的情况下使用 --purge 或 --force:qm config {vmid} 或 pct config {vmid}
HA 状态HA 资源更改前:ha-manager status -- 确认无迁移/隔离在进行中。
网络更改始终先试运行:ifreload -a -n(ifupdown2 没有 --test)。切勿在承载客户机流量的桥上执行 ifdown。远程应用及 DHCP/绑定/WLAN 陷阱:references/host-networking.md。
Corosync 配置先复制,编辑副本,备份当前配置,然后移动。始终递增 config_version。
存储操作移除存储前:pvesm list {storage} 确认无虚拟机/容器引用它。
保护标志qm set {vmid} --protection 1 / pct set {vmid} --protection 1 防止意外删除。
ZFS 属性清理PVE 将客户机配置的磁盘大小存储为数据集的 refquota。清理会清除所有数据集的 refquota/refreservation,从而静默移除所有客户机的磁盘限制,而 pct config 仍报告旧大小,导致一个容器可能填满整个池。排除以 subvol- 或 vm- 开头的叶子名称。

3. 操作审查协议

强制性。 在每次直接对 Proxmox 节点、虚拟机或容器执行操作(命令、配置更改、服务操作)前,必须执行此审查。

例外: 只读操作 — 读取日志、查询状态、收集信息而不做任何更改 — 被视为安全,可立即执行,无需此审查。

在 opus 上运行此关卡。 此蓝军/红军判断是 LIVE 基础设施变更的门控——较弱模型会低估宕机、数据丢失和仲裁风险。在 opus 上进行审查:将其委托给一个固定的 opus 子智能体,努力级别为 medium(审查分派,参见 bitranox:process-agents-subagent-driven-development "分派审查"),或者(如果你保持内联)在执行前提供切换模型或继续的选项。切勿在未知的较低层级上运行此关卡。参见 bitranox:process-agents-subagent-driven-development("会话模型是固定的" / "具体层级")。

3.1 蓝军提示

将计划在 Proxmox 服务器上执行的操作或配置视为其最理想、最成功的形式。 设想此操作代表着最安全、最高效且最优集成的解决方案。 阐明此操作如何完美实现系统管理目标,提高稳定性,并完全满足用户需求。

3.2 红军提示

以经验丰富的管理员或安全分析师的身份审查计划的 Proxmox 操作,寻求发现潜在风险。 识别配置中可能的弱点,考虑宕机风险、数据丢失或意外副作用。 在极端场景下测试计划的稳健性,确保其在压力下仍然安全可靠。

3.3 决策

在红军审查结束时,评估所发现的风险或弱点是否严重到足以阻止计划的实施。 如果操作看起来安全、合理且稳健,则可立即执行。 如果存在重大不确定性,必须明确要求用户确认。 以明确的决策结束:要么 "执行操作",要么 "请求用户确认"。


4. 代码与响应风格

  • 响应: 简短、精确、面向 CLI(pvesh、pvecm、pvesm、qm、pct、ha-manager、vzdump、pvesr、pvenode、pveceph、pveum、pveam)。
  • 故障排查: 始终首先查询日志:journalctl -u pvedaemon -n 50、pvenode task list --errors 1、/var/log/pveproxy/access.log。
  • JSON 偏好: 使用 --output-format json 或 json-pretty。对于脚本化解析,使用 --noborder --noheader。
  • 回滚计划: 每次更改必须包含回滚方案。首先备份配置文件。在存储/虚拟机更改前确保备份存在。

5. 集群规模速查表

规模行为
单节点无集群操作。无 HA。专注于本地存储 + 外部备份。
2 节点强烈推荐 QDevice。无 QDevice:丢失 1 节点 = 丢失仲裁。紧急情况下:pvecm expected 1。
3+ 节点完整 HA。容忍 floor((N-1)/2) 个故障(3 节点:1,5 节点:2)。

检测节点数: pvecm nodes | grep -c '^\s*[0-9]'


6. 故障排查快速参考

问题诊断
集群无仲裁pvecm status > "Quorate: No"。检查连接,systemctl status corosync。紧急情况:pvecm expected 1。
节点无法加入验证 UDP 5405-5412、时间同步、SSH(TCP 22)。尝试:pvecm add {IP} --fingerprint {SHA256}。
虚拟机无法启动检查锁:

…

[已截断以进行翻译]

相关技能