28/10
This commit is contained in:
parent
cd22fdac81
commit
69e72fff97
@ -0,0 +1,42 @@
|
||||
#!/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..."
|
||||
#sudo -i
|
||||
cd ~/observability
|
||||
|
||||
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."
|
||||
|
||||
@ -0,0 +1,104 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
# Variables
|
||||
APACHE_EXPORTER_VERSION="1.0.10"
|
||||
PROMTAIL_VERSION="2.9.0"
|
||||
PROMTAIL_CONFIG="/etc/promtail-config.yaml"
|
||||
LOKI_URL="http://192.168.56.20:3100/loki/api/v1/push"
|
||||
|
||||
echo "=== Installation des dépendances ==="
|
||||
sudo apt update
|
||||
sudo apt install -y wget unzip apache2
|
||||
|
||||
echo "=== Installation et configuration de apache_exporter ==="
|
||||
cd /opt
|
||||
wget https://github.com/Lusitaniae/apache_exporter/releases/download/v${APACHE_EXPORTER_VERSION}/apache_exporter-${APACHE_EXPORTER_VERSION}.linux-amd64.tar.gz
|
||||
tar -xvf apache_exporter-${APACHE_EXPORTER_VERSION}.linux-amd64.tar.gz
|
||||
sudo mv apache_exporter-${APACHE_EXPORTER_VERSION}.linux-amd64/apache_exporter /usr/local/bin/
|
||||
|
||||
# Création du service systemd pour apache_exporter
|
||||
sudo tee /etc/systemd/system/apache_exporter.service > /dev/null <<EOL
|
||||
[Unit]
|
||||
Description=Prometheus Apache Exporter
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
User=root
|
||||
ExecStart=/usr/local/bin/apache_exporter --scrape_uri="http://localhost/server-status?auto"
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOL
|
||||
|
||||
echo "=== Activation du module status d'Apache ==="
|
||||
sudo a2enmod status
|
||||
sudo systemctl restart apache2
|
||||
|
||||
echo "=== Démarrage du service apache_exporter ==="
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl enable apache_exporter
|
||||
sudo systemctl start apache_exporter
|
||||
sudo systemctl status apache_exporter --no-pager
|
||||
|
||||
echo "=== Installation et configuration de Promtail ==="
|
||||
cd /opt
|
||||
wget https://github.com/grafana/loki/releases/download/v${PROMTAIL_VERSION}/promtail-linux-amd64.zip
|
||||
unzip promtail-linux-amd64.zip
|
||||
sudo mv promtail-linux-amd64 /usr/local/bin/promtail
|
||||
sudo chmod +x /usr/local/bin/promtail
|
||||
|
||||
# Création du fichier de configuration Promtail
|
||||
sudo tee ${PROMTAIL_CONFIG} > /dev/null <<EOL
|
||||
server:
|
||||
http_listen_port: 9080
|
||||
grpc_listen_port: 0
|
||||
|
||||
positions:
|
||||
filename: /var/log/promtail-positions.yaml
|
||||
|
||||
clients:
|
||||
- url: ${LOKI_URL}
|
||||
|
||||
scrape_configs:
|
||||
- job_name: apache_access
|
||||
static_configs:
|
||||
- targets: ['localhost']
|
||||
labels:
|
||||
job: apache_access
|
||||
host: apache_vm
|
||||
__path__: /var/log/apache2/access.log
|
||||
|
||||
- job_name: apache_error
|
||||
static_configs:
|
||||
- targets: ['localhost']
|
||||
labels:
|
||||
job: apache_error
|
||||
host: apache_vm
|
||||
__path__: /var/log/apache2/error.log
|
||||
EOL
|
||||
|
||||
# Création du service systemd pour Promtail
|
||||
sudo tee /etc/systemd/system/promtail.service > /dev/null <<EOL
|
||||
[Unit]
|
||||
Description=Promtail service for Apache logs
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
User=root
|
||||
ExecStart=/usr/local/bin/promtail -config.file ${PROMTAIL_CONFIG}
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOL
|
||||
|
||||
echo "=== Démarrage du service Promtail ==="
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl enable promtail
|
||||
sudo systemctl start promtail
|
||||
sudo systemctl status promtail --no-pager
|
||||
|
||||
echo "=== Installation terminée ==="
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user