搭建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部署Prometheus+Grafana监控集群

基于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)

实战 Prometheus 搭建监控系统

实战 Prometheus 搭建监控系统