[prometheus系列] 二进制方式部署prometheus server

添加运行promtheus的用户

useradd -u 8001 -s /sbin/nologin -M prometheus
useradd -u 8002 -s /sbin/nologin -M node_exporter

创建配置,数据相关目录

mkdir /etc/prometheus
mkdir /data/prometheus
chown prometheus:prometheus /etc/prometheus/
chown prometheus:prometheus /data/prometheus/

下载软件包

wget https://github.com/prometheus/prometheus/releases/download/v2.1.0/prometheus-2.1.0.linux-amd64.tar.gz
tar -xf prometheus-2.1.0.linux-amd64.tar.gz 

部署

# 二进制程序部署
cp prometheus-2.1.0.linux-amd64/promtool /usr/local/bin/
cp prometheus-2.1.0.linux-amd64/prometheus /usr/local/bin/
chown  prometheus.prometheus /usr/local/bin/prom*

# 配置部署
cp prometheus-2.1.0.linux-amd64/prometheus.yml /etc/prometheus/
cp -r prometheus-2.1.0.linux-amd64/consoles/ /etc/prometheus/
cp -r prometheus-2.1.0.linux-amd64/console_libraries/ /etc/prometheus/

chown -R prometheus:prometheus /etc/prometheus/

promtheus-systemd脚本

cat >> /usr/lib/systemd/system/prometheus.service << EOF
[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target

[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/usr/local/bin/prometheus \\
    --config.file /etc/prometheus/prometheus.yml \\
    --storage.tsdb.path=/data/prometheus/ \\
    --storage.tsdb.retention=30d \\   
    --web.console.templates=/etc/prometheus/consoles \\
    --web.enable-lifecycle \\
    --web.console.libraries=/etc/prometheus/console_libraries

[Install]
WantedBy=multi-user.target
EOF

systemctl daemon-reload
systemctl enable prometheus

配置prometheus

示例而已

cat /etc/prometheus/prometheus.yml

global:
  scrape_interval:     90s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 90s # Evaluate rules every 15 seconds. The default is every 1 minute.
  scrape_timeout: 15s      # scrape_timeout is set to the global default (10s).
  external_labels:
      monitor: 'lovego-monitor'

rule_files:
  - "/etc/prometheus/rules/*.rules"

scrape_configs:
  - job_name: 'prometheus-server'
    scrape_interval: 60s
    scrape_timeout: 10s
    static_configs:
      - targets: ['10.10.16.7:9090']
        labels:
          instance: prometheus_server

  - job_name: 'node_exporter_prometheus_16_7'
    scrape_interval: 60s
    static_configs:
      - targets: ['10.10.16.7:9093']
        labels:
          instance: node_16_7
          group: common-server
alerting:
  alertmanagers: 
  - scheme: http
    static_configs:
    - targets: ['10.10.16.7:9095']

这只是一个简单的例子
https://github.com/prometheus/prometheus/blob/a51c500e30e96df4026282c8a4f743cf6a8827f1/config/testdata/conf.good.yml

启动服务

]# systemctl start prometheus
]# systemctl status prometheus
● prometheus.service - Prometheus
   Loaded: loaded (/usr/lib/systemd/system/prometheus.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2018-03-01 14:54:39 CST; 5s ago
 Main PID: 19506 (prometheus)

# 访问 http://10.10.16.7:9090/graph
curl -XPOST http://127.0.0.1:9090/-/reload   重新加载配置

猜你喜欢

转载自www.cnblogs.com/knmax/p/9297213.html