kubernetes资源监控
Metrics-Server介绍
Metrics-Server是集群核心监控数据(cpu、内存)的聚合器,用来替换之前的heapster。
容器相关的 Metrics 主要来自于 kubelet 内置的 cAdvisor 服务,有了MetricsServer之后,用户就可以通过标准的 Kubernetes API 来访问到这些监控数据。
Metrics API 只可以查询当前的度量数据,并不保存历史数据。
Metrics API URI 为 /apis/metrics.k8s.io/,在 k8s.io/metrics 维护。
必须部署 metrics-server 才能使用该 API,metrics-server 通过调用 Kubelet Summary API 获取数据。
Metrics Server 并不是 kube-apiserver 的一部分,而是通过 Aggregator 这种插件机制,在独立部署的情况下同 kube-apiserver 一起统一对外服务的。
kube-aggregator 其实就是一个根据 URL 选择具体的 API 后端的代理服务器。
Metrics-server属于Core metrics(核心指标),提供API metrics.k8s.io,仅提供Node和Pod的CPU和内存使用情况。而其他Custom Metrics(自定义指标)由Prometheus等组件来完成。
Metrics-Server安装部署
资源下载:https://github.com/kubernetes-incubator/metrics-server
[root@server2 dashboard]# kubectl apply -f recommended.yaml
查看日志的报错,解决问题:
需要再次修改清单配置:
将两处的端口改为4443
vim components.yaml
--secure-port=4443
- containerPort: 4443
这时如果执行清单,还是会无法运行,因为还有问题没有解决
解决报错:
报错:x509: certificate signed by unknown authority
启用TLS Bootstrap 证书签发(在master和各个节点中)
[root@server2 dashboard]# vim /var/lib/kubelet/config.yaml
serverTLSBootstrap: true
systemctl restart kubelet
##server2,3,4 都修改
kubectl get csr
kubectl cretificate approve csr-7vbks
## 逐次认证</