志不强者智不达,言不信者行不果。这篇文章主要讲述#yyds干货盘点#Prometheus 之配置步骤及容量规划相关的知识,希望能为你提供帮助。
Prometheus 通过 YAML 文件来配置。当运行 prometheus 二进制文件(或 Windows 上的 prometheus.exe 可执行文件)时,我们会指定一个配置文件。Prometheus 自带默认的配置文件 prometheus.yml。
配置的第一部分是 global,它包含了控制 Prometheus 服务器行为的全局配置。第一个参数 scrape_interval 用来指定应用程序或服务抓取数据的时间间隔。这个值是时间序列的颗粒度,即该序列中每个数据点所覆盖的时间段。
配置的第二部分是 alerting,它用来设置 Prometheus 的警报。警报是由名为 Alertmanager[插图]的独立工具进行管理的。Alertmanager 是一个可以集群化的独立警报管理工具。
配置的第三部分是 rule_files,它用来指定包含记录规则或警报规则的文件列表。
配置的最后一部分是 scrape_configs,用来指定 Prometheus 抓取的所有目标。
Prometheus 的性能很难估计,因为它在很大程度上取决于你的配置、所收集的时间序列的数量以及服务器上规则的复杂性。一般容量规划关注两个问题:内存和磁盘
Prometheus 在内存中做了很多工作。每个收集的时间序列、查询和记录规则都会消耗进程内存。但一个有用的、粗略的经验法则是将每秒采集的样本数乘以样本的大小。我们可以使用以下查询语句来查看样本收集率。
【#yyds干货盘点#Prometheus 之配置步骤及容量规划】
每个样本的大小通常为 1 到 2 个字节,让我们谨慎一点,按照 2 个字节计算。假设在 12 小时内每秒收集 100000 个样本。结果大概是 8.64GB 的内存。
磁盘使用量受存储的时间序列数量和这些时间序列的保留时间限制。默认情况下,指标会在本地时间序列数据库中存储 15 天。数据库的位置和保留时间由命令行选项控制。
--storage.tsdb.path 选项:它的默认数据目录位于运行 Prometheus 的目录中,用于控制时间序列数据库位置。
--storage.tsdb.retention 选项:控制时间序列的保留期。默认值为 15d,代表 15 天。
建议采用 SSD 作为时间序列数据库的磁盘。
对于每秒 10 万个样本的示例,我们知道按时间序列收集的每个样本在磁盘上占用大约 1 到 2 个字节。假设每个样本有 2 个字节,那么保留 15 天的时间序列意味着需要大约 259 GB 的磁盘。
推荐阅读
- (服务运维)rpmepelyum和最小化安装组件
- 17个显示彩色字符的批处理代码
- 常用开源监控系统分析推荐(必备知识)
- Ubuntu使用smbclient
- 简单介绍PostgreSQL解析URL的方法
- 零声dpdk网络协议栈
- ES相关的操作语句
- 爱今天,迎明天,过好今生每一天
- 深度学习优化算法总结与实验