我们需要监控cpu和内存的使用率.以便提供硬件资源的申请采购建议.
也方便我们知道运行负荷, 而不是糊里糊涂出了问题再去解决或者工具自动解决了而我们不知道, 话说回来集群的好处就是低成本的达到高性能, 性能不去监控就有点太不专业了.
但, k8s居然不自带监控工具
https://kubernetes.io/zh-cn/docs/tasks/debug/debug-cluster/resource-metrics-pipeline/
需要我们"部署提供 Metrics API 服务的 metrics-server 或其他适配器才能" kubectl top 命令
背景知识,cpu的度量单位
https://kubernetes.io/zh-cn/docs/concepts/configuration/manage-resources-containers/
metrics-server的安装:
https://github.com/kubernetes-sigs/metrics-server
是1.26所以安装的 Kubernetes v1.21+
正常安装的k8s装metrics-server一定会报错.显然是Requirements没有都meet.
典型的一定会出现的问题如:
https://github.com/kubernetes-sigs/metrics-server/issues/196
里面在吵为什么都按步骤却一定会遇到问题, 有人说是因为安全没有弄好,最后
简而言之照着
https://particule.io/en/blog/kubeadm-metrics-server/
安装就ok了.
metrics-server的yaml文件是需要修改的
哦对了重启kubelet是:
systemctl restart kubelet
几个监控的命令:
kubectl top --help
kubectl top node
kubectl top pod -n kie-server-cluster
顺便,装好这个之后, dashboard里有了cpu和内存的监控的图表,
监控工具有几个, 之前装了简单的weaveScope, 这么一来,weaveScope完全鸡肋了.
话又说回来,为什么不自带呢,还得让人装