Kubernetes部署kube-state-metrics

用于Prometheus监控kubernetes集群各个资源的状态,以及pod的数量

# git 下载最新的kube-state-metrics包

git clone https://github.com/kubernetes/kube-state-metrics.git

# 通过deployment部署kube-state-metrics

cd kube-state-metrics/examples/standard

# 修改国内镜像,查看可用镜像

[root@k8s-master examples]# docker search kube-state-metrics
NAME                                        DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
bitnami/kube-state-metrics                  Bitnami Docker Image for Kube-state-metrics     17                   [OK]
bitnamicharts/kube-state-metrics                                                            0
drud/kube-state-metrics                                                                     0
kubesphere/kube-state-metrics               KubeSphere revised kube-state-metrics           2
dyrnq/kube-state-metrics                    k8s.gcr.io/kube-state-metrics/kube-state-met…   1
carlosedp/kube-state-metrics                These are the kube-state-metrics images requ…   7
surval/kube-state-metrics                   kube-state-metrics                              0
ist0ne/kube-state-metrics                   https://gcr.io/google_containers/kube-state-…   3                    [OK]
v5cn/kube-state-metrics                     sync k8s.gcr.io/kube-state-metrics/kube-stat…   4
sapcc/kube-state-metrics                                                                    0
dannystdu/kube-state-metrics                                                                0
ibmcom/kube-state-metrics                   Docker Image for IBM Cloud Private-CE (Commu…   0
giantswarm/kube-state-metrics                                                               0
openiamdocker/kube-state-metrics            kube-state-metrics                              0
cnvrg/kube-state-metrics                                                                    0
mirrorgooglecontainers/kube-state-metrics                                                   3
raspbernetes/kube-state-metrics                                                             2
lbbi/kube-state-metrics                     k8s.gcr.io                                      0
volterraio/kube-state-metrics                                                               0
ricardbejarano/kube-state-metrics           🩺 Built-from-source container image of kube…   0
myscalepublic/kube-state-metrics                                                            0
cyrilix/kube-state-metrics                                                                  0
liangjw/kube-state-metrics                                                                  0
rewind/kube-state-metrics                   Pull from k8s.gcr.io/kube-state-metrics/kube…   0
kubespheredev/kube-state-metrics                                                            0

# 修改国内镜像

....  
  spec:
      automountServiceAccountToken: true
      containers:
      - image: bitnami/kube-state-metrics
....

# 运行

kubectl apply -f kube-state-metrics/examples/standard/

# 查看svc

[root@k8s-master ~]# k -n kube-system get svc
NAME                 TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                  AGE
kube-dns             ClusterIP   10.96.0.10       <none>        53/UDP,53/TCP,9153/TCP   83d
kube-state-metrics   ClusterIP   None             <none>        8080/TCP,8081/TCP        68m

# 在集群内pod测试访问kube-state-metrics svc 【svc-name,ns,svc.cluster.local】

root@nginx:/# curl kube-state-metrics.kube-system.svc.cluster.local:8080/metrics
# HELP kube_configmap_annotations Kubernetes annotations converted to Prometheus labels.
# TYPE kube_configmap_annotations gauge
# HELP kube_configmap_labels [STABLE] Kubernetes labels converted to Prometheus labels.
# TYPE kube_configmap_labels gauge
# HELP kube_configmap_info [STABLE] Information about configmap.
# TYPE kube_configmap_info gauge
kube_configmap_info{namespace="kube-system",configmap="kubelet-config-1.21"} 1
kube_configmap_info{namespace="kube-system",configmap="kubeadm-config"} 1
kube_configmap_info{namespace="kube-system",configmap="kubelet-config-1.23"} 1
kube_configmap_info{namespace="kube-system",configmap="kube-proxy"} 1
kube_configmap_info{namespace="kube-system",configmap="kubelet-config-1.22"} 1
kube_configmap_info{namespace="kube-system",configmap="extension-apiserver-authentication"} 1
kube_configmap_info{namespace="kube-public",configmap="kube-root-ca.crt"} 1
kube_configmap_info{namespace="kube-system",configmap="kube-flannel-cfg"} 1
kube_configmap_info{namespace="kube-node-lease",configmap="kube-root-ca.crt"} 1
kube_configmap_info{namespace="kube-public",configmap="cluster-info"} 1
kube_configmap_info{namespace="kube-system",configmap="kube-root-ca.crt"} 1
kube_configmap_info{namespace="kube-system",configmap="coredns"} 1
kube_configmap_info{namespace="monitor",configmap="kube-root-ca.crt"} 1
kube_configmap_info{namespace="default",configmap="kube-root-ca.crt"} 1
kube_configmap_info{namespace="kube-ops",configmap="kube-root-ca.crt"} 1
# HELP kube_configmap_created [STABLE] Unix creation timestamp

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
kube-state-metrics是一个开源的Kubernetes组件,用于将Kubernetes资源信息转换为指标(metrics)并暴露给Prometheus。YAML是Kubernetes中常用的声明式配置文件格式。kube-state-metrics也需要通过YAML配置文件进行部署和管理。下面来详细介绍kube-state-metrics YAML的几个方面。 首先,kube-state-metrics YAML需要配置Kubernetes API Server的地址、证书等信息,以便通过API Server获取资源信息。其次,kube-state-metrics需要指定需要收集的资源类型,比如Pod、Deployment等。这些资源类型通过Kubernetes API定义,kube-state-metrics会通过API Server获取这些资源的详细信息,并将其转换为指标。此外,kube-state-metrics YAML还需要指定需要暴露给Prometheus的指标端口等信息,以便Prometheus可以通过这些指标监控Kubernetes集群各种资源的使用情况。 在kube-state-metrics的配置中,还需要指定各个资源指标的定义方式,例如当Pod或Deployment出现异常时,kube-state-metrics需要如何定义这些指标?以及在Prometheus中如何查询这些指标。因此,可以在kube-state-metrics的YAML文件中定义各个指标的名称,以及在Prometheus中的查询方式。这里的细节需要参考kube-state-metrics的文档。 总之,kube-state-metrics YAML是配置kube-state-metrics组件的一种方法,通过对该文件进行配置,可以定制化kube-state-metrics组件的行为,并将它整合到Kubernetes集群中。而kube-state-metrics的指标可以用于Kubernetes集群的监控和自动化管理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值