Pacemaker怎么配置IPMI电源接口作为强行断电隔离的Fence设备

云瑶小哥_9455

云瑶小哥_9455

2026-10-21

559人浏览

原创

必须用fence_ipmilan:其支持op monitor健康检查,而fence_ipmitool在pacemaker 9.x+中已弃用;需验证bmc连通性、安装fence-agents-ipmilan包、配置lanplus=1/cipher=1、绑定avoids约束并启用监控。

pacemaker怎么配置ipmi电源接口作为强行断电隔离的fence设备

必须用 fence_ipmilan,不能用 fence_ipmitool 或其他变体——后者在 Pacemaker 9.x+ 中已被弃用,且不支持 op monitor 健康检查。

确认 IPMI 接口可用且网络可达

在每个目标节点(如 cnode1)上,先验证本地 IPMI 是否启用、用户权限是否正确:

  • 执行 ipmitool -I lanplus -H 192.168.3.11 -U ADMIN -P ADMIN chassis power status,应返回 Chassis Power is on 或类似;失败说明 IPMI 网络不通、凭据错误或 BMC 未启用
  • 确保集群节点到各 BMC 的 IP 路由可达,且无防火墙拦截 UDP 623 端口(IPMI 默认端口)
  • 若使用 VLAN 或管理网段隔离,pcs stonith create 中的 ipaddr 必须是 BMC 的管理 IP,不能是节点业务 IP

创建 fence_ipmilan 设备时的关键参数

以 cnode1 为例,以下命令不是模板,而是实际生效所需的最小安全配置:

Live PPT
Live PPT

Live PPT是一款由美图设计室提供的一句话生成 PPT 的 AI 演示文稿工具。

下载
pcs stonith create cnode1_ipmi fence_ipmilan \
  pcmk_host_list=cnode1 \
  ipaddr=192.168.3.11 \
  login=ADMIN \
  passwd=ADMIN \
  lanplus=1 \
  cipher=1 \
  op monitor interval=60s
  • pcmk_host_list 必须填集群中该设备要隔离的**主机名**(即 uname -n 输出),不是 IP;多个主机用空格分隔,但单设备建议一对一
  • lanplus=1 强制启用 IPMI v2.0 加密通信,不加会导致认证失败(尤其 ILO4+/iDRAC8+)
  • cipher=1 是 cipher suite ID,对应 AES-128-CBC;部分 BMC(如 Supermicro)需设为 cipher=3,可先试 1,失败再查 BMC 手册
  • op monitor interval=60s 不可省略——没有健康检查,Pacemaker 会认为设备“不可用”,进而拒绝启动 STONITH

避免设备误触发或约束失效的三个硬性操作

STONITH 设备创建后,必须立刻绑定位置约束,否则 Pacemaker 可能在本节点上尝试调用自己对应的 fence 设备,导致自锁:

  • 执行 pcs constraint location cnode1_ipmi avoids cnode1 —— 这条必须对每个设备单独运行,avoids 表示“该设备绝不能在它要隔离的节点上运行”
  • 禁用某设备用 pcs stonith disable cnode1_ipmi,但不要用 pcs property set stonith-enabled=false 全局关闭,那等于放弃防脑裂能力
  • 验证设备状态:运行 pcs stonith show 应显示 Enabled: Yes 和 Monitor: OK;若显示 Failed,看 journalctl -u pacemaker -n 50 中是否含 fence_ipmilan: Unable to connect 或 Authentication failure

最常被跳过的一步是:没在所有节点上统一安装 fence-agents-ipmilan 包(而非仅 fence-agents-all)。CentOS/RHEL 8+ 和 Ubuntu 22.04+ 都需要显式安装它,否则 pcs stonith create 虽成功,但实际执行时会报 agent not found 错误——这个错误不会出现在 pcs stonith show 输出里,只在故障切换日志中浮现。

相关专题

更多
硬盘接口类型介绍
硬盘接口类型介绍

硬盘接口类型有IDE、SATA、SCSI、Fibre Channel、USB、eSATA、mSATA、PCIe等等。详细介绍:1、IDE接口是一种并行接口,主要用于连接硬盘和光驱等设备,它主要有两种类型:ATA和ATAPI,IDE接口已经逐渐被SATA接口;2、SATA接口是一种串行接口,相较于IDE接口,它具有更高的传输速度、更低的功耗和更小的体积;3、SCSI接口等等。

2023.10.19

3148

3

PHP接口编写教程
PHP接口编写教程

本专题整合了PHP接口编写教程,阅读专题下面的文章了解更多详细内容。

2025.10.17

4909

12

php8.4实现接口限流的教程
php8.4实现接口限流的教程

PHP8.4本身不内置限流功能,需借助Redis(令牌桶)或Swoole(漏桶)实现;文件锁因I/O瓶颈、无跨机共享、秒级精度等缺陷不适用高并发场景。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2025.12.29

3789

9

java接口相关教程
java接口相关教程

本专题整合了java接口相关内容,阅读专题下面的文章了解更多详细内容。

2026.01.19

446

15

OpenJDK JVM参数怎么调优
OpenJDK JVM参数怎么调优

Java应用运行缓慢,如何调整JVM参数?本专题介绍OpenJDK JVM性能调优的基本流程,涵盖性能指标确认、运行数据采集、内存配置和垃圾回收分析,帮助你先定位瓶颈,再通过对照测试验证效果,避免直接套用参数而影响应用稳定性。

2026.10.16

60

10

OpenJDK怎么配置Java开发环境
OpenJDK怎么配置Java开发环境

怎样用OpenJDK搭建开发环境?本专题介绍版本选择、下载安装、环境变量配置和编译运行验证,帮助你理清JDK的作用及基本配置流程,并通过简单程序检查环境是否可用,为后续项目开发做好准备。

2026.10.16

40

10

OpenJDK怎么部署Java应用
OpenJDK怎么部署Java应用

Java项目开发完成后,怎样部署到目标环境并正常运行?本专题介绍OpenJDK应用部署流程,涵盖运行环境准备、版本兼容检查、应用打包、启动参数配置和日志查看,帮助你理清部署前后的操作顺序,减少环境差异造成的运行问题。

2026.10.16

40

10

Revel框架模板渲染与表单验证
Revel框架模板渲染与表单验证

本专题围绕Revel框架视图层开发,介绍模板语法、变量输出、布局复用、表单提交、参数绑定与验证规则,帮助开发者完成安全规范的页面交互。

2026.10.16

20

15

Revel框架MVC路由与控制器
Revel框架MVC路由与控制器

本专题聚焦Revel框架MVC核心机制,讲解路由定义、控制器Action、参数绑定、请求响应和反向路由,并结合常见场景梳理接口请求处理流程。

2026.10.16

20

15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133.8万人学习