Prometheus+Grafana安装配置并配置linux服务器监控dashboard

本文详细介绍了如何安装和配置Prometheus监控系统,包括安装Go语言环境,设置Prometheus服务器,配置监控目标,使用NodeExporter监控Linux服务器,以及安装和配置Grafana展示监控数据。此外,还提供了Grafana导入预定义dashboard的步骤,以实现美观的监控界面。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、简介:

prometheus是谷歌用golang语言开发的一款开源的监控软件,使用安装在远程机器上的exporter,通过HTTP协议从远程的机器收集数据并存储在本地的时序数据库上。

Prometheus为了支持各种中间件以及第三方的监控提供了exporter,大家可以把它理解成监控适配器,将不同指标类型和格式的数据统一转化为Prometheus能够识别的指标类型。

例如Node exporter主要通过读取Linux的/proc、/sys目录下的系统文件获取操作系统运行状态,redis exporter通过Reids命令行获取指标,mysql exporter通过读取数据库监控表获取MySQL的性能数据。他们将这些各种各样的的数据转化为标准的Prometheus格式,并提供HTTP查询接口。

Prometheus的流行和Kubernetes密不可分,它支持对Kubernetes、容器、OpenStack的监控。

普罗米修斯下载网址:https://prometheus.io/download/

监控集成器下载地址:http://www.coderdocument.com/docs/prometheus/v2.14/instrumenting/exporters_and_integrations.html

二、安装

实践过程中,首先要再安装prometheus的服务器上安装go 语言环境。
在其他需要监控的服务器上安装对应的export,这里我们只示例了监控linux服务器的node_exporter, 然后我们安装grafana,并配置监控linux服务器指标的dashboard。

具体安装过程步骤

1、安装go

Prometheus 是用golang开发的,所以要安go环境。

解压缩:

tar -C /usr/local -xzf go1.8.3.linux-amd64.tar.gz

修改配置文件

vim  /etc/profile

在文件的最后添加如下内容:

export PATH=$PATH:/usr/local/go/bin

保存退出后,让配置生效:

source  /etc/profile

验证是否安装成功

go  version
2、在服务器上安装prometheus监控

开始安装prometheus,可以去官网下载对应系统的版本,如下图:

在这里插入图片描述

如果安装的服务器可以连接外网可以使用wget下载

# 下载
wget https://github.com/prometheus/prometheus/releases/download/v2.36.1/prometheus-2.36.1.linux-amd64.tar.gz

# 解压到安装目录
tar -zxvf prometheus-2.36.1.linux-amd64.tar.gz -C /book/install/

查看版本

./prometheus --version

配置一下监控的配置文件:prometheus.yml
下面有对应的配置解释

global:
  # 默认情况下,每15s拉取一次目标采样点数据。
  scrape_interval:     15s 
  # 每15秒评估一次规则。默认值为每1分钟。
  evaluation_interval: 15s 

# 告警配置
alerting:
  alertmanagers:
  - static_configs:
    - targets:
      # - alertmanager:9093

rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"

scrape_configs:
    # 监控job的名称
  - job_name: 'prometheus'
    # 覆盖global的采样点,拉取时间间隔10s
    scrape_interval: 10s
    static_configs:
    - targets: ['localhost:9090']

下面是我操作时安装的配置:

global:
  scrape_interval:     15s 
  evaluation_interval: 15s 

alerting:
  alertmanagers:
  - static_configs:
    - targets:
      # - alertmanager:9093

rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"

scrape_configs:

  - job_name: 'prometheus'

    static_configs:
    - targets: ['localhost:9090']


 - job_name: 'linux' 
    static_configs: 
    - targets: ['192.168.1.68:9077','192.168.1.69:9077']

配置完成后,到安装目录运行:

./prometheus

或者我们可以配置为系统服务
首先root用户进入到systemd目录下:

cd /usr/lib/systemd/system

创建文件

vim prometheus.service

添加以下内容:

[Unit]
Description=https://prometheus.io
  
[Service]
Restart=on-failure
ExecStart=/book/install/prometheus-2.36.1.linux-amd64/prometheus --config.file=/book/install/prometheus-2.36.1.linux-amd64/prometheus.yml --web.listen-address=:9090

[Install]                      
WantedBy=multi-user.target

使系统文件生效

systemctl daemon-reload

启动prometheus服务

systemctl start prometheus
3、需要监控的客户服务器安装node_exporter

需要监控的服务器安装node_exporter,安装了prometheus的服务器安装node_exporter一定要换发送的端口

#下载
wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz

# 解压
tar -zxvf node_exporter-1.3.1.linux-amd64.tar.gz -C /book/install/

启动node_exporter,指定端口为9077

./node_exporter --web.listen-address=":9077"

也可以用root用户配置服务的形式启动,创建node_exporter.service文件

vim /usr/lib/systemd/system/node_exporter.service

添加如下内容,指定了端口9177,默认的是9100,我们可以知道是端口可以通过此参数更改的,防止有些服务器9100已经被占用,同时上面在prometheus.yml配置文件配置的各服务器端口也是对应的是这个。
注意:在下面配置文件ExecStart启动时–web.listen-address=:9077千万不要加引号,端口解析不出来

[Unit]
Description=node_exporter
After=network.target 

[Service]
ExecStart=/book/install/node_exporter-1.1.2.linux-amd64/node_exporter --web.listen-address=:9077
Restart=on-failure

[Install]
WantedBy=multi-user.target

让配置生效

systemctl daemon-reload

启动node_exporter服务

systemctl start node_exporter

各服务器工作节点都启动成功后可以在http://ip:9090(安装prometheus的服务器地址)下查看各服务器是否已经启动好了node_exporter。启动好了通了的话会是下图中的UP状态。
在这里插入图片描述

在这里插入图片描述

4、安装 Grafana 展示 Prometheus 数据

wget清华源下载,或者直接到清华源网址下载:
https://mirrors.tuna.tsinghua.edu.cn/grafana/yum/rpm/

wget下载容易报证书过期,还是去网址下载下来上传到服务器。

wget https://mirrors.tuna.tsinghua.edu.cn/grafana/yum/rpm/grafana-7.5.3-1.x86_64.rpm

root用户安装

yum install -y grafana-7.5.3-1.x86_64.rpm

启动grafana服务

systemctl start grafana-server.service

查看服务状态

systemctl status grafana-server.service

在这里插入图片描述

访问ui地址:

http://ip:3000    ip为安装grafana的服务器地址

在这里插入图片描述
初次登录默认用户密码都是:admin,会让你改密码。

接下来按照下面步骤添加Prometheus数据源

Configuration -> Data Sources ->add data source -> Prometheus
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

想要看到监控服务器指标的图表,需要创建一个dashbard来展示数据,这里我们只用prometheus采集了linux服务器主机的一些数据,所以我要到grafana下载已经画好的为linux准备的dashboard,到这个地址:https://grafana.com/grafana/dashboards/?search=8919
查询linux主机详情的dashboard对应的编号是8919。
下载好对应的json文件
在这里插入图片描述

在这里插入图片描述

导入下载的对应json文件
在这里插入图片描述

在这里插入图片描述

最后完成的漂亮的界面截图,记得退出时报错这个dashboard,以后登入就可以看到:
在这里插入图片描述
完成了!点个赞再走吧。

<think>好的,我现在需要帮助用户解决如何配置PrometheusGrafana实现Web界面的数据可视化。根据用户提供的引用资料,我需要整理出具体的步骤,确保结构清晰,步骤正确。 首先,用户提到了使用EMQX、PrometheusGrafana的组合,但主要问题集中在PrometheusGrafana配置上。所以,我应该先确定Prometheus安装配置,然后是如何集成Grafana。 根据引用[2]和[4],Prometheus需要监控的目标,比如主机,需要安装node_exporter来收集指标数据。用户可能需要先在被监控的主机上部署node_exporter,确保Prometheus能够抓取这些数据。引用[5]中提到修改Prometheus的yml配置文件来添加目标,所以配置文件的设置是关键步骤。 接下来是安装Grafana,根据引用[3],Grafana需要安装配置数据源连接到Prometheus。然后用户可以通过Grafana的界面导入仪表板模板或自定义图表。引用[1]和[3]都提到了Grafana的可视化功能,所以需要指导用户如何创建仪表板。 可能还需要考虑PrometheusGrafana的服务启动和端口开放情况,比如Prometheus默认的9090端口,Grafana的3000端口,确保它们可以访问。此外,引用[2]提到的Prometheus的拉取机制,需要确认目标主机的exporter是否正确暴露端口,如9100。 用户的问题还涉及到Web界面展示,所以需要说明如何通过浏览器访问这些服务。可能还需要提到数据源的配置步骤,例如在Grafana中添加Prometheus的URL。 现在需要把这些步骤分点整理,确保逻辑顺序正确,先配置数据收集(Prometheus和exporter),再配置可视化(Grafana)。同时,引用对应的引用资料来支持每个步骤,比如安装node_exporter参考引用[4],修改配置文件参考引用[5],安装Grafana参考引用[3]等。 需要注意的是,用户可能对某些术语不熟悉,比如exporter、数据源等,应使用简洁的语言解释,但用户的问题似乎更关注配置步骤,所以可能需要保持步骤的实操性,不过分深入理论。 最后,确保回答中的LaTeX格式正确,但用户的问题中没有数学公式,可能不需要使用。但根据系统级指令,如果有变量或代码块,需要用相应的格式。代码块部分比如配置文件的修改需要用代码块展示,可能需要用Markdown格式,但用户提供的示例中代码块使用三个反引号,所以需要遵循。 总结步骤: 1. 部署和配置Prometheus - 安装Prometheus - 配置监控目标(如node_exporter) - 修改prometheus.yml添加job - 启动服务验证 2. 部署和配置Grafana - 安装Grafana - 启动服务访问Web界面 - 添加Prometheus数据源 - 创建仪表板或导入模板 3. 验证可视化 - 在Grafana中创建图表 - 查看数据展示 同时,相关问题部分需要生成与主题相关的问题,比如优化监控、告警配置、其他数据源集成等。</think>### 分步配置说明 #### 1. 部署Prometheus配置数据采集 **步骤1.1:安装Prometheus** - 从[Prometheus官网](https://prometheus.io/download/)下载解压安装包。 - 启动Prometheus服务(默认端口`9090`),验证是否成功访问:`http://<Prometheus服务器IP>:9090`[^2][^3]。 **步骤1.2:配置监控目标(以主机监控为例)** - 在被监控主机上部署`node_exporter`(用于采集CPU、内存、磁盘等指标): ```bash wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz tar -xvf node_exporter-*.tar.gz cd node_exporter-* && ./node_exporter ``` `node_exporter`默认暴露端口`9100`[^4]。 **步骤1.3:修改Prometheus配置文件** - 编辑`prometheus.yml`,添加监控目标: ```yaml scrape_configs: - job_name: 'node' static_configs: - targets: ['<主机IP>:9100'] # 被监控主机的node_exporter地址 ``` - 重启Prometheus服务使配置生效[^5]。 --- #### 2. 部署Grafana配置数据源 **步骤2.1:安装Grafana** - 根据系统环境选择安装方式(以CentOS为例): ```bash sudo yum install -y https://dl.grafana.com/oss/release/grafana-9.0.0-1.x86_64.rpm systemctl start grafana-server ``` Grafana默认端口为`3000`,访问`http://<Grafana服务器IP>:3000`,初始账号密码为`admin/admin`。 **步骤2.2:添加Prometheus数据源** - 登录Grafana后,依次进入 **Configuration > Data Sources > Add data source**。 - 选择 **Prometheus**,填写URL(如`http://<Prometheus服务器IP>:9090`),点击 **Save & Test** 验证连接[^1]。 --- #### 3. 创建可视化仪表板 **步骤3.1:导入预置仪表板模板** - 访问[Grafana官方仪表板库](https://grafana.com/grafana/dashboards),搜索“Node Exporter Full”(ID:1860)。 - 在Grafana中选择 **Create > Import**,输入模板ID,选择数据源为Prometheus,即可自动生成主机监控仪表板[^1]。 **步骤3.2:手动创建图表(可选)** 1. 进入 **Create Dashboard > Add new panel**。 2. 在查询框中输入PromQL表达式(如CPU使用率:`100 - (avg by (instance) (irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)`)。 3. 设置图表类型(如折线图、仪表盘),调整样式后保存[^3]。 --- #### 4. 验证与访问 - 在Grafana仪表板中查看实时数据,例如: - CPU使用率、内存占用、磁盘IO等指标[^4]。 - 通过Web界面自定义时间范围和图表布局。 --- ### 流程图 ```plaintext 部署node_exporter → 配置Prometheus抓取数据 → 启动Grafana连接数据源 → 创建/导入仪表板 → Web界面展示 ``` ### 注意事项 - **防火墙**:确保Prometheus(9090)、Grafana(3000)、node_exporter(9100)端口开放。 - **数据持久化**:Prometheus默认存储数据15天,长期存储需配置远程存储(如Thanos)。 - **告警配置**:Grafana支持设置阈值告警,或通过Prometheus Alertmanager实现[^2][^5]。 ---
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

橙子园

期待你的鼓励!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值