Prometheus介绍与运行-(1)
最火的开源监控平台Prometheu
今天开始我们了解一下从CNCF中毕业的第二位学生,Prometheus(普罗米修斯)同学,prometheus是一个开源系统监控和警报工具,最初是在SoundCloud建立的。自2012年成立以来,许多公司和组织都采用了普罗米修斯,该项目拥有一个非常活跃的开发者和用户社区。它现在是一个独立的开放源码项目,并且独立于任何公司,为了强调该点并澄清项目的治理结构,Prometheus在2016年加入了云计算基金会,成为继Kubernetes之后的第二个托管项目。Prometheus是用来收集数据的,同时本身也提供强大的查询能力,结合Grafana即可以监控并展示出想要的数据,此外除了自身存储的时序数据之外,prometheus还支持第三方的数据持久化操作,这些我们会在后面慢慢的讲解。
Prometheus的架构
图中我们可以看出哪些信息:
1. prometheus是通过TSDB时序数据进行存储的,并且支持持久化数据的存储
2. prometheus收集指标数据的模式是通过pull模式获取的指标
3. 自定义的服务数据指标可以通过push模式将指标发送给pushgateway,然后通过pull模式发送给prometheus
4. prometheus通过Push模式将告警的信息推送给alertmanager
5. alertmanager支持pagerduty, email,slack等等通知媒介
6. Prometheus还有web界面化
还有很多的信息,需要我们一步步的研究发现。
Prometheus的特征
- 多维度数据模型
- 灵活的查询语言 (PromQL)
- 不依赖分布式存储,单个服务器节点是自主的
- 以HTTP方式,通过pull模型拉去时间序列数据
- 也通过push模式将自定义的数据指标推送到中间网关pushgateway
- 通过服务发现或者静态配置,来发现目标服务对象
- 支持多种多样的图表和界面展示,这里当然少不了Grafana了
Prometheus组件
Prometheus生态包括了很多组件,它们中的一些是可选的:
- Prometheus Server抓取和存储时间序列数据
- 各种exporter负责检测应用程序代码
- 支持短生命周期的PUSH网关
- 基于Rails/SQL仪表盘构建器的GUI
- 拥有独立的警告管理器 (AlertManaager)
- PromQL命令行查询工具
- 以及其他
运行Prometheus
- 运行prometheus2.4.0
configure_file=/apps/prometheus/conf
prometheus_data=/data/prometheus
mkdir $configure_file $prometheus_data
chown -R nobody:nogroup /data/prometheus
chown -R nonody:nogroup /apps/prometheus/conf
docker run -d --name prometheus --restart=always -v $(configure_file):/etc/prometheus/ -v $(prometheus_data):/prometheus -p 9090:9090 prom/prometheus:v2.4.0 --config.file=/etc/prometheus/prometheus.yml
- 运行Prometheus2.6.0
docker run -d
--name prometheus
-p 9090:9090 prom/prometheus:v2.6.0
--web.enable-lifecycle
--web.enable-admin-api
--web.console.templates="/prometheus/consoletest"
--web.page-title="运维监控系统"
--storage.tsdb.path=/prometheus/data
--storage.tsdb.retention=15d
--log.format=json
在不同的版本系统中,prometheus的配置选项也有不同。这是一个主意的地方,在prometheus中,存在`--web.enable-lifecycle`选项参数,支持POST的方式热加载Prometheus的配置文件。运行起来就可以通过http://ip:9090进行访问prometheus的web 页面了,当然还可以结合Grafana进行数据展示。
展示一些效果图,这是添加的一个监控exporter
可以对监控的服务进行分组等等
上图是一些数据趋势图等等,下次我们继续深入分享
相关文章
- 数据孤岛是业务效率的无声杀手
- 2023展望:新的一年将给大数据分析领域带来什么?
- 阿里云ADB基于Hudi构建Lakehouse的实践
- 大数据在医疗保健领域的使用案例
- 微软增加说明:KB5021751 更新扫描已经 / 即将过时 Office 过程中不会触碰用户隐私
- 2022 Gartner全球云数据库管理系统魔力象限发布 腾讯云数据库入选
- 场景化、重实操,分享一个实时数仓实践案例
- Arctic的湖仓一体践行之路
- 分布式计算MapReduce究竟是怎么一回事?
- 淘系数据模型治理优秀实践
- 大数据分析对医疗保健的影响
- 当我们说大数据Hadoop,究竟在说什么?
- 2022年及以后大数据的五个发展趋势
- 网易严选离线数仓治理实践
- 2023 年数据治理趋势
- 一份“靠谱”的年度经营计划,你学会了吗?
- 漫谈对大数据的思考
- 测试一下,读懂数据的能力,你有吗?
- 用艺术的眼光探索数据之美
- 聊聊数据分析成果如何落地