Prometheus源码分析(一)编译安装及命令行参数说明
2016-09-17 10:07
976 查看
目前开源的告警系统不少,选择Prometheus主要因为,它比较轻便、支持复杂的规则运算、规则的动态加载、组件之间的耦合度低(都是通过http协议交互)、而且生态圈完善。
prometheus主要应用于告警业务,常用的组件有prometheus、pushgateway、alertmanager。
prometheus组件:用于根据所配置的规则进行规则运算,当存在规则触发时,将告警信息发送给alertmanager。
pushgateway组件:数据网关,prometheus的数据源,
alertmanager组件:用于发送告警(短信、邮件等)
Prometheus详情请访问以下网址:
https://prometheus.io/docs/introduction/overview/
下载GO
版本:go1.6.2.linux-386.tar.gz,根据系统选择版本
下载地址:http://www.golangtc.com/download
下载依赖:
yum install -y gcc mercurial
说明:alertmanager、pushgateway组件源码的编译与Prometheus类型(make build)
-config.file “prometheus.yml” 指定加载的配置文件,默认当前路径下prometheus.yml
-alertmanager.notification-queue-capacity 10000 告警队列大小,默认值为10000
-alertmanager.timeout 10s 通过HTTP接口发送告警到AlertManager的超时时间,默认为10s
-alertmanager.url 指定alertmanager的地址
-query.max-concurrency 20 最大并发查询连接个数,默认为20
-query.timeout 2m0s 查询超时时间,默认2分钟
-query.staleness-delta 5m0s 这个参数很重要,当没有scrape到指标是,使用上次(最近一次)指标值进行补,该值设置距上次指标的时间间隔,默认为5分钟,操作5分针就补空值。
STORAGE命令参数主要用于设置指标存储的方式,目前prometheus支持opentsdb、influxdb、local三种
-web.listen-address “:9090” 指定外部请求的访问地址,默认为本地的9090端口。
规则运算不指定维度
规则运算指定维度
prometheus主要应用于告警业务,常用的组件有prometheus、pushgateway、alertmanager。
prometheus组件:用于根据所配置的规则进行规则运算,当存在规则触发时,将告警信息发送给alertmanager。
pushgateway组件:数据网关,prometheus的数据源,
alertmanager组件:用于发送告警(短信、邮件等)
Prometheus详情请访问以下网址:
https://prometheus.io/docs/introduction/overview/
对Prometheus感兴趣的朋友请加入QQ群:70860761 一起探讨
源码编译及安装
相关程序下载
下载安装Git:yum install -y git下载GO
版本:go1.6.2.linux-386.tar.gz,根据系统选择版本
下载地址:http://www.golangtc.com/download
下载依赖:
yum install -y gcc mercurial
环境变量设置
编译启动
mkdir -p GOPATH/src/github.com/prometheus cd GOPATH/src/github.com/prometheus git clone https://github.com/prometheus/prometheus.git cd prometheus // 开始编译 make build // 编译完成启动prometheus 命令 ./prometheus -config.file=your_config.yml
说明:alertmanager、pushgateway组件源码的编译与Prometheus类型(make build)
命令行参数说明
prometheus
-version 查看版本信息-config.file “prometheus.yml” 指定加载的配置文件,默认当前路径下prometheus.yml
-alertmanager.notification-queue-capacity 10000 告警队列大小,默认值为10000
-alertmanager.timeout 10s 通过HTTP接口发送告警到AlertManager的超时时间,默认为10s
-alertmanager.url 指定alertmanager的地址
-query.max-concurrency 20 最大并发查询连接个数,默认为20
-query.timeout 2m0s 查询超时时间,默认2分钟
-query.staleness-delta 5m0s 这个参数很重要,当没有scrape到指标是,使用上次(最近一次)指标值进行补,该值设置距上次指标的时间间隔,默认为5分钟,操作5分针就补空值。
STORAGE命令参数主要用于设置指标存储的方式,目前prometheus支持opentsdb、influxdb、local三种
-web.listen-address “:9090” 指定外部请求的访问地址,默认为本地的9090端口。
性能测试
测试机器数量:1台(非独立)规则运算不指定维度
规则运算指定维度
相关文章推荐
- Linux内核分析(一)---linux体系简介|内核源码简介|内核配置编译安装
- Prometheus源码分析(二)配置文件说明
- Linux内核分析(一)---linux体系简介|内核源码简介|内核配置编译安装
- SSH/SSL 源码编译安装简易操作说明
- Weiss的数据结构与算法分析(C++版)源码编译说明
- pinpoint源码分析--第一节 安装与说明
- Apache源码编译安装2.2.17版本以及部署AWStats日志分析系统配置详解
- kvm安装与启动过程说明-Kernel源码编译方式
- MySQL 5.7.17源码编译安装说明
- MySQL源码分析(0):编译安装及调试
- Rome使用简单说明二(部分关键源码分析)
- 与软件编译安装有关的一些系统环境变量的说明
- CentOS 5.3 下源码编译安装Ipmsg 笔记
- 在Ubuntu中通过源码安装编译安装软件(MySQL篇)
- 如何编译安装源码包软件
- 编译安装源码包软件
- [转载]Nginx源码学习之编译、构建与安装(cygwin环境)
- u-boot源码分析 - 简介,编译
- 如何编译安装源码包软件
- 第二人生的源码分析(七十五)启动状态详细说明