简介

prometheus存储的是时序数据,即按相同时序(相同名称和标签),以时间维度存储连续的数据的集合。

时序(time series)是由名字(Metric)以及一组key/value标签定义的,具有相同的名字以及标签属于相同时序。


Metric类型:

  • Counter: 一种累加的metric,如请求的个数,结束的任务数,出现的错误数等

  • Gauge: 常规的metric,如温度,可任意加减。其为瞬时的,与时间没有关系的,可以任意变化的数据。

  • Histogram: 柱状图,用于观察结果采样,分组及统计,如:请求持续时间,响应大小。其主要用于表示一段时间内对数据的采样,并能够对其指定区间及总数进行统计。根据统计区间计算

  • Summary: 类似Histogram,用于表示一段时间内数据采样结果,其直接存储quantile数据,而不是根据统计区间计算出来的。不需要计算,直接存储结果


PromQL:

PromQL (Prometheus Query Language) 是 Prometheus 自己开发的数据查询 DSL 语言。

查询结果类型:

  • 瞬时数据 (Instant vector): 包含一组时序,每个时序只有一个点,例如:http_requests_total
  • 区间数据 (Range vector): 包含一组时序,每个时序有多个点,例如:http_requests_total[5m]
  • 纯量数据 (Scalar): 纯量只有一个数字,没有时序,例如:count(http_requests_total)

架构图

安装部署

环境准备

主机名 角色 IP 系统版本 内核版本
es01.k8s.com node01 10.0.20.11 CentOS 7.5 5.1.4-1.el7.elrepo.x86_64

官网: prometheus.io

prometheus 下载地址: https://github.com/prometheus/prometheus/releases/download/v2.14.0/prometheus-2.14.0.linux-amd64.tar.gz

安装

prometheus 安装使用二进制安装,解压后即可直接启动。

[root@es01 soft]# ls -l prometheus-2.14.0.linux-amd64.tar.gz
-rw-r--r-- 1 root root 58625125 Nov 12 00:21 prometheus-2.14.0.linux-amd64.tar.gz [root@es01 soft]# tar xf prometheus-2.14.0.linux-amd64.tar.gz [root@es01 soft]# ls prometheus-2.14.0.linux-amd64
console_libraries consoles LICENSE NOTICE prometheus prometheus.yml promtool tsdb [root@es01 soft]# mv prometheus-2.14.0.linux-amd64 /opt/prometheus-2.14 [root@es01 soft]# mkdir /opt/prometheus-2.14/{bin,config,data,logs} [root@es01 soft]# cd /opt/prometheus-2.14/
[root@es01 prometheus-2.14]# mv prometheus promtool tsdb bin/
[root@es01 prometheus-2.14]# mv prometheus.yml config/ [root@es01 prometheus-2.14]# ll
total 20
drwxr-xr-x 2 root root 52 Nov 21 16:43 bin
drwxr-xr-x 4 root root 151 Nov 25 09:30 config
drwxr-xr-x 2 3434 3434 38 Nov 12 00:17 console_libraries
drwxr-xr-x 2 3434 3434 173 Nov 12 00:17 consoles
drwxr-xr-x 12 root root 4096 Nov 25 09:00 data
-rw-r--r-- 1 3434 3434 11357 Nov 12 00:17 LICENSE
drwxr-xr-x 2 root root 23 Nov 21 16:49 logs
-rw-r--r-- 1 3434 3434 3184 Nov 12 00:17 NOTICE

配置环境变量

[root@es01 prometheus-2.14]# echo '/opt/prometheus-2.14/bin:$PATH' >> /etc/profile
[root@es01 prometheus-2.14]# source /etc/profile
[root@es01 prometheus-2.14]# prometheus --version
prometheus, version 2.14.0 (branch: HEAD, revision: edeb7a44cbf745f1d8be4ea6f215e79e651bfe19)
build user: root@df2327081015
build date: 20191111-14:27:12
go version: go1.13.4

能输出以上内容,及表示配置完成。

配置

默认的配置文件,既可以直接启动

[root@es01 prometheus-2.14]# egrep -v '^#' prometheus.yml
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
# scrape_timeout is set to the global default (10s). alerting:
alertmanagers:
- static_configs:
- targets:
# - alertmanager:9093 rule_files:
# - "first_rules.yml"
# - "second_rules.yml" scrape_configs:
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
- job_name: 'prometheus' # metrics_path defaults to '/metrics'
# scheme defaults to 'http'. static_configs:
- targets: ['localhost:9090']

启动

直接使用 nohub 把进程放到后台运行

[root@es01 config]# nohup /opt/prometheus-2.14/bin/prometheus --config.file=/opt/prometheus-2.14/config/prometheus.yml --web.enable-lifecycle --storage.tsdb.path=/opt/prometheus-2.14/data/ --log.level=info --log.format=json &>> /opt/prometheus-2.14/logs/prometheus.log &
  • --config.file 指定配置文件目录
  • --web.enable-lifecycle 开启通过 http://prometheus:port/-/reload 访问重新加载配置文件
  • --storage.tsdb.path 配置prometheus数据保存目录
  • --log.level 配置输出日志级别
  • --log.format 配置日志输出格式

更多启动参数,请使用 prometheus -h 进行查看。

[root@es01 config]# netstat -lntup | grep 9090
tcp6 0 0 :::9090 :::* LISTEN 25469/prometheus

安装完成

Prometheus 安装的更多相关文章

  1. Prometheus安装

    Prometheus安装 下载地址: https://prometheus.io/download/ 现在时间是: 2019.09.07 安装环境: Linux centos7 minimal 虚拟机 ...

  2. Prometheus 安装Alertmanager集成

    Prometheus 安装Alertmanager集成 # 下载地址 地址1:https://prometheus.io/download/ 地址2:https://github.com/promet ...

  3. Prometheus 安装Grafana与Prometheus集成

    Prometheus 安装Grafana与Prometheus集成 Grafana是一个开源的度量分析和可视化系统. 下载地址:https://grafana.com/grafana/download ...

  4. Prometheus 安装部署

    Prometheus 安装部署 安装版本:prometheus-2.6.1 百度云下载:https://pan.baidu.com/s/1w16lQZKw8PCHqlRuSK2i7A 提取码:lw1q ...

  5. Prometheus安装教程

    Prometheus安装教程 欢迎关注H寻梦人公众号 参考目录 docker安装Prometheus 基于docker 搭建Prometheus+Grafana prometheus官方文档 dock ...

  6. Prometheus安装和配置node_exporter监控主机

    Node_exporter是可以在* Nix和Linux系统上运行的计算机度量标准的导出器. Node_exporter 主要用于暴露 metrics 给 Prometheus,其中 metrics ...

  7. prometheus安装、使用

    本文主要参考https://songjiayang.gitbooks.io/prometheus/introduction/what.html 二进制包安装 我们可以到 Prometheus 二进制下 ...

  8. Prometheus安装部署说明

    本文主要介绍了如何二进制安装Prometheus.使用 Node Exporter 采集主机信息并使用Grafana来进行图形化的展示. 1. 安装Prometheus Server Promethe ...

  9. prometheus学习系列二: Prometheus安装

    下载 在prometheus的官网的download页面,可以找到prometheus的下载二进制包. [root@node00 src]# cd /usr/src/ [root@node00 src ...

随机推荐

  1. 获取本机出口IP方法

    Windows 浏览器常用方式访问: 1.http://www.ip138.com/ 2.http://tool.chinaz.com/ 3.在百度搜索框内输入 ip  会自动识别出来当前的出口IP ...

  2. 利用python的requests和BeautifulSoup库爬取小说网站内容

    1. 什么是Requests? Requests是用Python语言编写的,基于urllib3来改写的,采用Apache2 Licensed 来源协议的HTTP库. 它比urllib更加方便,可以节约 ...

  3. Java IO编程——文件拷贝

    在操作系统里面有一个copy命令,这个命令的主要功能是可以实现文件的拷贝处理,现在要求模拟这个命令,通过初始化参数输入拷贝的源文件路径与拷贝的目标路径实现文件的拷贝处理. 需求分析: ·需要实现文件的 ...

  4. Blue:贪心,单调队列

    考场上什么都没想. 显然在扯淡了,应该说是刚开始想了一些没用的. 有决策单调性,所以二分答案? 好,那就二分答案.想想怎么检查每只蛤能不能都跳到终点? 那么每只蛤都不能掉队啊. 如果你现在遇到了一个石 ...

  5. PHP、 Ruby、Python、Java、C++、C、Objective C——编程语言之禅

    PHP是你豆蔻年华时的心上人,她是情窦初开的你今年夏天傻乎乎追求的目标.玩一玩可以,但千万不要投入过深,因为这个“女孩”有严重的问题. Ruby是脚本家族中一个非常漂亮的孩子.第一眼看她,你的心魄就会 ...

  6. 雷神领域(并查集真是个好东西)并查集+流氓dp

    考场上,整整看了半个小时以上的题目!!! 化简题意: 给定一个全0矩阵,一些坐标点(x,y)为1,当三个点可以构成一个直角三角形时(直角边长为整数)拓展为一个矩形,之后从(0,0)出发,求最多的占用行 ...

  7. Go 基础学习笔记 (5)| 数据类型说明与使用

    在 Go 编程语言中,数据类型用于声明函数和变量. 数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存. Go 语言按类别有以下几种 ...

  8. mysql并发量过大造成 update语句更新错误

    mysql并发量过大造成 update语句更新错误 在同一字段的时候更新的时候 如果并发量太大 就会更新错误 这个时候只能用 swoole 消息队列更新

  9. SSM整合案例--用户登录

    实现用户登录案例,并进行非法拦截 实现当用户未登录时,无法跳转到出登录页面以外的任何页面,拦截用户仍在登陆页面:当用户登录成功即可跳转到其他页面 (1)导入依赖 <!-- https://mvn ...

  10. Linux命令实战(一)

    1.pwd(printing working directory)打印当前工作目录路径 [root@test sysconfig]# pwd /etc/sysconfig 2.ls(list)列出当前 ...