imirsh

导航

Prometheus 监控系统快速搭建

操作系统为 CentOS 7.6.1810 x86_64, 用到的各相关程序版本如下:

  • Prometheus:v2.16.0
  • node_exporter:v0.18.1
  • grafana:v6.7.2

获取程序包

prometheus 程序包下载地址:https://github.com/prometheus/prometheus/releases
node_export 程序包下载地址:https://github.com/prometheus/node_exporter/releases
grafana 程序包下载地址:https://grafana.com/grafana/download

安装 Prometheus

  1. 解压 文件
~]# useradd -rs /bin/false prometheus
src]# tar -xf prometheus-2.16.0.linux-amd64.tar.gz -C /usr/local/
[root@master src]# cd /usr/local/
[root@master local]# ln -sv prometheus-2.16.0.linux-amd64/ prometheus
[root@master local]# mkdir prometheus/data
local]# chown -R prometheus.prometheus /usr/local/prometheus 
local]# chown -R prometheus.prometheus /usr/local/prometheus-2.16.0.linux-amd64/
  • prometheus.yml:Prometheus的配置文件。这是您将要修改的文件,以调整Prometheus服务器,例如,更改抓取间隔或配置自定义警报。
  • prometheus:Prometheus服务器的二进制文件。这是您要执行的命令,以在Linux机器上启动Prometheus实例。
  • promtool:这是您可以运行以验证Prometheus配置的命令
  1. 配置 prometheus 为服务
~]# cp /usr/local/prometheus/{prometheus,promtool} /usr/local/bin/
~]# chown prometheus:prometheus /usr/local/bin/{prometheus,promtool}
~]# vim /usr/lib/systemd/system/prometheus.service
[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target

[Service]
Type=simple
User=prometheus
Group=prometheus
WorkingDirectory=/usr/local/prometheus/
ExecStart=/usr/local/bin/prometheus \
  --config.file=/usr/local/prometheus/prometheus.yml \
  --storage.tsdb.path=/usr/local/prometheus/data \
  --web.console.templates=/usr/local/prometheus/consoles \
  --web.console.libraries=/usr/local/prometheus/console_libraries \
  --web.listen-address=0.0.0.0:9090 \
  --web.enable-admin-api \
  --web.enable-lifecycle

Restart=always

[Install]
WantedBy=multi-user.target
  1. 启动服务
~]# systemctl daemon-reload
~]# systemctl enable prometheus
~]# systemctl start prometheus

查看日志 ~]# journalctl -f -u prometheus.service, 访问 localhost:9090,如下图所示,即表示 prometheus server 端部署成功

安装 Node Exporter

Node Exporter 可以收集Linux系统上的指标:CPU使用率,内存使用率以及文件系统上的各种统计信息等数据。

  1. 解压文件
src]# tar -xf node_exporter-0.18.1.linux-amd64.tar.gz -C /usr/local/
local]# ln -sv node_exporter-0.18.1.linux-amd64/ node_exporter
~]# chown -R  node_exporter:node_exporter /usr/local/node_exporter
~]# chown -R  node_exporter:node_exporter /usr/local/node_exporter-0.18.1.linux-amd64/
  1. 配置 node_exporter 为服务
~]# vim /usr/lib/systemd/system/node_exporter.service
[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target

[Service]
Type=simple
User=node_exporter
Group=node_exporter
WorkingDirectory=/usr/local/node_exporter/
ExecStart=/usr/local/node_exporter/node_exporter \
    --collector.mountstats \
    --collector.logind \
    --collector.processes \
    --collector.ntp \
    --collector.systemd \
    --collector.tcpstat \
    --collector.wifi

Restart=always

[Install]
WantedBy=multi-user.target
  1. 启动服务
~]# systemctl daemon-reload
~]# systemctl enable node_exporter
~]# systemctl start node_exporter

查看日志确保服务能正常起来 ~]# journalctl -f -u node_exporter.service

配置 Node_exporter 为 Promethe 的目标

新增配置 'localhost:9100' 如下:

~]# vim /usr/local/prometheus/prometheus.yml
    static_configs:
    - targets: ['localhost:9090', 'localhost:9100']

重启 prometheus, 也可用使用 systemctl restart prometheus

~]# curl -X POST http://localhost:9090/-/reload

安装Grafana

src]# yum localinstall ./grafana-6.7.2-1.x86_64.rpm 
~]# systemctl  start grafana-server
~]# systemctl  enable  grafana-server

配置 Grafana

grafana 安装完成后,默认监听的端口是 3000,用户名密码为 admin/admin

  1. 将Prometheus配置为Grafana数据源
  • 通过左侧菜单单击 Configuration > Data sources,转到 Data sources 面板。

  • 点击 Add data source

  • 选择 Prometheus 数据源 然后点击 Select

  • 配置 Prometheus ,确保 Data source is working。如果有证书,则需要使用自签名证书时,请跳过TLS验证。

  1. 导入 Grafana Dashboards 监控Linux指标

granfan 有很多开源的面板,我们可以直接导入到 grafana 使用

  • 将鼠标悬停在 + 图标上,然后单击 Import

  • 在下一个窗口中,只需在相应字段中输入仪表板ID(在本例中为8919,仪表板应由Grafana自动检测

  • 选择 Prometheus 数据源,然后单击 Import

至此,一个完整监控展示完成了。

posted on 2020-07-14 11:31  imirsh  阅读(477)  评论(0编辑  收藏  举报