做网站和优化共多少钱?,wordpress优化版源码,公司产品营销广告宣传,安徽有哪些市一、prometheus简介 普罗米修斯Prometheus是一个开源系统监控和警报工具包#xff0c;最初构建于SoundCloud。自2012年成立以来#xff0c;许多公司和组织都采用了普罗米修斯#xff0c;该项目拥有非常活跃的开发人员和用户社区。它现在是一个独立的开源项目#xff0c;独立…一、prometheus简介 普罗米修斯Prometheus是一个开源系统监控和警报工具包最初构建于SoundCloud。自2012年成立以来许多公司和组织都采用了普罗米修斯该项目拥有非常活跃的开发人员和用户社区。它现在是一个独立的开源项目独立于任何公司进行维护。为了强调这一点并澄清该项目的治理结构普罗米修斯于2016年加入云原生计算基金会成为继Kubernetes之后的第二个托管项目。以下是普罗米修斯的主要特点和优势
强大的指标收集Prometheus能够从各种目标系统中收集丰富的监控指标。多维数据模型它支持通过标签对数据进行灵活的分类和查询。灵活的配置可以方便地定义监控目标和采集规则。实时查询提供快速的实时数据查询功能。社区活跃拥有庞大且活跃的社区不断推动其发展和完善。与多种工具集成能与许多其他系统和工具进行良好的集成。可视化支持常与Grafana等可视化工具搭配实现直观的监控展示。与Zabbix的区别Prometheus采用多维数据模型主要基于主动拉取数据社区非常活跃扩展性好告警管理相对简洁在云原生环境中广泛应用。相比之下Zabbix使用传统的监控项和值的方式支持主动和被动两种监控方式也有活跃社区但Prometheus在云原生领域更流行扩展性也不错但可能相对复杂一些有较为完善的告警配置和管理体系也在不断适应云原生场景但最初并非为云原生设计。 Prometheus的主要组件包括Prometheus Server、Exporters、Alertmanager和Pushgateway。这些组件共同构成了Prometheus的监控生态系统使得用户可以方便地收集、存储、查询和处理各种监控数据。下面详细解释每个主要组件的作用和重要性
Prometheus ServerPrometheus Server是整个监控系统的核心负责从各种监控目标如Kubernetes集群、Docker容器、主机等中定期拉取pull监控指标数据并将其存储在本地的时间序列数据库中。它还提供了灵活的查询语言PromQL用于对存储的数据进行查询和分析。此外Prometheus Server支持多种服务发现机制如文件、DNS、Consul、Kubernetes等能够动态管理监控目标。ExportersExporters是一组工具用于将那些本身不支持直接暴露监控指标的应用程序或服务的指标数据转换为Prometheus可以抓取的格式。例如Node Exporter用于收集服务器节点的物理指标状态数据如CPU、内存、磁盘使用情况等而MySQL Exporter则用于收集MySQL数据库的指标数据。其他常见的Exporter还包括Blackbox Exporter用于网络探测、Process Exporter用于监控进程状态等。AlertmanagerAlertmanager是Prometheus体系中处理报警的组件它根据Prometheus Server中定义的警报规则接收警报通知然后根据配置的处理流程将警报通知发送给指定的接收者如邮件、Slack、企业微信、钉钉等。Alertmanager支持告警的去重、分组和路由配置以及告警的沉默和抑制功能以减少不必要的告警噪音。PushgatewayPushgateway是一个可选的组件主要用于接收由短期作业或批处理作业生成的指标数据并允许Prometheus Server从Pushgateway中拉取这些数据。当某些作业或服务由于网络限制或其他原因无法直接被Prometheus Server访问时可以使用Pushgateway作为中间缓存层来收集和转发这些指标数据。除了上述核心组件外Prometheus生态系统中还有一些其他的工具和集成选项如Grafana用于数据可视化和监控平台的开源工具可与Prometheus无缝集成以及各种客户端库Client Libraries它们为开发者提供了在应用程序中实现自定义指标的方式。 总的来说Prometheus通过这些组件的协同工作为用户提供了一个强大且灵活的监控和告警解决方案特别适合于云原生环境如Kubernetes集群的监控。了解这些组件的功能和工作原理对于有效使用Prometheus至关重要。
二、安装步骤 博文实验环境如下
操作系统centos7.6Prometheus版本2.52.0node-exporter版本1.8.1
1、创建部署目录 [roots76 opt]# mkdir prometheus 2、官网下载prometheus最新安装包 博主安装部署时最新版本是2.52.0发布日期是2024年5月7日我们可以访问普罗米修斯官网下载最新版本。 [roots76 prometheus]# wget https://github.com/prometheus/prometheus/releases/download/v2.52.0/prometheus-2.52.0.linux-amd64.tar.gz 3、解压安装包 [roots76 prometheus]# tar -zxvf prometheus-2.52.0.linux-amd64.tar.gz [roots76 prometheus]# ln -s prometheus-2.52.0.linux-amd64/ prometheus 4、启动程序 [roots76 prometheus]# ./prometheus --version prometheus, version 2.52.0 (branch: HEAD, revision: 879d80922a227c37df502e7315fad8ceb10a986d) build user: root1b4f4c206e41 build date: 20240508-21:56:43 go version: go1.22.3 platform: linux/amd64 tags: netgo,builtinassets,stringlabels [roots76 prometheus]# ./prometheus 5、开通防火墙策略 [roots76 prometheus]# firewall-cmd --zonepublic --add-port9090/tcp --permanent [roots76 prometheus]# firewall-cmd --reload [roots76 prometheus]# setenforce 0 6、访问Prometheus WEB页面 三、使用简介添加node节点监控目标
1、修改配置文件prometheus.yml [roots76 prometheus]# vim prometheus.yml 2、重新启动程序 [roots76 prometheus]# ./prometheus 3、查看targets 4、被监控节点下载node-exporter 如下第4、5、6步是在被监控主机上执行。 [rootmytool opt ]# wget https://github.com/prometheus/node_exporter/releases/download/v1.8.1/node_exporter-1.8.1.linux-amd64.tar.gz 5、解压软件包并启动 [rootmytool opt]# tar -zxvf node_exporter-1.8.1.linux-amd64.tar.gz [rootmytool opt]# ln -s node_exporter-1.8.1.linux-amd64 node_exporter [rootmytool opt]# cd node_exporter [rootmytool node_exporter]# ./node_exporter 6、查看监听端口服务 7、再次查看targets 再次登录Prometheus服务器WEB控制台查看监控目标状态发现mytool监控节点status变为绿色up状态。
四、开机自启动配置
1、创建软链接 [roots76 prometheus]# ln -s /opt/prometheus/prometheus-2.52.0.linux-amd64 /usr/local/prometheus 2、添加Prometheus用户并授权 [roots76 prometheus]# groupadd prometheus [roots76 prometheus]# useradd -g prometheus -s /sbin/nologin prometheus [roots76 prometheus]# chown -R prometheus:prometheus /usr/local/prometheus/ 3、设置开机启动参数 参照如下配置文件创建开机自启动服务配置文件。 [roots76 prometheus]# touch /usr/lib/systemd/system/prometheus.service [roots76 prometheus]# chown prometheus:prometheus /usr/lib/systemd/system/prometheus.service [roots76 prometheus]# vim /usr/lib/systemd/system/prometheus.service [Unit]
DescriptionPrometheus
Documentationhttps://prometheus.io/
Afternetwork.target[Service]
# Type设置为notify时服务会不断重启
Typesimple
Userprometheus
# --storage.tsdb.path是可选项默认数据目录在运行目录的./dada目录中
ExecStart/usr/local/prometheus/prometheus --config.file/usr/local/prometheus/prometheus.yml --storage.tsdb.path/usr/local/prometheus/data
Restarton-failure[Install]
WantedBymulti-user.target 4、启动Prometheus服务 [roots76 prometheus]# systemctl start prometheus 5、查看Prometheus服务状态 [roots76 prometheus]# netstat -tnpl |grep 9090 tcp6 0 0 :::9090 :: LISTEN 47654/prometheus 6、Prometheus管理 配置了开机启动服务配置文件后我们就可以通过systemctl命令进行管理Prometheus服务的启动、停止和状态查看啦。