文章目录

  • 前言
  • 一、安装Prometheus
  • 1、下载prometheus
  • 2、解压安装、启动
  • 1、解压
  • 2、修改文件夹名字
  • 3、启动
  • 二、安装Node_exporter
  • 1.下载Node_exporter
  • 2.安装Node_exporter
  • 1、解压
  • 2、改文件夹名字
  • 3、启动
  • 4、配置
  • 三、安装alertmanager
  • 1、下载
  • 2、安装
  • 1、解压
  • 2、修改名字
  • 3、启动
  • 4、修改配置文件
  • 四、安装Grafana
  • 1、下载
  • 2、安装
  • 3、启动
  • 4、配置
  • 1、添加数据源
  • 2、添加模板



前言

这里我就不过多介绍Prometheus监控了,可以去官网了解,https://prometheus.io/docs/introduction/overview/

一、安装Prometheus

1、下载prometheus

根据需要下载,这里我们选择linux的版本。下载地址:https://prometheus.io/download/

centos电源监控 centos资源监控平台_centos电源监控

2、解压安装、启动

1、解压

tar -zxvf prometheus-2.26.0.linux-amd64.tar.gz

2、修改文件夹名字

mv prometheus-2.25.0.linux-amd64/ prometheus

3、启动

/usr/local/prometheus/prometheus --config.file="/usr/local/prometheus/prometheus.yml" &

这里我们是将prometheus,放到了/usr/local/下面。prometheus.yml是配置文件。

验证是否成功:访问网址 http://IP:9090/targets ,监控数据汇总成功!

centos电源监控 centos资源监控平台_centos_02


这里为了后续启动方便,可以写一个脚本,或者添加服务,这里以脚本为例

pid=`ps -ef | grep prometheus | grep -v grep | awk '{print $2}'`
kill -9 $pid

nohup /usr/local/prometheus/prometheus >> prometheus.out &

二、安装Node_exporter

1.下载Node_exporter

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

centos电源监控 centos资源监控平台_linux_03

2.安装Node_exporter

1、解压

tar -zxvf node_exporter-1.1.2.linux-amd64.tar.gz

2、改文件夹名字

mv node_exporter-1.1.2.linux-amd64 node_exporter

3、启动

nohup /opt/node_exporter/node_exporter  >> node_exporter.out &

4、配置

安装好Node_exporter之后,需要在prometheus的配置文件中加上去
比如说,你在192.168.9.99上安装了,Node_exporter,需要到/usr/local/prometheus/prometheus.yml配置文件中添加如下信息:

- job_name: 'test-linux'
    static_configs:
    - targets:
      - '192.168.9.99:9100'

job_name 根据情况取名,'192.168.9.99:9100’就是你192.168.9.99的数据接口。

三、安装alertmanager

1、下载

这里我们下载alertmanager-0.21.0.linux-amd64.tar.gz,下载地址是:https://prometheus.io/download/

如下图:

centos电源监控 centos资源监控平台_服务器_04

2、安装

1、解压

tar -zxvf alertmanager-0.21.0.linux-amd64.tar.gz

2、修改名字

mv alertmanager-0.21.0.linux-amd64 alertmanager

3、启动

nohup /usr/local/alertmanager/alertmanager >> alertmanager.out &

这里为了后续方便重启,我们也添加了一个脚本,如下:

pid=`ps -ef | grep alertmanager | grep -v grep | awk '{print $2}'`
kill -9 $pid

nohup /usr/local/alertmanager/alertmanager >> alertmanager.out &

4、修改配置文件

vi /usr/local/prometheus/prometheus.yml

添加如下信息

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

rule_files:
   - "rules/node1_rules.yml"
   - "rules/*.yml"   #添加告警规则

这里是为了让prometheus找到alertmanagers,并且指定告警规则的文件路径
配置好后,接下来配置,rules(告警规则)
添加如下:

#node_exporter节点,是否正常
  - alert: InstanceDown
    expr: up == 0
    for: 10s
    labels:
      severity: critical
    annotations:
      summary: Host {{ $labels.instance }} of {{ $labels.job }} is Down!

#主机内存不足,节点内存已满(剩余<10%)
  - alert: HostOutOfMemory
    expr: node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 < 10
    for: 2m
    labels:
      severity: warning
    annotations:
      summary: Host out of memory (instance {{ $labels.instance }})
      description: "Node memory is filling up (< 10% left)\n  VALUE = {{ $value }}\n  LABELS = {{ $labels }}"

#异常的网络吞吐量,主机网络接口可能接收到太多数据(> 100 MB / s)
  - alert: HostUnusualNetworkThroughputIn
    expr: sum by (instance) (rate(node_network_receive_bytes_total[2m])) / 1024 / 1024 > 100
    for: 5m
    labels:
      severity: warning
    annotations:
      summary: Host unusual network throughput in (instance {{ $labels.instance }})
      description: "Host network interfaces are probably receiving too much data (> 100 MB/s)\n  VALUE = {{ $value }}\n  LABELS = {{ $labels }}"

#异常的网络吞吐量,主机网络接口可能正在发送过多数据(> 100 MB / s)
  - alert: HostUnusualNetworkThroughputOut
    expr: sum by (instance) (rate(node_network_transmit_bytes_total[2m])) / 1024 / 1024 > 100
    for: 5m
    labels:
      severity: warning
    annotations:
      summary: Host unusual network throughput out (instance {{ $labels.instance }})
      description: "Host network interfaces are probably sending too much data (> 100 MB/s)\n  VALUE = {{ $value }}\n  LABELS = {{ $labels }}"

不会写的小伙伴,可以去社区找现成的。参考下面两个网站

https://prometheus.io/docs/alerting/latest/configuration/
https://awesome-prometheus-alerts.grep.to/

四、安装Grafana

1、下载

wget https://dl.grafana.com/oss/release/grafana-7.5.4-1.x86_64.rpm

2、安装

yum install grafana-7.5.4-1.x86_64.rpm

3、启动

systemctl start grafana-server

4、配置

1、添加数据源

centos电源监控 centos资源监控平台_centos电源监控_05

centos电源监控 centos资源监控平台_大数据_06


centos电源监控 centos资源监控平台_centos_07

2、添加模板

按照下图指示操作,导入模板,模板可以去https://grafana.com/grafana/dashboards/找适合自己的。

centos电源监控 centos资源监控平台_centos_08

预览

centos电源监控 centos资源监控平台_大数据_09