Prometheus的单机部署
2024-09-08 10:19:19
Prometheus的单机部署
一、什么是Prometheus
Prometheus
是最初在SoundCloud
上构建的开源系统监视和警报工具包 。是一个时间序列数据库。
时间序列数据
:即按相同时序(相同名称和标签
),以时间维度存储的连续的数据集合。
注意:
在同一个指标名称
上添加、删除、修改标签将会产生一个新的时间序列。如果我们为该时间系列配置了一系列的警报,该警报依赖于指标的标签来评判。如果更改或 添加标签,那么警报将变为无效。
二、Prometheus的特性
- 多维的数据模型
- 灵活的查询语言 PromQL
- 不依赖分布式存储;单个服务器节点是自治的
- 时间序列收集通过HTTP上的拉模型进行
- 通过中间网关支持推送时间序列
- 通过服务发现或静态配置发现目标
- 多种图形和仪表板支持模式
三、支持的指标类型
1、Counter 计数器
用于保存单调递增
的数值,只能是正数,不能是负数,不可减少,但是可以重置为0。 比如: 某个http请求的访问次数。
2、Gauge 仪表盘
用于保存有着起伏变化的值,可以增加也可以较少。比如: 内存的使用情况
3、Histogram 直方图
直方图对观察值(通常是请求持续时间或响应大小之类的东西)进行采样,并将其计数在可配置的存储桶中。 它还提供所有观察值的总和。
4、Summary 摘要
类似于直方图,摘要会采样观察值(通常是请求持续时间和响应大小之类的东西)。 虽然它还提供了观测值的总数和所有观测值的总和,但它在滑动时间窗口内计算可配置的分位数
四、Prometheus单机部署
1、下载
2、下载之后解压重命名文件夹
1、文件夹内容
prometheus-2.25.0
├── LICENSE
├── NOTICE
├── console_libraries
│ ├── menu.lib
│ └── prom.lib
├── consoles
│ ├── index.html.example
│ ├── node-cpu.html
│ ├── node-disk.html
│ ├── node-overview.html
│ ├── node.html
│ ├── prometheus-overview.html
│ └── prometheus.html
├── prometheus (启动文件)
├── prometheus.yml (配置文件)
└── promtool
2、prometheus
为启动文件,默认启动会加载和它同级的prometheus.yml
配置文件。
3、prometheus.yml
为配置文件
3、启动 prometheus
1、显示prometheus命令支持的所有命令行参数
./prometheus -h
2、指定运行配置文件
./prometheus --config.file="prometheus.yml"
3、修改运行端口
./prometheus --web.listen-address="0.0.0.0:9080"
注意:
如果修改了默认的9090
端口,则需要修改 prometheus.yml
中默认监控自己的端口。
4、修改数据存储目录和数据保留时间
./prometheus --storage.tsdb.path="data/" --storage.tsdb.retention.time="15d"
5、 查看版本号
./prometheus --version
6、验证配置文件是否正确
./promtool check config prometheus.yml
启动命令:
/Users/huan/soft/prometheus/prometheus-2.25.0/prometheus \
--config.file="/Users/huan/soft/prometheus/prometheus-2.25.0/prometheus.yml" \
--web.listen-address="0.0.0.0:9080" \
--storage.tsdb.retention.time="15d" \
&
五、启动界面
1、访问指标数据
http://localhost:9080/metrics
2、访问图形化界面(表达式浏览器)
http://localhost:9080/graph
六、配置node_exporter监控系统主机
1、下载并解压
# wget https://github.com/prometheus/node_exporter/releases/download/v1.1.1/node_exporter-1.1.1.darwin-amd64.tar.gz
# tar -zxvf node_exporter-1.1.1.darwin-amd64.tar.gz
# mv node_exporter-1.1.1.darwin-amd64 node_exporter-1.1.1
2、启动node_exporter
./node_exporter --web.listen-address=":9081"
1、使用 --help
查看可用的命令行配置项
2、使用 --web.listen-address
指定启动的端口
3、访问度量指标数据
http://localhost:9081/metrics
4、集成到 Prometheus 中
修改 prometheus.yml
文件,增加:
scrape_configs:
- job_name: 'node-exporter'
static_configs:
- targets: ['localhost:9081']
5、查看node_exporter是否集成成功
七、参考文档
最新文章
- ASP.NET Core官方计划路线及需要废除的一些Framework技术
- border单样式写法的问题
- matlab实现高斯消去法、LU分解
- Spring 中JCA CCI分析--转载
- ftp上传java代码
- POJ 3281 Dining (网络流构图)
- C#_MVC3之使用Authorize简单的验证登录(一)
- 单位有b\B\K\M\G的相互转换
- c指针点滴2之比大小
- RocketMQ部分数据消费不了问题排查
- ShareIntentUtil【调用系统自带的分享的工具类】
- 2018-2019-2 网络对抗技术 20165305 Exp1 PC平台逆向破解
- 2018.11.25 AMC-ICPC 亚洲区域赛(焦作站)吊银
- RAMOS (内存操作系统)-无忧百科(不断完善中)
- 使用alien命令让deb包和rpm包互相转换
- 《图解CSS3:核心技术与案例实战》
- no matching function for call to ‘std::basic_string<;char>;::assign(std::string&;, int)
- GATK--使用转载
- 解决点击cell执行动画导致的重用问题
- DWR、Comet4j在Nginx+Tomcat组合下的优化
热门文章
- 深入理解Linux文件系统与日志文件
- scrum项目冲刺_day04总结
- 【C++基础教程】第四课
- 学习PHP中的高精度计时器HRTime扩展
- PHP中的MySQLi扩展学习(六)MySQLI_result对象操作
- Java基础系列(9)- 数据类型扩展及常见面试题
- requests接口自动化-pytest框架
- Win10环境下多JDK切换以及could not find java.dll异常解决
- python爬虫抓取中国最好大学排名1 	清华大学 	北京 	94.0 	100.0 	97.70% 	清华大学 2 	北京大学
- python操作Redis方法速记