【MACA】问题定位方法&FAQ
更新时间: 2025/12/22
在Gitcode上查看源码

1 BMC启动问题

1.1 启动状态检查

1.1.1 组件启动状态检查失败次数乱序,看起来有两个检查任务

【排查分析】拉起了多个组件服务,需组件自行排查是否存在启动配置错误或其它不合理修改

1.2 运行状态检查

1.2.1 配置了健康状态检查失败立即重启子系统进程,5次重启进程后应当复位BMC,但实际未复位现象

【排查分析】maca组件版本为1.65.0,框架maca日志中出现类似报错 “ continuously offline 5 time within 10 minutes, but BMC cannot be restarted by the check mechanism again”,且之前的日志显示BMC已重启过三次 【原因分析】mc_component.HEALTH.NEED_RESTART_NOW 表示组件健康状态检查失败后会立即重拉子系统进程,大约5分钟后,若5次检查失败重拉进程,BMC会复位,当前对于该复位的最大次数默认配置为3,因此BMC复位3次后不会再复位,可通过skynet环境变量

CONTINUOUS_OFFLINE_MAX_RESET_TIMES 设置或代码(maca/src/lualib/defs.lua)修改

1.3 启动问题

1.3.1 iBMC从复位到完成时间超过性能指标要求,预期180s,实际703.96s

1.查看 /var/log/framework.log 中 maca组件日志,看 BMC 启动流程是否有异常; 2.查看 测试用例报告,观察时间变化,看是否在某个流程异常停留;

1.3.2 升级完BMC不会重启,升级不生效,但环境在telnet下systemctl reboot强制重启了,强制重启之后就好了

报错日志:   问题排查: maca重启接口有两种,一是平滑重启,二是强制重启 平滑重启先通知组件重启准备,如果有组件重启准备失败,则通知组件取消重启并返回失败;否则返回成功通知组件执行重启,由框架主程序完成重启; 强制重启用于异常场景下强行复位;   该问题平滑重启失败,查看framework.log 可以看到是哪个组件重启准备失败导致的平滑重启失败

注意到是 general_hardware 组件导致的平滑重启失败,交由该组件接口人处理问题,一般在app.log中能看到相关组件报错   (通常发生平滑重启失败的场景是在一键收集日志的时候平滑重启)

1.3.3 环境升级BMC包后,很多服务无响应,查不到资源树

【排查分析】框架maca日志发现只有23个组件启动,且BMC正常启动 【原因分析】从最小系统启动BMC,只会启动最小系统配置中包含的组件,导致部分组件未启动