You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

搭建RKE集群时遭遇etcd健康检查失败问题求助

解决RKE集群etcd健康检查的tls: bad certificate错误

确认错误信息:

failed to check etcd health: failed to get /health for host [xx.xxx.x.xxx]: Get "https://xx.xxx.x.xxx:2379/health": remote error: tls: bad certificate

以下是针对性的排查和解决步骤:

  • 检查etcd节点证书一致性
    RKE会自动生成并分发etcd证书,所有etcd节点上的证书文件(默认路径/etc/kubernetes/ssl/etcd)必须完全一致。在每个etcd节点执行md5sum /etc/kubernetes/ssl/etcd/*.pem,对比所有节点的哈希值确保无差异。若手动拷贝过证书,需同步检查文件权限(证书文件应为644,密钥文件应为600)和内容匹配度。

  • 验证证书有效性
    执行openssl x509 -in /etc/kubernetes/ssl/etcd/server.pem -text -noout | grep Validity,确认证书未过期;同时检查证书的Subject/AltName是否包含etcd节点的IP或主机名,避免因SAN字段不匹配导致验证失败。

  • 重新生成etcd证书
    若证书损坏或配置错误,删除所有etcd节点上的/etc/kubernetes/ssl/etcd目录,重新运行rke up让RKE生成并分发全新证书。注意:若集群已有业务数据,需先备份etcd数据,防止数据丢失。

  • 同步节点系统时间
    TLS证书验证对时间敏感,所有etcd节点的系统时间偏差不能超过5分钟。用timedatectl status检查时间状态,通过chronyd或ntpd服务完成时间同步。

  • 核对etcd启动参数
    执行ps aux | grep etcd查看etcd运行参数,确认--cert-file、--key-file、--trusted-ca-file等参数指向的证书路径正确,无拼写错误或文件缺失。

内容的提问来源于stack exchange,提问作者wlstate

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 20:05:42