Comment résoudre les problèmes de démontage et de suppression de datastore VMFS lorsque la ressource est en cours d’utilisation

Lorsqu’on tente de supprimer une ancienne banque de données VMFS de vSphere, la tâche peut s’avérer ardue en raison de fichiers résiduels ou des journaux de l’hôte qui pointent encore vers ce stockage. Il arrive qu’on pense avoir tout migré, arrêté toutes les machines virtuelles et libéré l’espace, mais que vSphere continue de considérer la banque de données comme occupée. Croyez-moi, c’est assez courant. Le message d’erreur « système de fichiers occupé » ou « ressource en cours d’utilisation » indique généralement la présence de fichiers cachés ou de journaux encore liés à la banque de données. Dans ce cas, une simple suppression de la banque de données ne suffit pas, car vSphere se bloque. Connaître quelques étapes supplémentaires peut donc permettre de résoudre le problème, surtout si les méthodes standard ne fonctionnent pas. Ce guide présente plusieurs façons de démonter et de supprimer définitivement ces banques de données VMFS récalcitrantes sans risque de perte de données ni de perturbation de la configuration de l’hôte.

Comment résoudre un problème de stockage de données VMFS bloqué dans vSphere

Méthode 1 : Vérifier la présence de journaux persistants et déplacer l’emplacement de travail.

Cette méthode fonctionne si la banque de données est toujours référencée dans les journaux ou les paramètres système de l’hôte ESXi, ce qui peut la maintenir occupée. Commencez par vous connecter directement à l’hôte ESXi via le client vSphere ou SSH, puis vérifiez les valeurs de ScratchConfig. CurrentScratchLocation et Syslog.global.logDir dans les paramètres système avancés. Si elles pointent vers votre banque de données VMFS, les modifier peut libérer des ressources.

  • Accédez à Gérer > Paramètres > Paramètres système avancés
  • Recherchez ScratchConfig. CurrentScratchLocation et Syslog.global.logDir
  • Si l’un des deux chemins pointe vers le datastore VMFS que vous souhaitez supprimer, définissez un nouveau répertoire, par exemple /var/log/esxi

Après avoir modifié l’emplacement des journaux et des fichiers temporaires, redémarrez l’hôte ou au moins le service Syslog Server (via SSH, en exécutant la commande appropriée services.sh restart syslog) etc/init.d/syslog restart. Cela supprimera la référence persistante. Ensuite, réessayez le démontage dans le client vSphere, sous Stockage. Un simple redémarrage de l’hôte suffit parfois à vider le cache et à rendre la banque de données amovible.

Méthode 2 : Suppression manuelle de la partition via SSH

Si les solutions précédentes n’ont pas fonctionné, il est temps d’approfondir la question, mais soyez extrêmement prudent, car la suppression de partitions est une opération risquée. Assurez-vous de supprimer la bonne partition et qu’elle ne contient aucune donnée critique.

  1. Connectez-vous à l’hôte ESXi via SSH (assurez-vous que SSH est activé dans les Services sous Sécurité et utilisateurs ).
  2. Faites correspondre l’UUID de votre banque de données au périphérique de disque :
    esxcfg-scsidevs -c | grep naa.6001438005df0dee0000700004be0000

    et notez à quel disque cela correspond. Vous pouvez également vérifier avec :

    esxcfg-scsidevs -m | grep naa.6001438005df0dee0000700004be0000
  3. Vérifiez l’espace utilisé sur ce datastore avec :
    df -h | grep MSA2000_LUN1
  4. Vérifiez la table de partition sur le disque :
    partedUtil getptbl /vmfs/devices/disks/naa.6001438005df0dee0000700004be0000

    Cela permettra de voir s’il y a une seule partition (probablement VMFS) ou plusieurs.

  5. Si vous voyez une partition avec l’ID 1 qui correspond à VMFS, supprimez-la avec :
    partedUtil delete /vmfs/devices/disks/naa.6001438005df0dee0000700004be0000 1

Cette étape est assez radicale, mais elle supprime directement la partition VMFS du disque. Ensuite, actualisez la vue de stockage dans vSphere et essayez à nouveau de détacher le périphérique. Sur certaines configurations, ce processus déverrouille la banque de données, ce qui permet de la supprimer en toute sécurité sans risque d’erreur.

Attention, cette opération peut effacer la table de partitions ; vérifiez donc bien que vous travaillez sur le bon disque. Une seule erreur et vous risquez de le rendre inutilisable. Mais si vous êtes sûr de vous, cela résout généralement les problèmes de suppression les plus tenaces.

Une fois la partition supprimée, vous devriez pouvoir démonter et supprimer la banque de données normalement. C’est une solution de contournement, mais parfois nécessaire en dernier recours, notamment avec des banques de données anciennes ou mal configurées qui conservent des références à l’hôte.

Résumé

  • Vérifiez et modifiez les paramètres des répertoires temporaires et de journalisation s’ils pointent vers le datastore actif.
  • Redémarrez l’hôte ou le service syslog pour effacer les références.
  • Si nécessaire, utilisez SSH pour faire correspondre les identifiants des périphériques de disque, vérifier les tables de partition et supprimer avec précaution les partitions VMFS.
  • Enfin, démontez et supprimez le datastore dans vSphere.

Conclure

Gérer des datastores VMFS bloqués est agaçant, mais il suffit parfois de traquer les fichiers cachés ou les partitions qui monopolisent le système. Soyez extrêmement prudent avec les commandes SSH, surtout lors de la suppression de partitions : il est facile d’effacer le mauvais disque par inadvertance. Espérons que cela permettra à certains de se débarrasser enfin de ces stockages récalcitrants sans perdre de données importantes. Croisons les doigts pour que cela leur évite bien des heures de frustration !