Prometheus是一个集数据收集存储、数据查询和数据图表显示于一身的开源监控组件。本文主要讲解如何搭建Prometheus,并使用它监控Kubernetes集群。
1、下载相关yaml
1 | # https://github.com/xxlaila/kubernetes-yaml/tree/master/prometheus-grafana |
2、开始部署
2.1、采用daemonset方式部署node-exporter组件
1 | # kubectl create -f node-exporter.yaml |
2.2、部署prometheus组件
2.2.1、rbac文件
1 | # kubectl create -f rbac-setup.yaml |
2.2.2、以configmap的形式管理prometheus组件的配置文件
1 | # kubectl create -f configmap.yaml |
2.2.3、Prometheus deployment 文件
1 | # kubectl create -f prometheus-deploy.yaml |
2.2.4、Prometheus service文件
1 | # kubectl create -f prometheus-svc.yaml |
2.2.5、配置Ingress
1 | # kubectl create -f prometheus-ingress.yaml |
2.3、部署grafana组件
2.3.1、grafana deployment配置文件
1 | # kubectl create -f grafana-deploy.yaml |
2.3.2、grafana service配置文件
1 | # kubectl create -f grafana-svc.yaml |
2.3.3、grafana ingress配置文件
1 | # kubectl create -f grafana-ingress.yaml |
2.4、WEB界面配置
1 | # kubectl get svc,pods -n kube-ops |
2.4.1 查看node-exporter
2.4.2、查看promethues
prometheus对应的nodeport端口为30005,通过访问http://172.21.17.4:30005/targets 可以看到prometheus已经成功连接上了k8s的apiserver,这里我们前面增加了prometheus的ingress,这里可以直接通过域名进行访问
2.4.3、访问grafana
通过域名访问grafana,默认用户名密码均为admin,配置数据源
- 到grafana官方下载模版,导入json模版