更新时间:2026-08-04 GMT+08:00
节点重启后工作负载无法启动的解决方案(ASM 1.28+)
问题现象
ASM 1.28及以上版本网格节点重启后工作负载无法启动,事件日志显示:

根因分析
默认未启用节点优雅关机机制,异常关机导致istio-cni组件配置文件未正常清理。节点优雅关机请参考Node Shutdowns。
启用节点优雅关机
操作步骤:
- 备份原始配置文件:
cp /opt/cloud/cce/kubernetes/kubelet/kubelet_config.yaml /opt/cloud/cce/kubernetes/kubelet/kubelet_config.yaml.bak
- 节点上编辑kubelet配置文件:
vim /opt/cloud/cce/kubernetes/kubelet/kubelet_config.yaml
- 添加优雅关机配置(文件末尾追加):
shutdownGracePeriod: 60s #节点关机前等待Pod优雅终止的总时长 shutdownGracePeriodCriticalPods: 57s #关键Pod的优雅终止时长
- 输入:wq保存退出,并重启kubelet:
systemctl restart kubelet
修复方案:异常节点恢复
适用场景:未启用优雅关机且已发生工作负载异常时。
操作步骤:
- 备份原始配置文件:
cp /etc/cni/net.d/cni.conflist /etc/cni/net.d/cni.conflist.bak
- 编辑cni配置文件:
vim /etc/cni/net.d/cni.conflist
- 删除plugins下name为istio-cni配置段(以典型配置为例):
- 删除istio-cni配置段:在plugins数组中,找到name为istio-cni的配置段,并将其整个删除。该配置段通常包含多个键值对,如ambient_enabled、cni_agent_run_dir、dns等。
- 删除前一个配置项末尾的逗号:在删除istio-cni配置段后,检查其前一个配置项的末尾,删除该逗号以确保JSON格式正确。
例如,在以下配置中:

需要删除从"ambient_enabled": false开始到"operator": "NotIn"结束的整个配置段,并删除前一个配置项("type": "eni-neutron")末尾的逗号。
- 输入:wq保存退出,并重启工作负载:
kubectl rollout restart deployment <workload-name>
父主题: 网格管理