云容器引擎 CCE-云原生监控插件:通过Metrics API提供资源指标
通过Metrics API提供资源指标
容器和节点的资源指标,如CPU、内存使用量,可通过Kubernetes的Metrics API获得。这些指标可以直接被用户访问,比如用kubectl top命令,也可以被HPA或者CustomedHPA使用,根据资源使用率使负载弹性伸缩。
插件可为Kubernetes提供Metrics API,但默认未开启,若要将其开启,需要创建以下APIService对象:
apiVersion: apiregistration.k8s.io/v1 kind: APIService metadata: labels: app: custom-metrics-apiserver release: cceaddon-prometheus name: v1beta1.metrics.k8s.io spec: group: metrics.k8s.io groupPriorityMinimum: 100 insecureSkipTLSVerify: true service: name: custom-metrics-apiserver namespace: monitoring port: 443 version: v1beta1 versionPriority: 100
可以将该对象保存为文件,命名为metrics-apiservice.yaml,然后执行以下命令:
kubectl create -f metrics-apiservice.yaml
执行kubectl top pod -n monitoring命令,若显示如下,则表示Metrics API能正常访问:
# kubectl top pod -n monitoring NAME CPU(cores) MEMORY(bytes) ...... custom-metrics-apiserver-d4f556ff9-l2j2m 38m 44Mi ......
卸载插件时,需要执行以下kubectl命令,同时删除APIService对象,否则残留的APIService资源将导致metrics-server插件安装失败。
kubectl delete APIService v1beta1.metrics.k8s.io