【k8s】kubelet 的相关证书

在 Kubernetes 集群中,kubelet 使用的证书通常存放在节点上的特定目录。这些证书用于 kubelet 与 API 服务器之间的安全通信。具体的位置可能会根据你的 Kubernetes 安装方式和配置有所不同,下图是我自己环境【通过 kubeadm 安装的集群】中的kubelet的证书信息

kubelet 的证书通常会存放在 /var/lib/kubelet/pki/ 目录下。这个目录包含以下文件:

  • kubelet-client-current.pem:这是 kubelet 【这时kubelet是作为客户端】用来与 API 服务器进行客户端认证的证书。
  • kubelet.crt:这是 kubelet 【这时kubelet是作为服务端】用来提供 HTTPS 服务(如健康检查和指标)的服务器证书。
  • kubelet.key:这是kubelet进程服务端的私钥。

查看 kubelet 配置文件

你可以通过查看 kubelet 的配置文件来找到证书的确切位置。例如,如果你使用的是 systemd 来管理 kubelet 服务,可以运行以下命令来查看配置文件:

复制代码
sudo cat /etc/kubernetes/kubelet.conf

或者,如果你使用的是 config.yaml 文件,可以查看:

复制代码
sudo cat /var/lib/kubelet/config.yaml

在这些配置文件中,你会看到类似于以下的配置项,它们指定了证书和密钥的位置:

复制代码
users:
- name: system:node:master
  user:
    client-certificate: /var/lib/kubelet/pki/kubelet-client-current.pem
    client-key: /var/lib/kubelet/pki/kubelet-client-current.pem
        【这个证书是kubelet和api-server通信时的客户端的证书信息,因为k8s中https通信都是双向tls验证的,所以需要客户端和服务端都需要配置自己的证书,同时都需要配置信任对方的证书】

[root@node1 pki]#  cat /var/lib/kubelet/config.yaml
apiVersion: kubelet.config.k8s.io/v1beta1
authentication:
  anonymous:
    enabled: false
  webhook:
    cacheTTL: 0s
    enabled: true
  x509:
    clientCAFile: /etc/kubernetes/pki/ca.crt【这个是主节点的k8s顶级根证书】

检查证书

一旦你知道了证书的位置,你可以使用 openssl 命令来查看证书的内容,例如:

复制代码
openssl x509 -in /var/lib/kubelet/pki/kubelet-server-current.pem -text -noout

这将显示 kubelet 服务器证书的详细信息。

总结

  • kubeadm 安装 :证书通常在 /var/lib/kubelet/pki/
  • 其他安装 :查看 kubelet 的配置文件以确定证书的位置。
  • 查看证书 :使用 openssl 工具来查看证书内容。
相关推荐
2601_961875241 天前
决战申论100题2026|最新|范文
linux·容器·centos·debian·ssh·fabric·vagrant
java_cj1 天前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes
程序员老赵1 天前
服务器没有桌面?Docker 跑个 Chrome,浏览器就能远程用
docker·容器·devops
正经教主1 天前
【docker基础】 第八周:容器监控与应用更新策略
运维·docker·容器
kiros_wang1 天前
Docker 使用完整指南
运维·docker·容器
正经教主1 天前
【docker基础】第九周:Docker安全与镜像优化
运维·docker·容器
qq_452396231 天前
第十三篇:《K8s 安全基础:RBAC、ServiceAccount、Pod Security》
java·安全·kubernetes
睡不醒男孩0308231 天前
云原生运维实战:高并发架构下的云原生可观测性、韧性降级与自动化干预体系
数据库·kubernetes·高并发·prometheus·devops·sre·缓存调优
qq_452396231 天前
第十四篇:《K8s 网络模型与 CNI 插件(Calico、Flannel、Cilium)》
网络·kubernetes·php
正经教主1 天前
【docker基础】第十三周:学习总结与进阶方向【完结】
运维·docker·容器