ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、视频、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 简介 从 Kubernetes 1.8 开始,资源使用指标(如容器 CPU 和内存使用率)通过 Metrics API 在 Kubernetes 中获取, metrics-server 替代了heapster。Metrics Server 实现了Resource Metrics API,Metrics Server 是集群范围资源使用数据的聚合器。  Metrics Server 从每个节点上的 Kubelet 公开的 Summary API 中采集指标信息。 **参考文档:** [https://github.com/kubernetes-incubator/metrics-server](https://github.com/kubernetes-incubator/metrics-server) ## 安装metrics-server 这里可以clone官方的repo[https://github.com/kubernetes-incubator/metrics-server.git](https://github.com/kubernetes-incubator/metrics-server.git) - metrics-server默认会从kubelet的基于http通信的10255端口获取指标数据,但出于安全考虑,kubernetes 1.11版本的kubeadm在初始化群集时会关闭kubelet的10255端口,导致无法获取数据。 - 官方仓库中的清单文件`metrics-server-deployment.yaml`中未明确主程序metrics-server传递参数指定指标数据的获取接口,它通常应该是`kubernetes.summary_api` 修改镜像以及参数`metrics-server-deployment.yaml` ``` image: registry.aliyuncs.com/google_containers/metrics-server-amd64:v0.3.3 args: - --kubelet-insecure-tls - --kubelet-preferred-address-types=InternalIP ``` - `--kubelet-insecure-tls` CA 证书并没有把各个节点的 IP 签上去,所以这里 metrics-server 通过 IP 去请求时,提示签的证书没有对应的 IP(错误:x509: cannot validate certificate for xx.xx.xx.xx because it doesn’t contain any IP SANs),使用该参数跳过验证 - `kubelet-preferred-address-types` 使用ip方式,解决`xxx: no such host` 我这里都已经修改好了可以直接使用即可 ``` kubectl apply -f deploy/metrics-server/deploy/1.8+/ ``` 查看pod是否为`Running`状态 ``` kubectl get pod -n kube-system ``` ## 资源监控 - 获取node资源 ``` kubectl top node NAME CPU(cores) CPU% MEMORY(bytes) MEMORY% k8s-11 167m 4% 1680Mi 45% k8s-12 221m 5% 1563Mi 42% k8s-13 172m 4% 1500Mi 40% k8s-14 109m 2% 955Mi 25% k8s-15 218m 5% 2133Mi 57% ``` - 获取pod资源 ``` kubectl top pod NAME CPU(cores) MEMORY(bytes) eureka-0-0 12m 322Mi eureka-1-0 13m 307Mi eureka-2-0 12m 322Mi flask-c44695649-h2bq6 0m 23Mi jenkins-65db5c5f74-h8czs 0m 604Mi mongo-844dd9c866-d6g6k 3m 154Mi nginx-deployment-5cbf758889-dk5w8 0m 3Mi nginx-deployment-5cbf758889-s8jwd 0m 2Mi nginx-deployment-5cbf758889-wxlfw 0m 4Mi redis-66bff5cbbb-w77dn 1m 11Mi tomcat-87cc47fb7-6cbqp 0m 121Mi tomcat-87cc47fb7-dmld6 0m 106Mi tomcat-87cc47fb7-wdkdm 0m 110Mi ```