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

如何解决csr-auto-approver拒绝K8s节点CSR请求的问题?

关于csr-auto-approver拒绝kubelet-serving CSR的问题分析与解决

一、csr-auto-approver的SAN IP检查逻辑

csr-auto-approver针对kubelet-serving类型的CSR,执行以下检查流程:

  • 从CSR请求中提取Subject Alternative Names(SAN)字段里的所有IP地址条目
  • 通过集群DNS服务或节点本地解析机制,获取当前kubelet所在节点的有效IP地址集合(通常包含节点内网IP、集群分配的IP等)
  • 逐一校验CSR中的每个SAN IP是否存在于上述有效IP集合内
  • 只要有一个SAN IP不在集合中(包括空的SAN IP条目,如你遇到的情况),就会触发拒绝逻辑,返回对应的错误信息

二、解决方法

  • 修正kubelet的CSR配置:检查kubelet启动参数中的--certificate-signing-request-san,确保没有传入空值或多余的逗号。如果存在无效配置,修改后重启kubelet,重新生成合规的CSR请求。
  • 调整组件检查规则:如果业务需要允许特定IP(如节点虚拟IP、未被自动解析的IP),可修改csr-auto-approver的配置文件,添加对应IP到白名单,或调整正则匹配规则放宽检查范围。
  • 验证节点IP解析有效性:在csr-auto-approver的Pod内执行nslookup <节点名称>,查看解析出的IP是否与kubelet实际使用的IP一致。若解析异常,排查集群DNS服务的配置与可用性。
  • 临时关闭检查(仅用于排查):紧急情况下可临时修改csr-auto-approver配置,关闭SAN IP检查功能,但此操作会降低集群安全性,生产环境不建议长期使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 17:38:12