## Prometheus Node-Explorer Grafana

## Prometheus docker Install Docker installation apt update && apt upgrade apt install curl curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh docker volume create prometheus-data docker volume create prometheus-conf
docker run \
    -p 9090:9090 \ 
    -v prometheus-data:/prometheus \
    -v prometheus-conf:/etc/prometheus \
    --name prometheus \
    --restart=always
    prom/prometheus:latest   
Wer die Retention Time setzen möchte fügt folgendes hinzu. (Aufbewahrungszeit) --storage.tsdb.retention.time=30d --config.file=/etc/prometheus/prometheus.yml ## Prometheus Konfiguration – prometheus.yml
# 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=` 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"] 
## Node Exporter installieren Ordner erstellen, Node Exporter Download, Entpacken, Ordner öffnen Node Exporter testweise starten

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 

Github Node-Exporter

# Start Skript für Node Exporter
nano /etc/systemd/system/node_exporter.service
[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 
systemctl daemon-reload
systemctl start node_exporter
systemctl enable node_exporter
systemctl status node_exporter
## Node Exporter mit Docker starten (Alternative)
docker run -d \
  --net="host" \
  --pid="host" \
  --name=NOEX \
  --restart=always \
  -v "/:/host:ro,rslave" \
  quay.io/prometheus/node-exporter:latest \
  --path.rootfs=/host
## Grafana Docker installieren
docker run \
	-p 3000:3000 \
	-v grafana-data:/var/lib/grafana \
	--restart=always \
	--name grafana \
	grafana/grafana:latest

Schritt-für-Schritt-Anleitung für die Konfiguration eines Panels:

  1. Einloggen ins Panel:

  2. Navigieren zu Verbindungen:

  3. Neue Verbindung hinzufügen:

  4. Einstellungen für die Verbindung:

  5. Speichern und Testen:

  6. Dashboard-Konfiguration:

Durch das Befolgen dieser Schritte solltest du das Panel erfolgreich konfiguriert haben.