Linux 一键安装脚本部署prometheus和granfana

180 阅读1分钟

Linux 一键安装脚本部署prometheus和granfana

Linux 一键安装脚本部署prometheus和granfana

 ## 基于shell脚本进行二进制安装prometheus和grafana

#cat prometheus_grafana.sh
#!/bin/bash
#********************************************************************
#Author:        wei
#********************************************************************
. /etc/rc.d/init.d/functions
set -e

Useradd () {
useradd  -s /sbin/nologin -M prometheus
}

Package_install () {

#准备prometheus-2.23.0.linux-amd64.tar.gz 和 grafana-enterprise-7.3.2.linux-amd64.tar.gz
[ -f ./prometheus-2.23.0.linux-amd64.tar.gz ] || wget https://github.com/prometheus/prometheus/archive/refs/tags/v2.23.0.tar.gz

[ -f ./grafana-enterprise-7.3.2.linux-amd64.tar.gz ] || wget https://dl.grafana.com/enterprise/release/grafana-enterprise-7.3.2.linux-amd64.tar.gz

tar xvf prometheus-2.23.0.linux-amd64.tar.gz  -C /data
chown -R prometheus:prometheus /data/prometheus-2.23.0.linux-amd64
echo 'export PATH=/data/prometheus-2.23.0.linux-amd64:$PATH' >> /etc/profile && source /etc/profile
cat > /usr/lib/systemd/system/prometheus.service <<EOF
[Unit]
Description=Prometheus
Documentation=https://prometheus.io/
After=network.target

[Service]
Type=simple
User=prometheus
ExecStart=/data/prometheus-2.23.0.linux-amd64/prometheus --config.file=/data/prometheus-2.23.0.linux-amd64/prometheus.yml --storage.tsdb.path=/data/prometheus-2.23.0.linux-amd64/data
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl restart prometheus
systemctl enable  prometheus

tar -xvf grafana-enterprise-7.3.2.linux-amd64.tar.gz -C  /data

cat > /usr/lib/systemd/system/grafana-server.service <<EOF
[Unit]
Description=Grafana
After=network.target

[Service]
Type=notify
ExecStart=/data/grafana-7.3.2/bin/grafana-server -homepath /data/grafana-7.3.2
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl start grafana-server
systemctl enable  grafana-server
}

Useradd
Package_install && action "prometheus grafana 安装成功"

访问验证

浏览器访问IP:port

 

 

 添加节点监控

监控节点指标

#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-1.3.1.linux-amd64.tar.gz -C /data

#cat << EOF > /usr/lib/systemd/system/node_exporter.service
[Service]
User=prometheus
Group=prometheus
ExecStart=/data/node_exporter-1.3.1.linux-amd64/node_exporter

[Install]
WantedBy=multi-user.target

[Unit]
Description=node_exporter
After=network.target
EOF

#systemctl daemon-reload
#systemctl status node_exporter

添加prometheus.yml配置
#egrep -v '^#|^$|^[ ]+#' /data/prometheus-2.23.0.linux-amd64/prometheus.yml
global:
  scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
alerting:
  alertmanagers:
  - static_configs:
    - targets:
rule_files:
scrape_configs:
  - job_name: 'prometheus'
    static_configs:
    - targets: ['localhost:9090']
  - job_name: 'node'        #添加要监控的主机和端口
    metrics_path: '/metrics'
    static_configs:
    - targets:
      - 'localhost:9090'
      - '10.0.0.117:9100'
      - '10.0.0.127:9100'
      - '10.0.0.137:9100'

官方链接

prometheus.io/download/ grafana.com/grafana/dow… github.com/prometheus/…