首页 > 其他分享> > |NO.Z.00301|——————————|CloudNative|——|KuberNetes&运维.V22|--------------------------------------------
|NO.Z.00301|——————————|CloudNative|——|KuberNetes&运维.V22|--------------------------------------------
作者:互联网
[CloudNative:KuberNetes&运维.V22] [Applications.KuberNetes][|DevOps|k8s|k8s运维|**3节点.V1**|PrometheusMetrics类型|Counter|Guage|Histogram|Summary|]
一、Prometheus概述:PrometheusMetrics架构图
二、PrometheusMetrics架构说明
### --- PrometheusMetrics架构说明
~~~ 主要核心是Prometheus server:prometheus-k8s-0
~~~ 直接使用node节点存储的,查询速度非常快,没有网络带宽上的消耗。
~~~ 若是部署了多个prometheus-server,就会存储多份数据,多份数据可能不一致,
~~~ 时间延迟或者网络的问题可能导致数据不一致。差别不是很大。
~~~ 若是对数据要求非常高的话,可以使用TSDB:时间序列数据库;
~~~ 多个server连接同一个时间序列数据库,数据的一致性比较高,查询效率也是比较高的。
~~~ # Pushgateway:
~~~ 用于聚合很多数据;Short-lived Jobs和Prometheus server是不通的,
~~~ 可以使用Pushgateway作为一个中继,可以先把short-lived jobs不通的数据先push到PugshGateway中,
~~~ 然后Prometheus server再使用pull的方式再去拉它的metrics;metrics:就是数据
~~~ # Prometheus server端
~~~ 就是以Pull的形式拉取它的数据,暴露一个metrics接口,
~~~ 通过httpd 的协议把这个数据拉下来,存储在内存中,内存数据定期的存储到磁盘中。
~~~ # Service discovery:
~~~ 服务发现机制
### --- Metrics类型:
~~~ Counter:只增不减的计数器:http_requests_total node_cpu
~~~ Guage:可憎可减:主机的CPU、内存、磁盘使用率、当前并发量
~~~ Histogram:用于统计和分析样本的分析情况
~~~ Summary:
### --- metrics的summary类型数据收集:
~~~ 基于云原生开发的程序,默认是暴露了这个接口10.96.222.222:9090/metrics
~~~ 若是监控主机的信息:主机的信息是没有暴露这个接口的:如何获取数据:
~~~ 就会使用一系列的exporter,
~~~ 通过一系列的exporter的接口这个规则去采集宿主机的数据然后转换成metrics类型的数据
~~~ 然后通过metrics接口暴露出来,供Prometheus去采集
~~~ 自己自带的exporter模板比我们自己写的或者zabbix自带的要详细的多。
~~~ 若是这个程序自己暴露了metrics接口,可以直接通过metrics URL地址+端口就可以直接访问到
~~~ 若是这个程序没有自己暴露metrics接口,我们需要使用exporter去采集数据,
~~~ 比如mysql、redis是没有这样的接口,所以需要通过exporter去采集里面的数据,
~~~ 转换成metrics的时间序列数据。Prometheus再存储到本地。
===============================END===============================
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart ——W.S.Landor
来自为知笔记(Wiz)
标签:V22,exporter,v01,接口,架构图,metrics,Prometheus,server,数据 来源: https://www.cnblogs.com/yanqivip/p/16081477.html