您好,参考
重点区分:刷写动作 ≠ 生效;很多事故是刷一半直接断电。
全部节点 FW 版本一致;留基线记录;清理临时固件包;恢复定时任务。
暂无评论
kubectl get nodes
kubectl get pods -A
如果集群已经存在异常、pod 异常,禁止做硬件固件升级,先修复集群。
#storcli示例查看RAID卡版本
/opt/MegaRAID/storcli/storcli64 /c0 show
⚠️ 不允许直接服务器硬断电、强制关机。
节点命名:Node‑1、Node‑2、Node‑3;每次仅操作其中 1 台,待该节点重新加入集群、所有 pod 恢复正常后,再操作下一台。
登录该节点 SSH 后台,执行驱逐,把 pod 调度转移到另外两台健康节点:
#设置节点不可调度
kubectl cordon 节点主机名
#驱逐pod
kubectl drain 节点主机名 --ignore-daemonsets
执行完确认:该节点上面业务 pod 全部被驱逐,全部跑到另外 2 台节点运行。
#storcli示例,c0为RAID控制器编号
./storcli64 /c0 download file=xxx.rom
提示升级写入成功,此时新固件已经刷入 RAID 卡 Flash,但还没有运行新版本固件,必须服务器重启华为。
不要直接物理断电!操作系统内优雅关机
shutdown -h now
等待服务器完全下电;等待约 2 分钟,再通过 HDM/BMC 远程执行上电开机。
重启过程 BIOS 阶段 RAID 卡加载新固件;进入操作系统后,核查 RAID 卡固件版本已经变为目标版本,确认 RAID 阵列没有异常。
服务器启动完成,ssh 登录,确认操作系统正常。
#解除节点不可调度标记
kubectl uncordon 节点主机名
#检查节点状态为Ready
kubectl get nodes
#等待所有pod全部恢复Running状态,无CrashLoopBackOff异常
kubectl get pods -A
必须确认:该节点 Ready,全部业务 pod 恢复正常,集群无告警,才能开始下一个节点操作。
严禁:同时 cordon/drain 两台节点,同时关闭两台 ADDC 集群服务器,会造成集群仲裁失效,整个管控平台业务瘫痪。
kubectl get nodes全部 Ready;kubectl get pods -A所有 pod Running;如果是 2 节点 ADDC 集群(带独立外部仲裁盘),依然只能单节点滚动升级;升级过程保证仲裁盘在线;禁止两个控制器节点同时离线。
暂无评论
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论