一、Prometheus监控说明:基于中间件和业务应用的监控机构
二、监控接口类型说明
### --- 监控接口类型说明
~~~ # 第一种:
~~~ 有metrics接口的应用:有的中间件是自带metrics接口的;
~~~ 基于云原生开发的就会暴露一个metrics的接口,它的数据就会通过metrics这个接口上获取到。
~~~ # 第二种:
~~~ # 没有metrics接口的应用:
~~~ 一些比较老的应用:redis、MySQL没有自带metrics接口:
~~~ 需要创建一个exporter,负责连接到没有metrics接口的应用或者中间件上。
~~~ 它实现的机制来采集数据。它会暴露一个metrics的接口(自定义的),
~~~ 就可以对这个metrics进行监控
~~~ # endpoint:
~~~ 就是负责连接到有metrics接口的服务上,若是k8s内部的服务,这个service是创建好的,
~~~ 若是这个应用是在k8s外部的,就需要创建一个endpoint去连接到外部服务。
~~~ 若是k8s内部的,已经有了endpoint和service,
~~~ 就可以直接使用:ControllerManager和scheduler就是典型的案例
~~~ # service:
~~~ 和endpoint名称是一样的service,它俩名称一样,就会自动建立连接
~~~ # servicemonitor:
~~~ 服务注册发现;上面配置了一些:这个servicemonitor连接到那个service的,
~~~ 然后通过namespace+label进行连接,会匹配一个service。
~~~ # servicemonitor:
~~~ 就会注册到Prometheus的operator,operator就会建立target;就实现了监控。
三、中间件和业务应用监控类型:
### --- 中间件和业务应用监控类型:
~~~ 有metrics接口:中间件、业务应用
~~~ 无metrics接口:中间件、业务应用
四、exoirter
### --- exoirter
~~~ expoirter一般都不需要我们自己去写,别人已经写好了。可以直接拿来用即可
~~~ 地址:https://github.com/search?p=2&q=exporter&type=Repositories
~~~ kafka创建exporter官方地址:https://github.com/danielqsj/kafka_exporter