搭建Prometheus监控k8s服务
Posted Friends of the wind
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了搭建Prometheus监控k8s服务相关的知识,希望对你有一定的参考价值。
理论
提示:在这里部署的prometheus,是使用的coreos提供的prometheus项目
MetricsServer:是k8s集群资源使用情况的聚合器,收集数据给k8s集群内使用,如kubectl,hpa,scheduler等。
Prometheus Operator: 是一个系统检测和警报工具箱,用来存储监控数据。
Prometheus node-exporter:收集k8s集群资源的数据,指定告警规则。
Prometheus:收集apiserver,scheduler,controller-manager,kubelet组件的数据,通过http协议传输。
Grafana:可视化数据统计和监控平台。
示例
1、在git克隆prometheus的项目地址到本地。但是,项目已被删除
git clone https://github.com/imirsh/kube-prometheus.git
但是,网络原因有些时候下载不下来,最好提前下好
2、修改grafana-service.yaml文件,更改为nodePort的暴露方式,暴露端口为31001或者不暴露,用命令查看随机端口
下面文件除*外添加镜像下载策略imagePullPolicy: IfNotPresent;有的去掉注释即可
[root@master manifests]# pwd
/root/prometheus/kube-prometheus/manifests
sed -i 's/quay.io/quay.mirrors.ustc.edu.cn/g' prometheus-prometheus.yaml
sed -i 's/quay.io/quay.mirrors.ustc.edu.cn/g' alertmanager-alertmanager.yaml
sed -i 's/quay.io/quay.mirrors.ustc.edu.cn/g' prometheus-adapter-deployment.yaml
sed -i 's/quay.io/quay.mirrors.ustc.edu.cn/g' node-exporter-daemonset.yaml
sed -i 's/quay.io/quay.mirrors.ustc.edu.cn/g' kube-state-metrics-deployment.yaml
* sed -i 's/quay.io/quay.mirrors.ustc.edu.cn/g' prometheus-operator-serviceMonitor.yaml
注意:这个路径特殊
演示一个:所有的都必须修改,否则会下载错误
3、 所有节点必须提前上传所需镜像,并导入,由于设置镜像策略,本地有,不从网上下载,所以启动部署很快!
进入镜像目录,使用shell命令自动批量载入
for i in ./*.tar ; do docker load -i $i ; done
4、 将这两个目录中的yaml文件,全部运行。有可能因为目录内yaml文件过多,一次不能全部运行,所以运行的时候,多运行两遍
运行另一个目录
5、验证:全部是running状态即可!!!
查看随机映射端口
6、浏览器输入:master的IP加随机端口,用户名: admin;密码: admin
7、下载模板导入即可!
官方模板插件:
https://grafana.com/grafana/dashboards/8588
以上是关于搭建Prometheus监控k8s服务的主要内容,如果未能解决你的问题,请参考以下文章
(二十)从零开始搭建k8s集群——使用KubeSphere管理平台搭建一套微服务的压力测试性能监控平台(Grafana8.5.2+Prometheus v2.35.0+Jmeter5.4.1)
(二十)从零开始搭建k8s集群——使用KubeSphere管理平台搭建一套微服务的压力测试性能监控平台(Grafana8.5.2+Prometheus v2.35.0+Jmeter5.4.1)