搭建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 

注意:这个路径特殊
请添加图片描述
演示一个:所有的都必须修改,否则会下载错误
搭建Prometheus监控k8s服务_第1张图片

3、 所有节点必须提前上传所需镜像,并导入,由于设置镜像策略,本地有,不从网上下载,所以启动部署很快!
进入镜像目录,使用shell命令自动批量载入
for i in ./*.tar ; do docker load -i $i ; done
搭建Prometheus监控k8s服务_第2张图片

4、 将这两个目录中的yaml文件,全部运行。有可能因为目录内yaml文件过多,一次不能全部运行,所以运行的时候,多运行两遍
搭建Prometheus监控k8s服务_第3张图片
运行另一个目录
搭建Prometheus监控k8s服务_第4张图片
5、验证:全部是running状态即可!!!
搭建Prometheus监控k8s服务_第5张图片

查看随机映射端口
搭建Prometheus监控k8s服务_第6张图片
6、浏览器输入:master的IP加随机端口,用户名: admin;密码: admin
搭建Prometheus监控k8s服务_第7张图片
7、下载模板导入即可!
官方模板插件:
https://grafana.com/grafana/dashboards/8588
搭建Prometheus监控k8s服务_第8张图片


你可能感兴趣的:(云计算-K8S,云计算-虚拟化,linux,docker,kubernetes,k8s,容器)