
postfinance/kubelet-csr-approverkubelet-csr-approver 是一个 Kubernetes 控制器,其核心功能是自动批准 kubelet-serving 证书签名请求(CSR),前提是这些 CSR 符合一系列可配置的、提供商特定的检查/验证规则。该控制器受现有项目(如 kubelet-rubber-stamp)启发,增加了额外的验证机制,以防止***者伪造证书。
适用于需要自动管理 Kubernetes 集群中 kubelet 服务证书的场景,尤其适合节点具有统一命名规范(如 node-xxx.int.company.com)、需严格控制证书请求来源的企业级集群,可提升证书轮换效率并增强证书安全性。
使用 deploy/k8s 目录中的清单文件在 Kubernetes 集群部署 kubelet-csr-approver。
修改所有节点的 /var/lib/kubelet/config.yaml 文件,添加以下配置字段,然后重启 kubelet 服务:
yamlserverTLSBootstrap: true
完成上述配置后,集群中将生成 CSR 请求,kubelet-csr-approver 会根据部署参数自动批准或拒绝这些请求。
PROVIDER_REGEX该变量用于定义可批准的节点主机名正则表达式,是最重要的配置参数。例如:
node-randomstr1234.int.company.ch,正则表达式可设置为 ^node-\w*\.int\.company\.ch$,仅批准符合该模式的主机名。kubelet-csr-approver 无法正常完成验证。若存在解析问题,可提交 issue 以推动添加禁用此验证的标志。manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务