prometheus 集成 grafana 保姆级别安装部署

news/2024/12/21 19:50:42/

前言

本文 grafana 展示效果只需要 prometheus + node_exporter + grafana 其他的选择安装

环境和版本号

系统: CentOS 7.9

prometheus: 2.54.1

pushgateway: 1.9.0

node_exporter: 1.8.2

alertmanager: 0.27.0

grafana:11.2.0

官网:https://prometheus.io/

下载地址:https://prometheus.io/download/

1.安装 Prometheus Server

Prometheus 基于 Golang 编写,编译后的软件包,不依赖于任何的第三方依赖。只需要下载对应平台的二进制包,解压并且添加基本的配置即可正常启动 Prometheus Server。

1.1.下载

wget https://github.com/prometheus/prometheus/releases/download/v2.54.1/prometheus-2.54.1.linux-amd64.tar.gz

1.2.安装部署

➢ 解压到/opt/module 目录下

tar -zxf prometheus-2.54.1.linux-amd64.tar.gz -C /opt/module/

➢ 修改目录名

cd /opt/module
mv prometheus-2.54.1.linux-amd64  prometheus

➢ 修改目录权限

chown -R root:root prometheus

prometheusyml_52">1.3.修改配置文件prometheus.yml

vim prometheus.yml

在 scrape_configs 配置修改为

# Alertmanager configuration
alerting:alertmanagers:- static_configs:- targets:- hadoop102:9093scrape_configs:- job_name: "prometheus"static_configs:- targets: ["localhost:9090"]- job_name: 'pushgateway'static_configs:- targets: ['hadoop102:9091']labels:instance: pushgateway- job_name: 'node_exporter'static_configs:- targets: ['hadoop102:9100']

1.4.启动

[root@hadoop102 prometheus]# nohup ./prometheus --config.file=prometheus.yml > ./prometheus.log 2>&1 &

打开 web 页面查看

浏览器输入:http://hadoop102:9090/

prometheus、pushgateway 和 node exporter 都是 up 状态,表示安装启动成功

(后面会安装部署pushgateway 和 node exporter 安装以后才会显示)
在这里插入图片描述

2.安装 Pushgateway(选择安装)

Prometheus 在正常情况下是采用拉模式从产生 metric 的作业或者 exporter(比如专门监控主机的 NodeExporter)拉取监控数据。但是如果我们要监控的是 Flink on YARN 作业,想要让 Prometheus 自动发现作业的提交、结束以及自动拉取数据显然是比较困难的。PushGateway 就是一个中转组件,通过配置 Flink on YARN 作业将 metric 推到PushGateway,Prometheus 再从 PushGateway 拉取就可以了。

是否需要 Pushgateway
长时间运行的服务(例如 Node Exporter): 通常不需要 Pushgateway,因为 Prometheus 可以定期从 Node Exporter 拉取指标数据。
短期任务(例如批处理作业、一次性任务): 可能需要 Pushgateway,因为这些任务的生命周期短暂,Prometheus 可能无法定期拉取这些任务的指标数据。在这种情况下,短期任务会将指标数据推送到 Pushgateway,然后 Prometheus 从 Pushgateway 拉取数据。

2.1.下载

wget https://github.com/prometheus/pushgateway/releases/download/v1.9.0/pushgateway-1.9.0.linux-amd64.tar.gz

2.2.安装部署

➢ 解压到/opt/module 目录下

tar -zxf pushgateway-1.9.0.linux-amd64.tar.gz -C /opt/module/

➢ 修改目录名

cd /opt/module
mv pushgateway-1.9.0.linux-amd64  pushgateway

➢ 修改目录权限

 chown -R root:root pushgateway

2.3.启动

[root@hadoop102 pushgateway]# nohup ./pushgateway --web.listen-address :9091 > ./pushgateway.log 2>&1 &

3.安装 Alertmanager(选择安装)

如果你需要处理告警和通知,Alertmanager 是必需的。Alertmanager 会接收 Prometheus 的告警,按照规则处理(例如,发送电子邮件、Slack 通知等),然后将处理后的告警信息发送到你定义的通知渠道。

3.1.下载

wget https://github.com/prometheus/alertmanager/releases/download/v0.27.0/alertmanager-0.27.0.linux-amd64.tar.gz

3.2.安装部署

➢ 解压到/opt/module 目录下

tar -zxf alertmanager-0.27.0.linux-amd64.tar.gz -C /opt/module/

➢ 修改目录名

cd /opt/module
mv alertmanager-0.27.0.linux-amd64  alertmanager

➢ 修改目录权限

chown -R root:root alertmanager

3.3.启动

[root@hadoop102 alertmanager]# nohup ./alertmanager --config.file=alertmanager.yml > ./alertmanager.log 2>&1 &

打开 web 页面查看

浏览器输入:http://hadoop102:9093/
在这里插入图片描述

4.安装 Node Exporter

说明:如有多台服务器,需要每台服务器都安装Node Exporter

在 Prometheus 的架构设计中,Prometheus Server 主要负责数据的收集,存储并且对外提供数据查询支持,而实际的监控样本数据的收集则是由 Exporter 完成。因此为了能够监控到某些东西,如主机的 CPU 使用率,我们需要使用到 Exporter。Prometheus 周期性的从 Exporter 暴露的 HTTP 服务地址(通常是/metrics)拉取监控样本数据

4.1.下载

wget https://github.com/prometheus/node_exporter/releases/download/v1.8.2/node_exporter-1.8.2.linux-amd64.tar.gz

4.2.安装部署

➢ 解压到/opt/module 目录下

tar -zxf node_exporter-1.8.2.linux-amd64.tar.gz -C /opt/module/

➢ 修改目录名

cd /opt/module
mv node_exporter-1.8.2.linux-amd64  node_exporter

➢ 修改目录权限

chown -R root:root node_exporter

➢ 启动并通过页面查看是否成功

执行 ./node_exporter

浏览器输入:http://hadoop102:9100
在这里插入图片描述

4.3.设置为开机自启

➢ 创建 service 文件

cat > /usr/lib/systemd/system/node_exporter.service << 'EOF'
[Unit]
Description=node_exporter
Documentation=https://github.com/prometheus/node_exporter
After=network.target[Service]
Type=simple
User=root
ExecStart=/opt/module/node_exporter/node_exporter
Restart=on-failure[Install]
WantedBy=multi-user.target
EOF

➢修改目录权限

 chown -R root:root node_exporter

➢ 设为开机自启动

sudo systemctl enable node_exporter.service

➢ 启动服务

sudo systemctl start node_exporter.service

5.Prometheus 和 Grafana 集成

grafana 是一款采用 Go 语言编写的开源应用,主要用于大规模指标数据的可视化展现,

是网络架构和应用分析中最流行的时序数据展示工具,目前已经支持绝大部分常用的时序数

据库。下载地址:https://grafana.com/grafana/download

5.1.下载

wget https://dl.grafana.com/enterprise/release/grafana-enterprise-11.2.0.linux-amd64.tar.gz

5.2.安装部署

➢ 解压到/opt/module 目录下

tar -zxf grafana-enterprise-11.2.0.linux-amd64.tar.gz -C /opt/module/

➢ 修改目录名

cd /opt/module
mv grafana-v11.2.0  grafana

➢ 修改目录权限

chown -R root:root grafana     

➢ 配置为中文

vim /opt/module/grafana/conf/defaults.ini

# Default UI language (supported IETF language tag, such as en-US)
#default_language = en-US
default_language = zh-Hans

5.3.启动

cd /opt/module/grafana

nohup ./bin/grafana-server web > ./grafana.log 2>&1 &

➢ 打开 web http://hadoop102:3000 默认用户名和密码:admin
在这里插入图片描述

5.4 添加数据源Prometheus

在这里插入图片描述
在这里插入图片描述
输入prometheus地址:
http://hadoop102:9090/
在这里插入图片描述

5.5 手动创建仪表盘 Dashboard

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
去市场搜一个模板

https://grafana.com/grafana/dashboards/

输入市场ID: 12633
在这里插入图片描述
在这里插入图片描述
效果如下:
在这里插入图片描述
至此部署完毕


http://www.ppmy.cn/news/1527395.html

相关文章

【使用C语言创建一个简单的HTTP服务器】

创建一个简单的HTTP服务器使用C语言涉及到网络编程的基础&#xff0c;特别是使用套接字&#xff08;sockets&#xff09;进行网络通信。这里提供一个非常基础的HTTP服务器实现案例&#xff0c;该服务器能够监听HTTP请求&#xff0c;对简单的GET请求返回HTML页面。 准备工作 确…

堪比理科博士生的最强AI大模型:GPT-o1全面测评它来了

❤️作者主页&#xff1a;小虚竹 ❤️作者简介&#xff1a;大家好,我是小虚竹。2022年度博客之星&#x1f3c6;&#xff0c;Java领域优质创作者&#x1f3c6;&#xff0c;CSDN博客专家&#x1f3c6;&#xff0c;华为云享专家&#x1f3c6;&#xff0c;掘金年度人气作者&#x1…

K8s利用etcd定时备份集群结合钉钉机器人通知

如何通过脚本的方式进行K8s集群的备份 查看K8s中master节点中etcd集群的状态 kubectl get pods -n kube-system | grep etcd由于使用的etcd服务是K8s搭建时自身携带的,并不是独立搭建的etcd集群信息。使用 K8s 搭建集群时,etcd 是 Kubernetes 集成的一个重要组件因此需要查…

2024 年至今回顾:The Sandbox 创作者的历程及下一步展望

2024 年上半年是 The Sandbox 令人振奋的旅程&#xff01;从激动人心的里程碑、丰厚的奖励到创新的功能&#xff0c;我们见证了来自充满活力的社区的惊人创造力。 作为平台的生命线&#xff0c;我们致力于帮助创作者发光发热。让我们深入了解过去六个月中最激动人心的时刻和更…

Elasticsearch基础(七):Logstash如何开启死信队列

文章目录 Logstash如何开启死信队列 一、确保 Elasticsearch 输出插件启用 DLQ 支持 二、配置 Logstash DLQ 设置 三、查看死信队列 四、排查 CSV 到 Elasticsearch 数据量不一致的问题 Logstash如何开启死信队列 在 Logstash 中&#xff0c;死信队列&#xff08;Dead Le…

三维数字图像相关法(3D-DIC)用于复合材料力学性能测试

三维数字图像相关法&#xff08;3D-DIC技术&#xff09;&#xff0c;通过将物体表面随机分布的斑点或伪随机分布的人工散斑场作为变形信息载体&#xff0c;是应用于计算机视觉技术的一种图像测量方法&#xff0c;是一种非接触的&#xff0c;用于全场三维坐标、位移、应变及运动…

104. 二叉树的最大深度【 力扣(LeetCode) 】

零、LeetCode 原题 104. 二叉树的最大深度 一、题目描述 给定一个二叉树 root &#xff0c;返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 二、测试用例 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出…

【深度学习 目标检测】基于Transformer检测模型RT-DETR,ultralytics 库如何训练和推理

当RT-DETR遇上侦探&#xff1a;一起揭秘实时检测的奥秘 在人工智能的世界里&#xff0c;有一场盛大的侦探比赛正在进行。我们的主角&#xff0c;RT-DETR&#xff0c;正准备在实时目标检测的领域中大展身手。这位侦探不仅反应迅速&#xff0c;而且头脑冷静&#xff0c;擅长在海…