122 lines
3.0 KiB
Markdown
122 lines
3.0 KiB
Markdown
<p align="center">
|
||
## Prometheus Node-Explorer Grafana
|
||
</p>
|
||
|
||
## Prometheus docker Install
|
||
|
||
Docker installation
|
||
|
||
<code>apt update && apt upgrade
|
||
apt install curl</code>
|
||
|
||
|
||
<code>curl -fsSL https://get.docker.com -o get-docker.sh
|
||
sh get-docker.sh</code>
|
||
|
||
|
||
<code>docker volume create prometheus-data
|
||
docker volume create prometheus-conf</code>
|
||
|
||
|
||
<pre><span>docker run \
|
||
-p 9090:9090 \
|
||
-v prometheus-data:/prometheus \
|
||
-v prometheus-conf:/etc/prometheus \
|
||
--name prometheus \
|
||
--restart=always
|
||
prom/prometheus:latest </pre></span>
|
||
|
||
|
||
Wer die Retention Time setzen möchte fügt folgendes hinzu. (Aufbewahrungszeit)
|
||
|
||
<code>--storage.tsdb.retention.time=30d --config.file=/etc/prometheus/prometheus.yml</code>
|
||
|
||
|
||
Prometheus Konfiguration – prometheus.yml
|
||
|
||
<pre><span># my global config
|
||
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.
|
||
# scrape_timeout is set to the global default (10s).
|
||
|
||
# Alertmanager configuration
|
||
alerting:
|
||
alertmanagers:
|
||
- static_configs:
|
||
- targets:
|
||
# - alertmanager:9093
|
||
|
||
# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
|
||
rule_files:
|
||
# - "first_rules.yml"
|
||
# - "second_rules.yml"
|
||
|
||
# A scrape configuration containing exactly one endpoint to scrape:
|
||
# Here it's Prometheus itself.
|
||
scrape_configs:
|
||
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
|
||
- job_name: "prometheus"
|
||
|
||
# metrics_path defaults to '/metrics'
|
||
# scheme defaults to 'http'.
|
||
|
||
static_configs:
|
||
- targets: ["localhost:9090"]
|
||
|
||
# Weitere Server sind Optional
|
||
|
||
- job_name: "Server-1"
|
||
|
||
static_configs:
|
||
- targets: ["127.0.0.1:9100"]
|
||
|
||
- job_name: "Server-2"
|
||
|
||
static_configs:
|
||
- targets: ["127.0.0.1:9100"]
|
||
|
||
- job_name: "Server-3"
|
||
|
||
static_configs:
|
||
- targets: ["127.0.0.1:9100"]
|
||
</pre></span>
|
||
|
||
|
||
## Node Exporter installieren
|
||
|
||
Ordner erstellen, Node Exporter Download, Entpacken, Ordner öffnen
|
||
Node Exporter testweise starten
|
||
|
||
<pre><span>
|
||
mkdir /opt/node_exporter
|
||
cd /opt/node_exporter
|
||
wget https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz
|
||
tar xvfz node_exporter-1.3.1.linux-amd64.tar.gz
|
||
cd node_exporter-*.*-amd64
|
||
./node_exporter </pre></span>
|
||
|
||
<p><a href="https://github.com/prometheus/node_exporter/releases" target="_blank">Github Node-Exporter</a></p>
|
||
|
||
|
||
Start Skript für Node Exporter
|
||
|
||
<pre>nano /etc/systemd/system/node_exporter.service</pre>
|
||
|
||
<pre><span>
|
||
[Unit]
|
||
Description=Node Exporter
|
||
|
||
[Service]
|
||
User=root
|
||
Group=root
|
||
#EnvironmentFile=-/etc/sysconfig/node_exporter
|
||
ExecStart=/opt/node_exporter/node_exporter-1.3.1.linux-amd64/node_exporter
|
||
|
||
[Install]
|
||
WantedBy=multi-user.target </pre></span>
|
||
|
||
<pre><span>systemctl daemon-reload
|
||
systemctl start node_exporter
|
||
systemctl enable node_exporter
|
||
systemctl status node_exporter</pre></span> |