33800 Docs

← Retour

Tâche : AutoFS + Queuing NFS - nginx et gitlab

Date : 18-12-2025 14:11 → 14:20 Status : TERMINÉ


Problème résolu

Quand PVE (192.168.1.10) était coupé, Nginx bloquait car :

  1. Montage NFS hard qui bloque indéfiniment
  2. Logs Nginx étaient un symlink vers /mnt/raidz2/nginx/logs (NFS)

Actions effectuées

nginx.local

  1. Corrigé les logs Nginx : supprimé le symlink, créé /var/log/nginx/ en local
  2. Commenté le NFS dans /etc/fstab
  3. Installé autofs avec montage à la demande :
    • Chemin : /mnt/nfs/raidz2
    • Options : soft,timeo=30 (timeout rapide)
    • Démontage auto après 60s d'inactivité
  4. Installé le système de queuing :
    • Queue : /var/spool/nfs-queue/
    • Commande : send-to-nfs
    • Timer : retry toutes les 5 min

gitlab.local

  1. Démonté le NFS (n'était pas dans fstab)
  2. Installé autofs :
    • Chemin : /mnt/nfs/zfs
    • Options : soft,timeo=30
  3. Installé le système de queuing (identique à nginx)

Utilisation

Accès au NFS (monte automatiquement)

# nginx
ls /mnt/nfs/raidz2/

# gitlab
ls /mnt/nfs/zfs/

Envoyer un fichier avec queue

send-to-nfs /tmp/fichier.txt /mnt/nfs/raidz2/destination/fichier.txt

Voir la queue

ls /var/spool/nfs-queue/

Logs

tail -f /var/log/nfs-sync.log

Fichiers créés

Machine Fichier Description
nginx/gitlab /etc/auto.master Config autofs
nginx/gitlab /etc/auto.nfs Point de montage NFS
nginx/gitlab /usr/local/bin/nfs-sync.sh Script de sync
nginx/gitlab /usr/local/bin/send-to-nfs Commande utilisateur
nginx/gitlab /etc/systemd/system/nfs-sync.service Service systemd
nginx/gitlab /etc/systemd/system/nfs-sync.timer Timer 5 min

Test