Compare commits

..

2 Commits

Author SHA1 Message Date
edcc697405 16/10 2025-10-16 12:54:06 +02:00
9fd9083cfc 10/10 2025-10-10 14:49:50 +02:00
19 changed files with 205 additions and 0 deletions

View File

@ -0,0 +1,41 @@
#!/bin/bash
echo "Mise à jour du système..."
sudo apt-get update && sudo apt-get upgrade -y
echo "Installation des dépendances nécessaires..."
sudo apt-get install ca-certificates curl gnupg lsb-release -y
echo "Ajout de la clé GPG officielle de Docker..."
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "Ajout du dépôt Docker à la liste des sources APT..."
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian bullseye stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
echo "Mise à jour des dépôts..."
sudo apt-get update
echo "Installation de Docker..."
sudo apt-get install docker-ce docker-ce-cli containerd.io -y
echo "Ajout de l'utilisateur actuel au groupe Docker..."
#sudo usermod -aG docker $USER
echo "Copie du dossier 'observability' vers /root..."
sudo cp -r /vagrant/observability /root
echo "Déplacement dans le dossier observability..."
cd /root/observability || { echo "Échec : dossier introuvable."; exit 1; }
echo "Modification des permissions des dossiers Loki..."
sudo chown -R 10001:10001 loki-wal loki-chunks loki-index
echo "Vérification des fichiers Loki..."
ls -la | grep loki
echo "Lancement des conteneurs Docker avec Docker Compose..."
sudo docker compose up -d
echo "Installation terminée avec succès."

View File

@ -0,0 +1,47 @@
Voici un tutoriel clair et structuré basé sur les étapes pour lancer installation de l'observabilite:
a) Installer Docker sous Debian (bullseye),
b) Déplacer un dossier vers /root et changer les droits,
c) Lancer Docker Compose en tant que root.
-------------------------------------------------------
# Mettre à jour le système
sudo apt-get update && sudo apt-get upgrade -y
# Installer les dépendances nécessaires
sudo apt-get install ca-certificates curl gnupg lsb-release -y
# Ajouter la clé GPG officielle de Docker
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# Ajouter le dépôt Docker à APT
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian bullseye stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Mettre à jour les dépôts et installer Docker
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io -y
# Ajouter l'utilisateur courant au groupe docker (optionnel)
sudo usermod -aG docker $USER
-------------------------------------------------------
# Copier le dossier "observability" dans /root
sudo cp -r /vagrant/observability /root
# Aller dans le dossier observability copié
cd /root/observability
# Changer le propriétaire des dossiers de données Loki (remplace par le bon chemin si nécessaire)
sudo chown -R 10001:10001 loki-wal loki-chunks loki-index
# Vérifier les permissions
ls -la | grep loki
docker compose up
docker compose up -d (-d pour lancer en arrière-plan)
-------------------------------------------------------

View File

@ -0,0 +1,55 @@
version: "3.8"
services:
prometheus:
image: prom/prometheus:latest
container_name: prometheus-observability
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
command:
- '--config.file=/etc/prometheus/prometheus.yml'
ports:
- "9090:9090"
networks:
- observability
grafana:
image: grafana/grafana:latest
container_name: grafana-observability
ports:
- "3000:3000"
volumes:
- grafana-data:/var/lib/grafana
environment:
- GF_SECURITY_ADMIN_USER=admin
- GF_SECURITY_ADMIN_PASSWORD=admin
networks:
- observability
depends_on:
- loki
loki:
image: grafana/loki:2.8.2
container_name: loki-observability
ports:
- "3100:3100"
command: -config.file=/etc/loki/local-config.yaml
volumes:
- ./loki-config.yaml:/etc/loki/local-config.yaml
- ./loki-wal:/wal
- ./loki-chunks:/loki/chunks
- ./loki-index:/loki/index
networks:
- observability
promtail:
image: grafana/promtail:2.8.2
container_name: promtail-observability
volumes:
- ./promtail-config.yaml:/etc/promtail/config.yaml
- /var/lib/docker/containers:/var/lib/docker/containers:ro
command:
- -config.file=/etc/promtail/config.yaml
networks:
- observability
volumes:
grafana-data:
networks:
observability:
driver: bridge

View File

@ -0,0 +1 @@
{"UID":"714e0dc1-bca9-44e1-aca6-110f8b49de5c","created_at":"2025-09-29T13:46:47.834317171Z","version":{"version":"2.8.2","revision":"9f809eda7","branch":"HEAD","buildUser":"root@e401cfcb874f","buildDate":"2023-05-03T11:07:54Z","goVersion":"go1.20.4"}}

View File

@ -0,0 +1,35 @@
auth_enabled: false
server:
http_listen_port: 3100
ingester:
lifecycler:
address: 127.0.0.1
ring:
kvstore:
store: inmemory
chunk_idle_period: 5m
chunk_target_size: 1048576
max_transfer_retries: 0
schema_config:
configs:
- from: 2020-10-24
store: boltdb
object_store: filesystem
schema: v11
index:
prefix: index_
period: 168h
storage_config:
boltdb:
directory: /loki/index
filesystem:
directory: /loki/chunks
limits_config:
enforce_metric_name: false
reject_old_samples: true
reject_old_samples_max_age: 168h

View File

@ -0,0 +1,7 @@
global:
scrape_interval: 15s
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']

View File

@ -0,0 +1,19 @@
server:
http_listen_port: 9080
grpc_listen_port: 0
positions:
filename: /tmp/positions.yaml
clients:
- url: http://loki:3100/loki/api/v1/push
scrape_configs:
- job_name: docker_logs
static_configs:
- targets:
- localhost
labels:
job: docker
__path__: /var/lib/docker/containers/*/*.log