Projet

Général

Profil

Actions

Evolution #887

ouvert

procédure #886: Documentation du Système de Surveillance et d'Auto-réparation (Monit/M/Monit)

configuration redemarrage automatique du service wildfly test-carthago

Ajouté par Patrick ENGWANG NGUEMA il y a 2 mois. Mis à jour il y a environ 2 mois.

Statut:
Nouveau
Priorité:
Normal
Début:
28 octobre 2025
Echéance:
28 octobre 2025 (En retard de 48 jours)
% réalisé:

100%

Temps estimé:
1:00 h (Total: 2:00 h)

Description

172.20.20.7 → Backend 172.25.1.1).


1. Configuration Monit (Serveur 172.23.2.206)

Cette configuration lie la détection de panne sur le serveur Web 172.20.20.7 à l'exécution du script de redémarrage WildFly.

Fichier : /etc/monit/conf.d/remote_checks.conf

# --- ENVIRONNEMENT TEST (WildFly: 172.25.1.1) ---

check host web_server_7 with address 172.20.20.7
    # Déclencher le script en cas d'échec du check HTTP
    if failed host 172.20.20.7 port 80 protocol http request "/" with timeout 10 seconds
        then exec "/opt/monit_scripts/restart_wildfly_test.sh"

    # Permet de déclencher l'action manuellement depuis M/Monit
    start program = "/opt/monit_scripts/restart_wildfly_test.sh"

2. Configuration SUDOERS (Serveur WildFly 172.25.1.1)

Cette configuration permet à l'utilisateur monit-runner-test d'exécuter la commande de redémarrage WildFly sans mot de passe et sans terminal requis, ce qui est indispensable pour l'automatisation.

Fichier : /etc/sudoers.d/99-monit-runner-test

# Règle pour l'automatisation Monit (TEST)
Defaults:monit-runner-test !requiretty
monit-runner-test ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart wildfly

3. Script de Redémarrage (Serveur 172.23.2.206)

Ce script a été ajusté pour pointer explicitement vers la clé privée (-i) et contourner les caches SSH, résolvant les problèmes de Permission denied en mode non-interactif.

Fichier : /opt/monit_scripts/restart_wildfly_test.sh

#!/bin/bash
# Script: restart_wildfly_test.sh
# Fonction: Redémarre WildFly TEST via SSH (déclenché par la chute de 172.20.20.7)

# --- PARAMÈTRES ---
SERVER_B="172.25.1.1"
SSH_USER="monit-runner-test"
LOGFILE="/var/log/monit/wildfly_restart_test.log"
SSH_KEY="/opt/monit_scripts/.ssh/id_rsa" # Chemin de la clé sécurisé
# ------------------

# Vérification du répertoire de log
mkdir -p /var/log/monit

echo "--------------------------------------------------------" >> ${LOGFILE}
echo "$(date '+%Y-%m-%d %H:%M:%S'): Monit detected TEST web failure. Initiating WildFly restart on ${SERVER_B}." >> ${LOGFILE}

# COMMANDE SSH AVEC CHEMIN DE CLÉ EXPLICITE (-i)
# Les options StrictHostKeyChecking et UserKnownHostsFile sont essentielles pour l'automatisation
ssh -i ${SSH_KEY} -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null ${SSH_USER}@${SERVER_B} "sudo systemctl restart wildfly" >> ${LOGFILE} 2>&1

EXIT_CODE=$?

if [ ${EXIT_CODE} -eq 0 ]; then
    echo "$(date '+%Y-%m-%d %H:%M:%S'): SSH command sent successfully. WildFly TEST should be restarting." >> ${LOGFILE}
else
    echo "$(date '+%Y-%m-%d %H:%M:%S'): ERROR: SSH connection or command FAILED (Exit code: ${EXIT_CODE}). Check SSH keys/firewall." >> ${LOGFILE}
fi

Sous-tâches 1 (1 ouverte0 fermée)

Evolution #923: Script de nettoyage WildFlyNouveauPatrick ENGWANG NGUEMA28 octobre 202528 octobre 2025

Actions

Mis à jour par Patrick ENGWANG NGUEMA il y a 2 mois

  • % réalisé changé de 0 à 100
  • Temps estimé mis à 1:00 h

Mis à jour par Patrick ENGWANG NGUEMA il y a 2 mois

  • Echéance mis à 13 octobre 2025

Mis à jour par Patrick ENGWANG NGUEMA il y a 2 mois

  • Tracker changé de Anomalie à Evolution

Mis à jour par Patrick ENGWANG NGUEMA il y a environ 2 mois

  • Sous-tâches #923 ajouté
Actions

Formats disponibles : Atom PDF