This commit is contained in:
2025-09-24 11:59:02 +02:00
parent b4d20a6063
commit c289c17200
2 changed files with 153 additions and 0 deletions

19
On host/Node.js.md Normal file
View File

@@ -0,0 +1,19 @@
### Download Node.js®
'''
# Download and install nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
# in lieu of restarting the shell
\. "$HOME/.nvm/nvm.sh"
# Download and install Node.js:
nvm install 22
# Verify the Node.js version:
node -v # Should print "v22.19.0".
nvm current # Should print "v22.19.0".
# Verify npm version:
npm -v # Should print "10.9.3".
'''

View File

@@ -0,0 +1,134 @@
#!/bin/bash
LOG_FILE="/var/log/glusterfs-check.log"
STEPS=7 # Nombre total d'étapes dans le script
# Supprimer les anciens logs
if [ -f "$LOG_FILE" ]; then
rm "$LOG_FILE"
fi
# Fonction de journalisation
log() {
echo "$(date) : $1" >> $LOG_FILE
}
# Fonction de progression
progress() {
local step=$1
local total=$2
local percent=$(( 100 * step / total ))
echo -ne "Progress: [${percent}%]...\r"
}
step=1
log "Script de vérification GlusterFS démarré."
progress $step $STEPS
# Vérification de l'état du service glusterd
if ! systemctl is-active --quiet glusterd; then
log "Le service glusterd n'est pas actif. Tentative de démarrage."
sudo systemctl start glusterd
if ! systemctl is-active --quiet glusterd; then
log "Échec du démarrage du service glusterd."
exit 1
else
log "Service glusterd démarré avec succès."
fi
else
log "Le service glusterd est déjà actif."
fi
step=$((step + 1))
progress $step $STEPS
# Vérification de l'état des pairs GlusterFS
peers_status=$(sudo gluster peer status | grep "Peer in Cluster" | wc -l)
if [ "$peers_status" -ne 2 ]; then
log "Tous les pairs ne sont pas en ligne. Tentative de reconnexion des pairs."
# Ajout des adresses IP de vos pairs
peers=("192.168.1.50" "192.168.1.80" "192.168.1.110")
for peer in "${peers[@]}"; do
sudo gluster peer probe $peer
done
# Revérification de l'état des pairs
peers_status=$(sudo gluster peer status | grep "Peer in Cluster" | wc -l)
if [ "$peers_status" -ne 2]; then
log "Échec de la reconnexion de tous les pairs."
exit 1
else
log "Tous les pairs sont maintenant en ligne."
fi
else
log "Tous les pairs sont en ligne."
fi
step=$((step + 1))
progress $step $STEPS
# Vérification de l'état du volume
volume_status=$(sudo gluster volume info volume_applicatif | grep "Status: Started" | wc -l)
if [ "$volume_status" -ne 1]; then
log "Le volume volume_applicatif n'est pas démarré. Tentative de démarrage."
sudo gluster volume start volume_applicatif
if [ "$?" -ne 0 ]; then
log "Échec du démarrage du volume volume_applicatif."
exit 1
else
log "Volume volume_applicatif démarré avec succès."
fi
else
log "Le volume volume_applicatif est déjà démarré."
fi
step=$((step + 1))
progress $step $STEPS
# Vérification des briques du volume
brick_status=$(sudo gluster volume status volume_applicatif detail | grep "N/A" | wc -l)
if [ "$brick_status" -ne 0 ]; then
log "Certaines briques du volume volume_applicatif ne sont pas en ligne."
# Tentative de remonter les briques
sudo gluster volume heal volume_applicatif
fi
step=$((step + 1))
progress $step $STEPS
# Vérification du montage des volumes
if mountpoint -q /mnt/montage_applicatif; then
log "Le volume GlusterFS est déjà monté."
else
log "Tentative de montage du volume GlusterFS."
sudo mount -t glusterfs 192.168.1.50:/volume_applicatif /mnt/montage_applicatif
if [ "$?" -ne 0 ]; then
log "Échec du montage des volumes GlusterFS. Tentative de diagnostic."
# Diagnostic supplémentaire
mount_output=$(sudo mount -t glusterfs 192.168.1.50:/volume_applicatif /mnt/montage_applicatif 2>&1)
log "Sortie de la commande de montage : $mount_output"
# Vérification de l'accès au volume
glusterfs_output=$(sudo gluster volume status volume_applicatif 2>&1)
log "Statut du volume GlusterFS : $glusterfs_output"
exit 1
else
log "Volumes GlusterFS montés avec succès."
fi
fi
step=$((step + 1))
progress $step $STEPS
log "Script de vérification GlusterFS terminé avec succès."
progress $STEPS $STEPS
echo ""