Updates
This commit is contained in:
19
On host/Node.js.md
Normal file
19
On host/Node.js.md
Normal 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".
|
||||
'''
|
||||
134
Turing Pi/glusterfs-check.sh
Normal file
134
Turing Pi/glusterfs-check.sh
Normal 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 ""
|
||||
Reference in New Issue
Block a user