Je débute ici une série de six articles traitant des sauvegardes des machines virtuelles sous VMware ESXi.
Cette première partie va présenter les outils mis à disposition par Vmware puis, comment ouvrir l'accès SSH à ESXi, afin de réaliser des sauvegardes depuis la ligne de commande.
Que sauvegarder?
Les fichiers qui composent des machines virtuelles sont principalement de 5 types :
- .vmx : le fichier de configuration de la machine virtuelle,
- .vmdk: le fichier de metadata (c.a.d. configuration) d’un disque virtuel,
- -flat.vmdk: le fichier contenant les données du disque virtuel,
- .vmsn: le fichier de metadata d’un disque de snapshot,
- -delta.vmdk: le fichier contenant les données du snapshot de fichier virtuel.
Dans le cadre d’une sauvegarde de VM, il est avant tout essentiel de sauvegarde les fichiers de disque soit les .vmdk et –flat.vmdk. Selon l’interface que l’on utilise pour se connecter à ESXi les fichiers –flat.vmdk peuvent ou pas être affichés.
Toutes les procédures décrites dans ce document requièrent les droits d’administration sur l’ESXi.
Sauvegarde depuis « Vmware Infrastructure Client »
« Vmware Infrastructure Client » est une interface graphique d’administration de ESXi pour Windows. Elle propose également un module de gestion de datastore avec la possibilité de transferts de fichiers en « upload » et en « download ». Vous pouvez utiliser le bouton « download » pour sauvegarder les fichiers .vmdk. Néanmoins, cette approche manuelle est assez fastidieuse et particulièrement lente.
Depuis l’interface WEB
Esxi dispose également d’une interface WEB pour accéder aux datastore. Elle est accessible depuis l’URL https://IP du server.
Cette approche manuelle est assez fastidieuse et particulièrement lente.
Depuis l’interface SSH
Esxi ne dispose pas d’une interface en ligne de commande à l’OS Linux sous-jacent au moteur de virtualisation. Toutefois, cette fonctionnalité peut être activée mais elle est non documentée et non supportée par Vmware.
Ouvrir l’interface SSH de ESXi
La procédure est décrite ici.
Interagir avec la console SSH de ESXi depuis Windows
Les outils permettant de dialoguer depuis Windows avec la console de ESXi au travers du protocole SSH sont décrits ici.
Accéder aux fichiers de VM depuis la console
Les fichiers qui composent les machines virtuelles sont stockées dans le dossier « /vmfs/volumes ». L’arborescence sous-jacente reprend les noms de datastore. Tous datastores locaux (disques de l’ESXi) ou distants (NFS, iSCSI ou FiberChannel) sont accessibles de façon transparents. Chaque datastore est accessibles depuis deux dossiers : l’un au nom alphanumérique du datastore, l’un avec code interne. En retrouve ensuite dans l’arborescence de chaque datastore, les dossiers au nom de chaque VM. Ce dossier contient tout le fichier de la VM.
Si l’on crée un VM depuis l’assistant, tous les fichiers de la VM sont stockés dans un même datastore, dans un dossier au nom la VM et le nom des disques virtuels de la VM sont de la forme « nom de la VM »*.vmdk.
Copie vers datastore avec « cp »
La commande Linux pour copier le disque virtuel « xp.vmdk » du dossier « xp » sur « datastore1 » vers « datastore2 » est :
cp –v /vmfs/volumes/datastore1/xp/xp.vmdk /vmfs/volumes/datastore2/xp.vmdk
Cette approche est un peu plus complexe à mettre en œuvre que les méthodes de sauvegarde précédentes mais elle semble moins lourde en terme de charge réseau. Par contre, la commande « cp » semble ralentir le fonctionnement de ESXi.
Copie vers datastore avec vmkfstools
Vmware fournit un outil plus efficace que « cp » : vmkfstools.
La commande Linux pour copier le disque virtuel « xp.vmdk » du dossier « xp » sur « datastore1 » vers « datastore2 » est :
vmkfstool –i /vmfs/volumes/datastore1/xp/xp.vmdk /vmfs/volumes/datastore2/xp.vmdk
Cette commande est beaucoup plus respectueuse du fonctionnement de ESXi et ralenti moins les VM.
Copie vers datastore avec vmkfstools (mode « Thin»)
« vmkfstools» dispose d’une option forte intéressante : le mode « Thin». Avec cette option, seuls les secteurs utilisés du disque sont effectivement copiés. Ainsi, si la VM dispose d’un disque de 20Go dont seulement 2Go sont utilisés, la copie ne portera que sur 2Go. Le temps de sauvegarde est considérablement réduit.
La commande Linux pour copier le disque virtuel « xp.vmdk » du dossier « xp » sur « datastore1 » vers « datastore2 » est :
vmkfstool –i /vmfs/volumes/datastore1/xp/xp.vmdk –d thin /vmfs/volumes/datastore2/xp.vmdk
Le fait qu’un disque virtuel soit “Thin” ou “Fat” n’affecte pas le fonctionnement de ESXi qui rapportera toujours la taille du disque “Fat”. Notamment, si votre datastore a une capacité de 100Go, le fait que le disque « xp.vmdk » occupe réellement 2Go pour 20Go déclaré ne permettra pas de créer plus de 5 VM.
SynerGeek.fr Informatique & Veille Technologique







