k8s监控
metric-server
要进行监控得先安装metrics,k8s通过Heapster 和 metrics - server 来获取资源的使用情况,但是自 Kubernetes 1.11版本后 heapster已经被废弃了,取而代之的是更丰富的 metrics-server。
安装:
1、下载项目
1 | git clone https://github.com/kubernetes-incubator/metrics-server |
2、修改metrics-server/deploy/1.8+/resource-reader.yaml文件
3、修改 metrics-server/deploy/1.8+/metrics-server-deployment.yaml文件:
4、部署
1 | cd metrics-server/deploy/1.8+ |
注:如果镜像拉取失败,则更换镜像源
1 | sed -i 's#k8s.gcr.io#gcr.azk8s.cn/google_containers#g' metrics-server/deploy/1.8+/metrics-server-deployment.yaml |
如果报错:
1 | kubectl logs -f -n kube-system metrics-server-747bc9cc6b-62cjl |
这时修改文件metrics-server-deployment.yaml,添加最后几行:
最后如果没有报错,则执行kubectl top pods查看相关数据收集和负载情况进行验证。
prometheus + grafana
1、在master进行安装部署
1 | git clone https://github.com/redhatxl/k8s-prometheus-grafana.git |
2、在node节点下载镜像
1 | docker pull prom/node-exporter |
3、部署node-exporter组件
1 | kubectl create -f k8s-prometheus-grafana/node-exporter.yaml |
4、部署prometheus组件
1 | kubectl create -f k8s-prometheus-grafana/prometheus/rbac-setup.yaml |
5、部署grafana组件
1 | kubectl create -f k8s-prometheus-grafana/grafana/grafana-deploy.yaml |
6、此时验证一下node-exporter
7、查看prometheus的连接情况
8、然后登陆grafana进行设置(账号和密码都是admin)
注:添加数据源这里:关于URL如果9090这里报错,则直接用nodeport+暴露端口,然后选择direct
导入dashboard的时候,直接对话框输入315