Prometheus入门

Prometheus是对接容器监控的唯一标准组件,可以部署很多采集任务,去对接docker,k8s,非侵入式采集相关的指标。每个采集任务其实对应的就是容器,能够对接k8s的api,做到指标的采集。

对于Prometheus,我们需要知道他有四类数据源

同时我们有很多可以去处理数据源的函数,可以选择数据的时间段,也可以选择数据的选择范围 比如increase(metrics_a[5m])就是算的5m内的一个增长量的变化趋势,我们要看的时间范围是多久的?过去一天的,那么就会针对每个采样点去算前5m的一直增长量

但是说到底,prometheus要想实现更好看的可视化,那必须要grafana出厂,这个后端单独赘述。

还有一个问题,一个k8s集群只会对接一个prometheus,那么多个k8s集群该怎么办呢,有一个比较好的办法就是汇集到thanos。thanos里面可以分项目,然后按照k8s集群分组去对接grafana,那么就可以实现多个k8s集群的分析了,针对一个应用多集群部署的情况,这种方式就特别方便。

对于k8s集群的监控,我们需要利用好两个监控job

kubelet与kube-state-metics

介绍了prometheus中各类向量以及数据类型间关系,非常棒的文章

And or unless集合操作

对于监控中对接prometheus的采集器有很多,比较多的一种情况就是 各种exporter:

  • node exporter
  • redis exporter
  • MySQL exporter