Prometheus详解(六)——Prometheus使用Exporter监控Redis

今天继续给大家介绍Linux运维相关知识,本文主要内容是Prometheus使用Exporter监控Redis。
在上文Prometheus详解(五)——Prometheus Exporter简介中,我们介绍了Prometheus中Exporter的作用。今天,我们来使用Redis Exporter,实现在Kubernetes集群中Prometheus监控Redis。

一、Redis部署

首先,我们先来部署以下Redis监控,我们部署一个Deployment控制器和Service服务,其中Deployment控制器启动一个Pod,并且把Redis和Redis Exporter两个容器放入一个Pod中,Service服务主要作用是暴露端口。相关配置如下所示:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: redis
  namespace: pzz
spec:
  template:
    metadata:
      labels:
        app: redis
    spec:
      containers:
      - name: redis
        image: redis:4
        resources:
          requests:
            cpu: 100m
            memory: 100Mi
        ports:
        - containerPort: 6379
      - name: redis-exporter
        image: oliver006/redis_exporter:latest
        resources:
          requests:
            cpu: 100m
            memory: 100Mi
        ports:
        - containerPort: 9121
---
kind: Service
apiVersion: v1
metadata:
  name: redis
  namespace: pzz
spec:
  selector:
    app: redis
  ports:
  - name: redis
    port: 6379
    targetPort: 6379
  - name: prom
    port: 9121
    targetPort: 9121

注意,在上述配置中,我们把相关的Pod和Service全部部署在了pzz的名称空间中,如果您在使用我的上述配置时,可以自行修改该项设置。
配置完成后的Deployment如下所示:
在这里插入图片描述
配置完成后的Service如下所示:
在这里插入图片描述
接下来,我们首先创建pzz名称空间,执行命令:

kubectl create namespace pzz

该命令执行结果如下所示:
在这里插入图片描述
之后,我们直接执行上述配置,创建Deployment和Service,执行命令:

kubectl apply -f prometheus-redis-exporter.yaml

该命令执行结果如下:
在这里插入图片描述
等到我们的Pod成功运行(注意:由于设计到新的镜像拉取,因此时间可能会长一些,请耐心等到)后,结果如下:
在这里插入图片描述
我们可以访问以下其Service下的9121端口,即Prometheus的监控,结果如下:
在这里插入图片描述
从上图可以看出,我们的Redis和Redis Exporter运行正常,能够正常采集数据。

二、Prometheus配置文件设置

接下来,我们就需要来配置Prometheus的监控配置文件,以便于我们的Prometheus获取监控内容,监控项内容如下:

- job_name: 'redis'
  static_configs:
  - targets: ['redis.pzz.svc.cluster.local:9121']

注意,我这里使用了pzz的namespace,其他配置请修改相关配置。配置完成后的Prometheus的configmap文件如下所示:
在这里插入图片描述
完成上述配置后,我们可以删除该配置文件,然后重新生成,如下所示:
在这里插入图片描述
之后,我们可以查看Prometheus对应的Service的端口号,如下所示:
在这里插入图片描述

三、效果查看

最后,我们打开浏览器,尝试访问Prometheus的Targets,出现如下所示的页面表示Prometheus还没有收集完成数据。
在这里插入图片描述
等到一段时间后,出现如下页面,表示Prometheus已经工作正常。
在这里插入图片描述
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

猜你喜欢

转载自blog.csdn.net/weixin_40228200/article/details/124677750