Empêcher VMware d'effectuer un COMMIT à l'arrêt d'une VM

Rédigé par kriko - - Aucun commentaire

C'est le piège : quand une VM a été passée en mode REDO à chaud (par la commande vmkfstools addredo), le commit est implicite lors de l'arrêt de la VM ! Ceci peut être très génant si l'on ne veut justement pas conserver les modifications apportées à la VM depuis le passage en mode REDO. Deux méthodes permettent d'empêcher le commit tout en arrêtant la VM :

La méthode brutale :
Faire un ps -eafwww | grep "" et relever tous les process associés à la VM. Voici typiquement le résultat de la commande :

[root@esx29801 root]# ps -eafwww | grep "f098st42.vmx"
UID  PID  PPID C STIME  TTY TIME   CMD
root 9885    1 0 Mar 28 ? 00:15:16 /usr/lib/vmware/bin/vmware-vmx ...
root 9886 9885 0 Mar 28 ? 00:00:18 vmware-mks -A 11 -D 13 -S -L ...
root 9893 9885 0 Mar 28 ? 00:00:00 /usr/lib/vmware/bin/vmware-vmx ...
root 9894 9893 0 Mar 28 ? 01:11:39 /usr/lib/vmware/bin/vmware-vmx ...

Il ne reste plus qu'à faire un kill -9 des PIDs, puis de supprimer le fichier .REDO et le tour est joué

Méthode douce :

Faire un REDO de REDO. Autrement dit repasser une commande vmkfstools addredo. Ceci va créer un fichier .REDO.REDO. Ensuite, arrêter normalement la VM. Le .REDO.REDO est commité dans le .REDO et le fichier .vmdk principal n'est pas affecté. La VM étant arrêté, vous pouvez alors supprimer alors le fichier .REDO restant puis la redémarrer.

Écrire un commentaire

Quelle est la première lettre du mot twgviz ?