当前位置:   article > 正文

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

prometheus dashboard
一、简介:

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
  • 1

修改配置文件

vim  /etc/profile
  • 1

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

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

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

source  /etc/profile
  • 1

验证是否安装成功

go  version
  • 1
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/
  • 1
  • 2
  • 3
  • 4
  • 5

查看版本

./prometheus --version
  • 1

配置一下监控的配置文件: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']

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

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

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']
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

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

./prometheus
  • 1

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

cd /usr/lib/systemd/system
  • 1

创建文件

vim prometheus.service
  • 1

添加以下内容:

[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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

使系统文件生效

systemctl daemon-reload
  • 1

启动prometheus服务

systemctl start prometheus
  • 1
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/
  • 1
  • 2
  • 3
  • 4
  • 5

启动node_exporter,指定端口为9077

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

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

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

添加如下内容,指定了端口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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

让配置生效

systemctl daemon-reload
  • 1

启动node_exporter服务

systemctl start node_exporter
  • 1

各服务器工作节点都启动成功后可以在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
  • 1

root用户安装

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

启动grafana服务

systemctl start grafana-server.service
  • 1

查看服务状态

systemctl status grafana-server.service
  • 1

在这里插入图片描述

访问ui地址:

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

在这里插入图片描述
初次登录默认用户密码都是: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,以后登入就可以看到:
在这里插入图片描述
完成了!点个赞再走吧。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Li_阴宅/article/detail/787456
推荐阅读
相关标签
  

闽ICP备14008679号