Proxmox VE联动UPS实现自动关机
创作时间:
作者:
@小白创作中心
Proxmox VE联动UPS实现自动关机
引用
1
来源
1.
https://blog.xuegaogg.com/posts/proxmox-ve-integration-with-ups-for-automatic-shutdown/
为了避免突然断电导致文件系统乃至硬盘损坏,本文将介绍如何将UPS与Proxmox VE(简称PVE)联动起来。当UPS电量低到设定值或断电超过设定时间时,系统将按照特定顺序关闭虚拟机,并最终关闭PVE和主机,以保护数据安全。
安装依赖
首先需要安装相关的软件包:
apt update
apt install nut-snmp
接入UPS
SNMP连接
编辑 /etc/nut/ups.conf
文件,添加以下内容。这里以带SNMP卡的UPS为例,使用 snmp-ups
驱动。
# vim /etc/nut/ups.conf
[sk_sc1k]
driver = snmp-ups
port = 100.97.73.22
community = public
snmp_version = v2c
pollfreq = 15
desc = "SK SC1K SNMP"
# 忽略UPS本身的Low Battery阈值,
ignorelb
# 还剩80%电就标记为低电量,就要关机了
override.battery.charge.low = 80
# 或者等待了5分钟,就要关机
override.battery.runtime.low = 300
USB线连接
如果你是第一次运行,可以使用以下命令扫描生成配置文件。注意,一定要等命令执行出结果,或者直接加 -U
参数扫描USB。
# nut-scanner -U
SNMP library not found. SNMP search disabled.
Neon library not found. XML search disabled.
IPMI library not found. IPMI search disabled.
Scanning USB bus.
[nutdev1]
driver = "blazer_usb"
port = "auto"
vendorid = "0665"
productid = "5161"
vendor = "INNO TECH"
bus = "001"
对于USB连接的UPS,需要将扫描结果中的相关参数复制到 /etc/ups/ups.conf
文件中。
# vim /etc/ups/ups.conf
[ups]
driver = "blazer_usb"
port = "auto"
vendorid = "0665"
productid = "5161"
# bus设置后最好测试一下,有些机器重启后,bus编号会变动,导致无法连接UPS
bus = "001"
# 忽略UPS本身的Low Battery阈值,
ignorelb
# 还剩80%电就标记为低电量,就要关机了
override.battery.charge.low = 80
# 或者等待了5分钟,就要关机
override.battery.runtime.low = 300
接入监控报警
为了实现更全面的监控和报警功能,可以将UPS接入ZABBIX、Grafana等系统。以下是接入后的效果示例:
配置监听
编辑 /etc/nut/nut.conf
文件,设置模式为 standalone
(如果只有PVE一台机器使用)。
# vim /etc/nut/nut.conf
MODE=standalone
编辑 /etc/nut/upsd.users
文件,添加一个用户。
# vim /etc/nut/upsd.users
[upsmon]
password = password
upsmon secondary
编辑 /etc/nut/upsd.conf
文件,设置只监听本地接口。
# vim /etc/nut/upsd.conf
LISTEN 127.0.0.1 3493
编辑 /etc/nut/upsmon.conf
文件,添加本地的UPS服务。
# vim /etc/nut/upsmon.conf
MONITOR sk_sc1k@127.0.0.1 1 upsmon password secondary
启动相关服务并设置开机自动启动。
systemctl start nut-server.service
systemctl start nut-monitor.service
systemctl enable nut-server.service
systemctl enable nut-monitor.service
使用 upsc <UPS名称>
命令可以查看当前系统接入的UPS信息。
# upsc sk_sc1k
Init SSL without certificate database
battery.charge: 100
battery.charge.low: 80
battery.current: 0
battery.runtime: 22440
battery.runtime.low: 300
battery.temperature: 28
battery.voltage: 27.20
# ...省略
此时,当UPS断开后,电量低于设定阈值或断电超过设定时长时,系统将自动关闭。如果PVE上有开启的虚拟机,将按照设定的顺序和等待时间依次关闭。
测试配置
为了确保配置正确,需要进行实际测试。拔掉UPS的市电,等待满足设定的电量阈值或断电时长,观察PVE是否开始批量关机。如果在PVE中看到 Bulk shutdown VMs and Containers
的提示,说明配置符合预期。
参考资料
热门推荐
美国产业界帮特朗普算账:关税将如何冲击美国消费者?
win11频繁更新为何?用户体验如何改善?
全球菜籽油供需稳步增长 中国市场需求旺盛且进口依赖度大
滑板入门:三种基础转弯技巧详解
如何判断期货市场的流动性风险?
为什么考研人数逐年攀升?
常用中药100味|鱼腥草:药食两用的“异味”珍宝
重温万绮雯的港剧宇宙:那些年,她承包的青春记忆
19张图,了解债券基金(进阶篇)
梦幻西游中各门派的特点是什么?
不锈钢清洁剂的使用与选择
如何正确养护鹦鹉?
深入解析养老保险法律知识
哪些财产属于夫妻一方个人财产?关于“夫妻共同财产”的7大疑问
光线暗的时候怎么拍
建设银行逾期可以申请利息减免吗
探讨发酵时间对白酒品质的影响
强直阵挛性发作(癫痫大发作)
“钢铁大王”被绑架后惨遭撕票,此前已付近2700万赎金
日常生活中如何全面提升专注力:环境、时间管理、心理调节全方位攻略
工伤保险赔偿流程需要什么资料和手续
工伤事故能获得多少赔偿?探索法律资源
“离婚搭子”走红,非公式化的内容探索
广西两所高校最新调整!教育部公布→
传统岭南元素在当代园林中的创新运用
工作证明和离职证明有哪些不同点
美国十二大家族
悬赏广告是要约还是要约邀请
找回主体性以后,再也不焦虑了
小猫拉水处理指南,快速识别与应对