尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

Proxmox自动化安装避坑清单:ansible-role-proxmox的SSH断连、GRUB等疑难问题解析

Proxmox自动化安装避坑清单:ansible-role-proxmox的SSH断连、GRUB等疑难问题解析 Proxmox自动化安装避坑清单ansible-role-proxmox的SSH断连、GRUB等疑难问题解析【免费下载链接】ansible-role-proxmoxIaC for Proxmox VE clusters.项目地址: https://gitcode.com/gh_mirrors/an/ansible-role-proxmox使用ansible-role-proxmoxlae.proxmox做Proxmox 自动化安装时新手最常踩的坑其实就集中在三处SSH 会话断连、GRUB 更新报错、内核重启时机。本文面向新手和普通用户用一份避坑清单的方式帮你提前避开这些疑难问题快速把 Proxmox 单节点或 3 节点集群部署起来。角色定位在 Debian 10~13Buster 到 Trixie上安装并管理 Proxmox VE 6.x~9.x支持单机与集群3 节点覆盖 RBAC、存储、Ceph、看门狗、PCIe 直通等配置。 快速上手先装好再谈避坑先花 5 分钟了解角色能干什么后面的坑就都能对上号功能模块说明对应任务文件仓库与软件源配置 pve-no-subscription / pve-enterprise 源tasks/repositories.ymlSSH 集群互信为集群节点生成 root 密钥、互信、放行 root 登录tasks/ssh_cluster_config.yml内核更新重启检测新 PVE 内核并自动重启tasks/kernel_updates.yml节点加入集群执行pvecm add -use_ssh逐个加入tasks/pve_add_node.ymlGRUB 与内核模块清理看门狗、vfio、initramfs 配置回滚tasks/kernel_module_cleanup.yml最简安装方式准备一台 Ansible 控制机安装角色后写一个 4 行的 playbook 指向目标主机即可。- hosts: all become: True roles: - role: lae.proxmox vars: pve_group: all pve_reboot_on_kernel_update: true⚠️ 注意安装过程中服务器会中途重启所以一定要用外部机器控制机跑 Ansible不要直接在装 Proxmox 的机器上操作。 坑 1SSH 断连——apt 安装 Proxmox 时 Ansible 直接失联这是新手命中率最高的坑。现象执行到安装proxmox-ve包时apt 长时间无响应Ansible 报超时/中断SSH 会话停止看起来像卡死了。原因Proxmox 包体巨大含内核apt 安装耗时很长而 SSH 默认心跳保活时间到了空闲连接被网络中间设备切断。一键修复方法在你的控制机ansible.cfg中追加心跳参数让 SSH 每 20 秒发一次保活包[ssh_connection] ssh_args -o ServerAliveInterval20改完重跑即可无需重装。这是社区公认的最快解法也直接写进了官方排障文档见 README.md 的 Troubleshooting 一节。 延伸避坑如果 SSH 用的不是默认 22 端口记得设置变量pve_ssh_port: 22之外的实际端口否则新节点加入集群时pvecm add -use_ssh会因端口不对而握手失败。 坑 2GRUB 报错unknown filesystemProxmox 无法启动现象部分使用ZFS的系统上执行update-grub会输出/usr/sbin/grub-probe: error: unknown filesystem.有些用户因此以为 GRUB 配置坏了、系统起不来。真相是这个错误在部分 ZFS 系统上是已知的假阳性误报角色里的 handlers/main.yml 已做特殊处理update-grubhandler 会过滤掉这条特定错误只要没有其他真实错误就判定为成功不会让 playbook 误报失败。新手要点看到这条报错先别慌它是被角色静默处理的但如果你的系统因此真的启动失败说明可能是真阳性请带详细日志向项目提交 issue而不是手动反复改 GRUB。 坑 3内核更新后忘记重启装完进的是旧内核Proxmox 安装完会附带专用内核不重启就还是跑在 Debian 系统内核上。角色的处理方式tasks/kernel_updates.yml 会先调用collect_kernel_info模块检测是否存在新内核若变量pve_reboot_on_kernel_update: true则自动重启重启前后各等待pve_reboot_on_kernel_update_delay默认 60 秒。避坑建议场景正确做法首次安装集群带pve_reboot_on_kernel_update: true跑一次让所有节点进入 PVE 内核集群运行中例行更新不要开这个变量改为在维护窗口内逐台重启避免集群整体不可用# 首次安装时这样跑 ansible-playbook -i inventory site.yml -e {pve_reboot_on_kernel_update: true} # 后续运行去掉该参数 坑 4节点入集群 SSH 握手失败的三个隐藏条件pve_add_node.yml 执行pvecm add时依赖 SSH以下三点任一不满足都会失败root 互信没建好tasks/ssh_cluster_config.yml 会为每台节点生成 ed25519 密钥并互相授权还会写入Match Address规则只放行集群地址段的 root 登录——如果你用别的角色管理 sshd需设pve_manage_ssh: false并自己复刻这些配置端口不匹配非 22 端口务必设pve_ssh_port加锁串行角色已用throttle: 1保证节点逐个加入入簇会加锁手动操作时不要并发执行pvecm add。✅ 避坑清单跑 playbook 前自查用外部控制机运行 Ansible安装中途会重启ansible.cfg已加ServerAliveInterval20防 SSH 断连基于 Debian 安装不要用 Proxmox ISO 装好的系统官方明确支持有限集群模式主机组至少 2 台且已配置 NTP角色不管 NTP需搭配 NTP 角色首次安装带pve_reboot_on_kernel_update: true之后关闭ZFS 环境遇到grub-probe: unknown filesystem不用处理假阳性已内置过滤非 22 端口设置了pve_ssh_port写在最后ansible-role-proxmox 把 Proxmox 部署中最容易翻车的环节仓库源、SSH 互信、内核重启、GRUB、看门狗都做成了声明式任务并内置了针对假阳性错误的容错。按这份清单过一遍配置90% 的疑难问题都不会出现。后续如果要上 Ceph、ZFS 卷、用户与 ACL 管理直接看 README.md 对应的章节即可。【免费下载链接】ansible-role-proxmoxIaC for Proxmox VE clusters.项目地址: https://gitcode.com/gh_mirrors/an/ansible-role-proxmox创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表