目的:采集 K8s 资源状态,如 Pod、Deployment

在kubernetes中安装kube-state-metrics

镜像资源使用:quay.io/coreos/kube-state-metrics:v1.9.7

yaml文件地址:https://github.com/kubernetes/kube-state-metrics/blob/main/examples/standard/

步骤1:将standard目录下六个yaml文件下载上传到本地

步骤2:修改各个yaml文件中版本version,例:

步骤3:修改deployment.yaml文件中镜像image

步骤4:使用以下命令部署

kubectl apply -k /test/yaml

(/test/yaml 此目录下只有这六个yaml文件)

发现报错:The Service "kube-state-metrics" is invalid: spec.clusterIPs[0]: Invalid value: []string{"None"}: may not change once set

该报错为service.yaml文件中clusterIP为空

步骤5:使用

kubectl get service kube-state-metrics -n kube-system -o yaml | grep clusterIP

命令查看clusterIP值
  clusterIP: 10.104.181.244

将service.yaml文件中clusterIP修改为10.104.181.244

步骤6:使用以下命令重新部署kube-state-metrics,再次查看pod状态为running

[root@master001 yaml]# kubectl delete -k /test/yaml

[root@master001 yaml]# kubectl apply -k /test/yaml

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐