当前位置: 首页 > news >正文

Kubernetes 证书监控--x509-certificate-exporter

监控手段

该 Exporter 是通过监控集群所有 node 的指定目录或 path 下的证书文件以及 kubeconfig 文件来获取证书信息.

如果是使用 kubeadm 搭建的 Kubernetes 集群, 则可以监控如下包含证书的文件和 kubeconfig:

watchFiles:
- /var/lib/kubelet/pki/kubelet-client-current.pem
- /etc/kubernetes/pki/apiserver.crt
- /etc/kubernetes/pki/apiserver-etcd-client.crt
- /etc/kubernetes/pki/apiserver-kubelet-client.crt
- /etc/kubernetes/pki/ca.crt
- /etc/kubernetes/pki/front-proxy-ca.crt
- /etc/kubernetes/pki/front-proxy-client.crt
- /etc/kubernetes/pki/etcd/ca.crt
- /etc/kubernetes/pki/etcd/healthcheck-client.crt
- /etc/kubernetes/pki/etcd/peer.crt
- /etc/kubernetes/pki/etcd/server.crt
watchKubeconfFiles:
- /etc/kubernetes/admin.conf
- /etc/kubernetes/controller-manager.conf
- /etc/kubernetes/scheduler.conf
YAML

下载并解压

https://github.com/enix/x509-certificate-exporter/tree/main

根据实际情况修改values.yaml, Chart.yaml  其他配置可不做修改

修改 Chart.yaml 里面版本号信息

[root@k8s-uat-m01 x509-certificate-exporter]# cat Chart.yaml 
version: '3.19.1'
appVersion: '3.19.1'
........................................

修改values.yaml地址

# 修改为镜像名称,默认是Chart中的appVersion  
# 修改仓库名称image:# -- x509-certificate-exporter image registryregistry: swr.cn-north-4.myhuaweicloud.com# -- x509-certificate-exporter image repositoryrepository: ddn-k8s/docker.io/enix/x509-certificate-exporter
--------------------------------------------------------------------------# 节点标签,根据实际情况调整,基本也不用修改
# 容忍,根据实际情况调整,基本也不用修改
# 证书所在目录,根据实际情况调整# -- Additional environment variables for containerenv: []# - name: GOMAXPROCS#   value: "1"# -- [SEE README] Map to define one or many DaemonSets running hostPath exporters. Key is used as a name ; value is a map to override all default settings set by `hostPathsExporter.*`.daemonSets: master:nodeSelector:node-role.kubernetes.io/control-plane: ""tolerations:- effect: NoSchedulekey:  node-role.kubernetes.io/control-planeoperator: ExistswatchFiles:- /etc/kubernetes/pki/apiserver.crt- /etc/kubernetes/pki/apiserver-etcd-client.crt- /etc/kubernetes/pki/apiserver-kubelet-client.crt- /etc/kubernetes/pki/ca.crt- /etc/kubernetes/pki/front-proxy-ca.crt- /etc/kubernetes/pki/front-proxy-client.crt# 配置文件所在目录,根据实际情况调整,也可不做配置watchKubeconfFiles:- /etc/kubernetes/admin.conf- /etc/kubernetes/controller-manager.conf- /etc/kubernetes/kubelet.conf- /etc/kubernetes/scheduler.conf
[root@k8s-uat-m01 x509-certificate-exporter]# helm install x509-certificate-exporter   --values values.yaml  .[root@k8s-uat-m01 x509-certificate-exporter]# kubectl get pod
NAME                                         READY   STATUS             RESTARTS           AGE
x509-certificate-exporter-56567b56b9-xdmrf   1/1     Running            0                  7h50m
x509-certificate-exporter-master-5tspp       1/1     Running            0                  7h50m
x509-certificate-exporter-master-6ffhr       1/1     Running            0                  7h50m
x509-certificate-exporter-master-6q94j       1/1     Running            0                  7h50m[root@k8s-uat-m01 x509-certificate-exporter]# kubectl get ds
NAME                               DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR                            AGE
x509-certificate-exporter-master   3         3         3       3            3           node-role.kubernetes.io/control-plane=   7h52m
[root@k8s-uat-m01 x509-certificate-exporter]# kubectl get deploy
NAME                        READY   UP-TO-DATE   AVAILABLE   AGE
x509-certificate-exporter   1/1     1            1           7h52m[root@k8s-uat-m01 x509-certificate-exporter]# kubectl get svc
NAME                        TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                                        AGE
x509-certificate-exporter   ClusterIP   10.202.156.255   <none>        9793/TCP                                       8h
[root@k8s-uat-m01 x509-certificate-exporter]# curl 10.202.156.255:9793/metrics
...............................................................................

异常处理

# 检查pod是否都运行kubectl get po -n ssl-monitor -owide

# 若运行异常,查看日志,一般都为某证书没读取权限或证书不存在kubectl logs -n ssl-monitor 【pod name】

# 若证书无读取权限,则前往该节点赋权chmod +r 【证书路径】

http://www.dtcms.com/a/398612.html

相关文章:

  • MMD动画(六)Ray渲染--打光
  • 检察院网站建设方案erp系统是什么系统
  • a做爰网站o2o
  • 非关系型数据库-Redis
  • 从不确定性到确定性,“动态安全+AI”成网络安全破题密码
  • python+django/flask二手物品交易系统 二手商品发布 分类浏览 在线沟通与订单管理系统java+nodejs
  • 找事做的网站网站开发需要什么步骤
  • Go 语言切片和 Map 操作常用库指南
  • 旧项目适配Android15
  • DIC技术在极端条件下的应用及解决方案
  • nginx限制国外ip访问
  • OpenLayers地图交互 -- 章节十:拖拽平移交互详解
  • 北京壹零零壹网站建设网页设计教程视屏
  • 做一个商城网站需要什么流程做网站的一般多钱
  • Charles移动端调试教程,iOS与Android抓包、证书安装与优化技巧
  • PHP应用文件操作安全上传下载任意读取删除目录遍历文件包含(2024小迪安全Day32笔记)
  • 九江网站设计服务机构哪家好旅游网络营销的特点有
  • 【win10】Windows 任务管理器可以查看软件的虚拟内存使用情况
  • 一致性Hash算法:解决扩容缩容时数据迁移问题
  • Smol VLA是什么,怎么用
  • 人工智能医疗系统灰度上线与评估:技术框架实践分析python版(上)
  • 条款12:为意在重写的函数添加override声明
  • 如何自动生成ONNX模型?​​
  • 建设部网站江苏金安微信商城软件开发
  • 网站建设项目分析株洲做网站的
  • React Native:如何将原有的依赖复用给新的RN project?
  • WhisperLiveKit上手及主观评测
  • iOS 26 系统流畅度深度评测 Liquid Glass 动画滑动卡顿、响应延迟、机型差异与 uni-app 优化策略
  • 逻辑回归(四):从原理到实战-训练,评估与应用指南
  • 【浅谈Spark和Flink区别及应用】