热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CentOS7.6环境下Prometheus与Grafana的集成部署指南

本文旨在提供一套详细的步骤,指导读者如何在CentOS7.6操作系统上成功安装和配置Prometheus2.17.1及Grafana6.7.2-1,实现高效的数据监控与可视化。

一、概述

本文将详细介绍如何在CentOS 7.6平台上安装Prometheus 2.17.1和Grafana 6.7.2-1,构建一个稳定可靠的监控系统。Prometheus监听端口为9090,而Node Exporter则使用9100端口。

二、系统信息

以下是目标系统的详细信息:
内核版本:Linux 3.10.0-957.el7.x86_64
发行版本:CentOS Linux release 7.6.1810 (Core)
Grafana版本:6.7.2-1
Prometheus版本:2.17.1

三、前期准备

1. 访问Grafana官方网站获取更多信息:Grafana官网
2. 下载Grafana:Grafana下载页
3. Grafana默认端口:3000
4. Prometheus官方网站:Prometheus官网
5. 下载Prometheus和Node Exporter:下载链接

四、网络架构

为了更好地理解部署结构,下面是各个组件的网络布局:
主机名 IP地址 主要软件 角色
mycat34 192.168.73.34 Prometheus, Grafana 数据收集与展示中心
mycat33 192.168.73.33 Node Exporter 被监控节点

五、Prometheus安装

1. 关闭防火墙和SELinux以确保无障碍安装:
yum install -y wget ntp curl vim net-tools
tar -zcvf /etc/yum.repos.d/yumRepo.bak /etc/yum.repos.d/*.repo
rm -rf /etc/yum.repos.d/*.repo
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum install epel-release -y
yum clean all && yum makecache
timedatectl set-timezone Asia/Shanghai
timedatectl set-local-rtc 0
sed -i 's/server 0.centos.pool.ntp.org iburst/server ntp1.aliyun.com iburst/g' /etc/ntp.conf
sed -i 's/server 1.centos.pool.ntp.org iburst/server ntp2.aliyun.com iburst/g' /etc/ntp.conf
sed -i 's/server 2.centos.pool.ntp.org iburst/server 1.centos.pool.ntp.org iburst/g' /etc/ntp.conf
sed -i 's/server 3.centos.pool.ntp.org iburst/server 2.centos.pool.ntp.org iburst/g' /etc/ntp.conf
systemctl restart ntpd
systemctl enable ntpd
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

2. 下载Prometheus:
wget -P /usr/local/src https://github.com/prometheus/prometheus/releases/download/v2.17.1/prometheus-2.17.1.linux-amd64.tar.gz

3. 解压文件:
tar -zxvf /usr/local/src/prometheus-2.17.1.linux-amd64.tar.gz -C /usr/local

4. 创建软链接(可选):
ln -s /usr/local/prometheus-2.17.1.linux-amd64 /usr/local/prometheus

5. 建立数据存储目录:
mkdir -p /var/lib/prometheus
chown -R prometheus /var/lib/prometheus

6. 创建用户和组:
groupadd prometheus
useradd -g prometheus -s /sbin/nologin prometheus

7. 设置目录权限:
chown -R prometheus:prometheus /usr/local/prometheus/

8. 配置系统服务:
cat >/etc/systemd/system/prometheus.service <[Unit]
Description=Prometheus
Documentation=https://prometheus.io/
After=network.target
[Service]
Type=simple
User=prometheus
ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml --storage.tsdb.path=/var/lib/prometheus
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF

9. 添加监控目标:
cp /usr/local/prometheus/prometheus.yml{,.bak}
cat >> /usr/local/prometheus/prometheus.yml <- job_name: 'xnode1-mycat33'
scrape_interval: 10s
static_configs:
- targets: ['192.168.73.33:9100']
labels:
instance: xnode1-instance
EOF

10. 启动服务并设为开机自启:
systemctl start prometheus.service
systemctl enable prometheus.service

11. 访问Prometheus Web界面进行验证:
通过浏览器访问 http://192.168.73.34:9090/ 可以看到Prometheus的首页。

六、Node Exporter安装

在目标主机上执行以下步骤:
1. 下载Node Exporter:
wget -P /usr/local/src https://github.com/prometheus/node_exporter/releases/download/v1.0.0-rc.0/node_exporter-1.0.0-rc.0.linux-amd64.tar.gz

2. 解压:
tar -zxvf /usr/local/src/node_exporter-1.0.0-rc.0.linux-amd64.tar.gz -C /usr/local

3. 创建软链接:
ln -s /usr/local/node_exporter-1.0.0-rc.0.linux-amd64/ /usr/local/node_exporter

4. 创建用户:
groupadd prometheus
useradd -g prometheus -s /sbin/nologin prometheus

5. 设置权限:
chown -R prometheus:prometheus /usr/local/node_exporter/

6. 配置系统服务:
cat >/usr/lib/systemd/system/node_exporter.service <[Unit]
Description=node_exporter
Documentation=https://prometheus.io/
After=network.target
[Service]
Type=simple
User=prometheus
ExecStart=/usr/local/node_exporter/node_exporter
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF

7. 启动服务并设为开机自启:
systemctl start node_exporter
systemctl enable node_exporter

8. 检查服务状态:
systemctl status node_exporter
ss -ntl |grep 9100

9. 放行防火墙端口或关闭防火墙:
systemctl stop firewalld
systemctl disable firewalld

七、Grafana配置

1. 访问Grafana:
打开浏览器,访问 http://192.168.73.34:3000/,默认用户名和密码均为admin。

2. 添加数据源:
点击左侧菜单中的【Configuration】->【Data Sources】->【Add data source】,选择Prometheus作为数据源类型。

3. 配置数据源:
Name: 自定义名称
Default: 选中
URL: http://192.168.73.34:9090/
Access: Server(default)
Scrape interval: 15s

4. 测试连接:
点击【Save & Test】按钮,如果显示【Data source is working】则表示配置成功。

5. 查看默认仪表盘:
点击【Prometheus Stats】,即可查看默认的监控仪表盘。


推荐阅读
  • Prometheus 2.5 + Grafana 5.3 使用官方模板监控
    系统环境:Centos7.2+ Prometheus2.5+Grafana5.3 Grafana安装参考:Grafana安装Prometheus+Grafana 安装参考:Grap ... [详细]
  • 本文详细介绍了如何在云服务器上配置Nginx、Tomcat、JDK和MySQL。涵盖从下载、安装到配置的完整步骤,帮助读者快速搭建Java Web开发环境。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 本文详细记录了在银河麒麟操作系统和龙芯架构上使用 Qt 5.15.2 进行项目打包时遇到的问题及解决方案,特别关注于 linuxdeployqt 工具的应用。 ... [详细]
  • 本文详细介绍了如何在CentOS 7操作系统上安装和配置Grafana,包括必要的依赖项安装、插件管理以及服务启动等步骤。 ... [详细]
  • PostgreSQL 10 离线安装指南
    本文详细介绍了如何在无法联网的服务器上进行 PostgreSQL 10 的离线安装,并涵盖了从下载安装包到配置远程访问的完整步骤。 ... [详细]
  • 本文详细介绍了如何通过RPM包在Linux系统(如CentOS)上安装MySQL 5.6。涵盖了检查现有安装、下载和安装RPM包、配置MySQL以及设置远程访问和开机自启动等步骤。 ... [详细]
  • CentOS 6.5 上安装 MySQL 5.7.23 的详细步骤
    本文详细介绍如何在 CentOS 6.5 系统上成功安装 MySQL 5.7.23,包括卸载旧版本、下载安装包、配置文件修改及启动服务等关键步骤。 ... [详细]
  • 在项目部署后,Node.js 进程可能会遇到不可预见的错误并崩溃。为了及时通知开发人员进行问题排查,我们可以利用 nodemailer 插件来发送邮件提醒。本文将详细介绍如何配置和使用 nodemailer 实现这一功能。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 简化报表生成:EasyReport工具的全面解析
    本文详细介绍了EasyReport,一个易于使用的开源Web报表工具。该工具支持Hadoop、HBase及多种关系型数据库,能够将SQL查询结果转换为HTML表格,并提供Excel导出、图表显示和表头冻结等功能。 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 云函数与数据库API实现增删查改的对比
    本文将深入探讨使用云函数和数据库API实现数据操作(增删查改)的不同方法,通过详细的代码示例帮助读者更好地理解和掌握这些技术。文章不仅提供代码实现,还解释了每种方法的特点和适用场景。 ... [详细]
  • 本书《.NET Core 2.* 开发者指南》是面向开发者的全面学习与实践手册,涵盖了从基础到高级的各个层面。书中详细解析了 .NET Core 的核心概念,包括如何创建 .NET Core 网站,并通过视频教程直观展示操作过程。此外,还深入探讨了 Startup 类的作用、项目目录结构的组织方式以及如何在应用中使用静态文件等内容。对于希望深入了解 .NET Core 架构和开发技巧的开发者来说,本书提供了丰富的实践案例和详尽的技术指导。 ... [详细]
author-avatar
461067805QQ
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有