#!/bin/bash set -euo pipefail # Version et URLs LOKI_VER="2.9.0" PROMTAIL_VER="2.9.0" LOKI_URL="https://github.com/grafana/loki/releases/download/v${LOKI_VER}/loki-linux-amd64.zip" PROMTAIL_URL="https://github.com/grafana/loki/releases/download/v${PROMTAIL_VER}/promtail-linux-amd64.zip" # Détection Distro et dépendances if [ -f /etc/os-release ]; then . /etc/os-release fi OS_ID=${ID:-debian} sudo apt-get update sudo apt-get install -y curl unzip # Installer Loki sudo mkdir -p /usr/local/bin /etc/loki /var/lib/loki sudo curl -L -o /tmp/loki-linux-amd64.zip "$LOKI_URL" sudo unzip -o /tmp/loki-linux-amd64.zip -d /usr/local/bin sudo bash -lc 'cat > /etc/systemd/system/loki.service </dev/null << 'EOF' auth_enabled: false server: http_listen_port: 3100 grpc_listen_port: 9095 ingester: wal: enabled: true storage_config: boltdb: directory: /var/lib/loki/chunks limits_config: enforce_metric_name: false EOF sudo systemctl daemon-reload sudo systemctl enable loki sudo systemctl start loki # Installer Promtail sudo mkdir -p /usr/local/bin /etc/promtail /var/log/promtail sudo curl -L -o /tmp/promtail-linux-amd64.zip "$PROMTAIL_URL" sudo unzip -o /tmp/promtail-linux-amd64.zip -d /usr/local/bin sudo bash -lc 'cat > /etc/systemd/system/promtail.service </dev/null << 'EOF' server: http_listen_port: 9080 positions: filename: /var/log/promtail/positions.yaml clients: - url: http://localhost:3100/loki/api/v1/push scrape_configs: - job: grafana-logs static_configs: - targets: [localhost] labels: __path__: /home/debian/code/logs/*.log job: logs - job: coffre-logs static_configs: - targets: [localhost] labels: __path__: /home/debian/code/4NK_dev/4NK_node/log/*.log job: coffre_logs EOF sudo systemctl daemon-reload sudo systemctl enable promtail sudo systemctl start promtail # Vérifications simples echo echo "Grafana Loki Promtail local install terminé. Vérifications:" echo " - Grafana: http://localhost:3000" echo " - Loki: http://localhost:3100" echo " - Promtail: service actif (Promtail)"