Prometheus promQL查询语言 Prometheus提供了一种名为PromQL (Prometheus查询语言)的函数式查询语言,允许用户实时选择和聚合时间序列数据.表达式的结果既可以显示为图形,也可以在Prometheus的表达式浏览器中作为表格数据查看,或者通过HTTP API由外部系统使用. 准备工作 在进行查询,这里提供下我的配置文件如下 [root@node00 prometheus]# cat prometheus.yml # my global config globa…
前言 本文来自Prometheus官网手册和 Prometheus简介 Prothetheus查询 Prometheus提供一个函数式的表达式语言PromQL (Prometheus Query Language),可以使用户实时地查找和聚合时间序列数据.表达式计算结果可以在图表中展示,也可以在表达式浏览器中以表格形式展示,或者作为数据源, 以HTTP API的方式提供给外部系统使用. 一.例子 本文档仅供参考, 对于学习,从几个例子开始可能更容易. 二.表达式语言数据类型 在Prometheu…
前言 本文来自Prometheus官网手册 和 Prometheus简介 存储 Prometheus是一个本地磁盘时间序列数据库,但也可选择与远程存储系统集成,其本地时间序列数据库以自定义格式在磁盘上存储时间序列数据. 1.1 磁盘布局 采集的样本按每两个小时的时间段保存到一个目录,该目录包含一个或多个块文件,该文件包含该时间窗口的所有时间序列样本,以及元数据文件和索引文件(用于将度量名称和标签索引到块文件中的时间序列).通过API删除系列时,删除记录存储在单独的逻辑删除文件中(而不是立即从块文…
前言 本文来自Prometheus官网手册1.2.3.4和 Prometheus简介1.2.3.4 记录规则 一.配置规则 Prometheus支持两种类型的规则,这些规则可以定期配置,然后定期评估:记录规则和警报规则. 要在Prometheus中包含规则,请创建包含必要规则语句的文件,并让Prometheus通过Prometheus配置中的rule_files字段加载文件, 规则文件使用YAML. 通过将SIGHUP发送到Prometheus进程,可以在运行时重新加载规则文件. 仅当所有规则文…
前言 本文来自Prometheus官网手册 和 Prometheus简介 什么是prometheus? Prometheus是一个最初在SoundCloud上构建的开源系统监视和警报工具包.自2012年成立以来,许多公司和组织都采用了Prometheus,该项目拥有非常活跃的开发者和用户社区. 它现在是一个独立的开源项目,可以独立于任何公司进行维护. 为了强调这一点,并阐明项目的治理结构,Prometheus于2016年加入Cloud Native Computing Foundation,作为…
Prometheus简介 prometheus受启发于Google的Brogmon监控系统(相似kubernetes是从Brog系统演变而来), 从2012年开始由google工程师Soundcloud以开源形式进行研发,并且与2015年早起对外发布早期版本. 2016年5月继kubernetes之后成为第二个加入CNCF基金会的项目,童年6月正式发布1.0版本.2017年底发布基于全兴存储层的2.0版本,能更好地与容器平台.云平台配合. prometheus的优势 prometheus是基于一…
前言 本文来自Prometheus官网手册 和 Prometheus简介 FEDERATION 允许Prometheus服务器从另一台Prometheus服务器抓取选定的时间序列. 一,用例 联盟有不同的用例.通常,它用于实现可扩展的Prometheus监控设置或将相关指标从一个服务的Prometheus拉到另一个服务. 1.1 分层联盟 分层联盟使Prometheus可以扩展到具有数十个数据中心和数百万个节点的环境.在此用例中,联合拓扑就像一棵树,更高级别的Prometheus服务器从大量从属…
前言 本文来自Prometheus官网手册 和 Prometheus简介 说明 Prometheus是一个监控平台,通过在监控目标上的HTTP端点来收集受监控目标的指标.本指南将向您展示如何使用Prometheus安装,配置和监控我们的第一个资源. 您将下载,安装并运行Prometheus.您还将下载并安装exporter,这些工具可在主机和服务上公开时间序列数据.我们的第一个exporter将是Prometheus本身,它提供了有关内存使用,垃圾收集等的各种主机级指标. 下载 Promethe…
prometheus安全 我们这里说的安全主要是基本认证和https2种, 目前这2种安全在prometheus中都没有的, 需要借助第三方软件实现, 这里以nginx为例. 基本认证 配置基本认证 在前面的部署中,我们部署完毕prometheus server 后, 可以通过对应的http://192.168.100.10:9090就可以访问到我们的 表达式浏览器, 进行promql的查询了. 这是很不安全, 必要情况下,我们需要加入基本认证, 只有认证过的用户才能访问页面,进行数据的查询.…
由于网络问题或者安全问题,可能我们的数据无法直接暴露出一个entrypoint 给prometheus采集. 这个时候可能就需要一个pushgateway来作为中间者完成中转工作.  prometheus还是采用pull方式来采集pushgateway的数据,我们的采集端通过push方式把数据push给pushgateway,来完成数据的上报. pushgateway的安装 [root@node01 src]# wget https://github.com/prometheus/pushgat…