Kube-state-metrics 介绍
Kube-state-metrics 是 Kubernetes 生态系统中的一个开源项目,主要用来收集和报告集群中各种资源的实时状态信息。
工作原理
- Kube-state-metrics 连接到 Kubernetes API 服务器,并公开一个 HTTP 端点,提供集群中各个对象的状态所生成的指标。
- 它使用 client-go 库与 Kubernetes API 服务器通信,监听资源的增、删、改事件,并从中提取出有用的度量数据。
应用场景
- 异常检测:通过监控 Pod 状态、Node 状态等指标,及时发现和解决潜在问题。
- 性能优化:监控 Deployment 副本数、CPU/内存使用情况等指标,对集群性能进行优化。
- 安全审计:监控容器网络流量、文件系统使用情况等指标,发现异常行为,及时识别安全风险。
部署 Kube-state-metrics
提示:若环境已存在,请忽略
安装 Helm (此处为在线安装方式)
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh
安装 kube-promethues
kube-promethues 安装包采用了 Bitnami 的Helm chart 方案,包括组件 Node-Exporter、Kube-state-metrics、Blackbox-Exporter、Promethues组件等,安装比较方便,Bitnami 官方地址:charts/bitnami/kube-prometheus at main · bitnami/charts · GitHub
通过社区获取最新版本 Chart 包
helm pull oci://registry-1.docker.io/bitnamicharts/kube-prometheus
Values 文件配置说明
tar xf kube-prometheus-9.6.3.tgz
vim kube-prometheus/values.yaml
global:
# 修改为私有仓库项目地址
imageRegistry: ""
## E.g.
## imagePullSecrets:
## - myRegistryKeySecretName
##
# 此处 修改为私有仓库密钥的secret 名称
imagePullSecrets: []
# 此处df-nfs-storage 修改为集群内可用的 storageClass
defaultstorageClass: "df-nfs-storage"
# 此处df-nfs-storage 修改为集群内可用的 storageClass
storageClass: "df-nfs-storage"
## Compatibility adaptations for Kubernetes platforms
##
compatibility:
## Compatibility adaptations for Openshift
##
openshift:
## @param global.compatibility.openshift.adaptSecurityContext Adapt the securityContext sections of the deployment to make them compatible with Openshift restricted-v2 SCC: remove runAsUser, runAsGroup and fsGroup and let the platform use their allowed default IDs. Possible values: auto (apply if the detected running cluster is Openshift), force (perform the adaptation always), disabled (do not perform adaptation)

最低0.47元/天 解锁文章
621

被折叠的 条评论
为什么被折叠?



