1,普罗米修斯的数据指标是通过一个公开的HTTP (S)数据接口获取到的,我们不需要单独安装监控的代理,只需要暴露一个度量接口,普罗米修斯就会定期去拉取数据,对于一些普通的HTTP服务,我们完全可以直接重用这个服务,添加一个/指标接口暴露给普罗米修斯
2,有一些服务即使没有原生集成该接口,也完全可以使用一些出口国来获取到指标数据,比如mysqld_exporter, node_exporter, redis-exporter,这些出口商就有点类似于传统监控服务中的代理,用来收集目标服务的指标数据然后直接暴露给普罗米修斯。
监控自带指标接口的Traefik
1,修改其配置文件traefik.toml,增加如下内容,开启metirc接口
<代码>(指标) (metrics.prometheus) 入口点=" traefik " 桶=(0.1,0.3,1.2,5.0)代码>
2,然后更新traefik configmap及traefik pod
kubectl得到美元configmap - n kube-system
traefik-conf 1 d
83 kubectl删除configmap traefik-conf - n kube-system
美元kubectl创建configmap traefik-conf——从文件=traefik。美元toml - n kube-system
- f traefik kubectl适用。yaml
kubectl得到美元svc - n kube-system | grep traefik
traefik-ingress-service NodePort 10.100.222.78 & lt; none>80:31657/TCP, 8080:31572/TCP
curl 10.100.222.78:8080/指标
美元curl 192.168.1.243:31572/指标
3,更新普罗米修斯的配置文件,增加工作
<代码> apiVersion: v1 :ConfigMap 元数据: 名称:prometheus-config 名称空间:kube-ops 数据: 普罗米修斯。yml: | 全球: scrape_interval: 30年代 scrape_timeout: 30年代 scrape_configs: ——job_name:‘普罗米修斯’ static_configs: ——目标(“localhost: 9090”): - job_name:“traefik” static_configs: ——目标(“traefik-ingress-service.kube-system.svc.cluster.local: 8080”): 代码>
$ - f prome-cm kubectl适用。yaml #更新普罗米修斯configemap文件
由于我们这里Traefik对应的名是traefik-ingress-service,并且在kube-system这个名称空间下面,所以我们这里的目标的路径配置则需要使用FQDN的形式:traefik-ingress-service.kube-system.svc.cluster。当地
kubectl得到美元svc - n kube-ops | grep普罗米修斯
普罗米修斯NodePort 10.102.197.83 & lt; none>9090:32619/TCP
curl - x的帖子“美元;http://192.168.1.243:32619/?reload"#使配置生效,可能需要一段时间,使用重载命令不用更新普罗米修斯pod即可使配置生效
<强>使用redis-exporter来监控复述,服务强>
redis-exporter以双轮马车的形式和复述,部署在同一个豆荚内
1,构建pod及svc
$码头工人把复述:4
码头工人拉oliver006美元/redis_exporter:最新
<代码> apiVersion:扩展/v1beta1 :部署 元数据: 名称:复述, 名称空间:kube-ops 规范: 模板: 元数据: 注释: 普罗米修斯。io/刮:“真正的” 普罗米修斯。io/端口:“9121” 标签: 应用:复述, 规范: 容器: ——名称:复述, 图片:复述:4 资源: 请求: cpu: 100 内存:100米 港口: - containerPort: 6379 ——名称:redis-exporter 图片:oliver006/redis_exporter:最新 资源: 请求: cpu: 100 内存:100米 港口: - containerPort: 9121 --- 类型:服务 apiVersion: v1 元数据: 名称:复述, 名称空间:kube-ops 规范: 选择器: 应用:复述, 港口: ——名称:复述, 端口:6379 发送:6379 ——名称:舞会 端口:9121 发送:9121 代码>
kubectl得到美元svc - n kube-ops | grep复述,
复述ClusterIP 10.105.241.59 & lt; none>6379/TCP/TCP
9121旋度10.105.241.59:9121/指标#查看是否能监控到
2,增加工作并更新普罗米修斯configmap配置文件
<代码> apiVersion: v1 :ConfigMap 元数据: 名称:prometheus-config 名称空间:kube-ops 数据: 普罗米修斯。yml: | 全球: scrape_interval: 30年代 scrape_timeout: 30年代 scrape_configs: ——job_name:‘普罗米修斯’ static_configs: ——目标(“localhost: 9090”): - job_name:“traefik” static_configs: ——目标(“traefik-ingress-service.kube-system.svc.cluster.local: 8080”): - job_name:“复述” static_configs: ——目标(“复述:9121”):代码>
由于我们这里的复述,服务和普罗米修斯处于同一个名称空间,所以我们直接使用名