本篇为大家介绍Ambari如何集成Prometheus
扫描二维码,关注BearData
代码参考 https://gitee.com/zxcolin/ambari.git
一、Prometheus简介
Prometheus是一套开源的系统监控报警框架。Prometheus作为新一代的云原生监控系统,相比传统监控监控系统(Nagios或者Zabbix)拥有如下优点。
易管理性
Prometheus: Prometheus核心部分只有一个单独的二进制文件,可直接在本地工作,不依赖于分布式存储。
Nagios: 需要有专业的人员进行安装,配置和管理,并且过程很复杂。
业务数据相关性
Prometheus:监控服务的运行状态,基于Prometheus丰富的Client库,用户可以轻松的在应用程序中添加对Prometheus的支持,从而让用户可以获取服务和应用内部真正的运行状态。
Nagios:大部分的监控能力都是围绕系统的一些边缘性的问题,主要针对系统服务和资源的状态以及应用程序的可用性。
高效性
单一Prometheus可以处理数以百万的监控指标;每秒处理数十万的数据点。
易于伸缩性
通过使用功能分区(sharing)+联邦集群(federation)可以对Prometheus进行扩展,形成一个逻辑集群;Prometheus提供多种语言的客户端SDK,这些SDK可以快速让应用程序纳入到Prometheus的监控当中。
良好的可视化。
Prometheus除了自带有Prometheus UI,Prometheus还提供了一个独立的基于Ruby On Rails的Dashboard解决方案Promdash。另外最新的Grafana可视化工具也提供了完整的Proetheus支持,基于Prometheus提供的API还可以实现自己的监控可视化UI。
二、打包RPM
1. 下载源码
本次用的最新版本2.23.0
下载地址 https://prometheus.io/download/
2. 解压源包
# 解压
tar -zxvf ./prometheus-2.23.0.linux-amd64.tar.gz
3. 制作RPM包
将编译后的文件制作成和HDP安装包一样的目录,并编写SPEC文件,如下图所示
制作tar.gz包
拷贝SPEC文件和tar.gz包到rpmbuild路径下并制作RPM包
将生成的RPM包拷贝到源中
更新源
三、集成Ambari
configuration: prometheus配置文件
package: scripts:主要的执行逻辑代码,包括启动,停止等;templates:配置模板;
metainfo.xml:版本定义,安装等配置
四、编译Ambari
mvn -B clean install package rpm:rpm -DnewVersion=2.7.4.0.20210108 -DskipTests -Drat.skip -Dpython.ver="python >= 2.6"
五、安装、测试
选择服务
选择安装节点
配置Prometheus
安装
安装完成
查看主页