Je vous propose, à travers quelques exemples, de contrôler simplement le démarrage d’une machine virtuelle sur Virtual Server 2005 grâce à quelques scripts en VBS.
Ces scripts vont seront très utiles pour industrialiser des processus de sauvegardes de vos machines virtuelles.
Rentrons tout de suite dans le vif du sujet, nous n’allons pas nous attarder sur la description des objets déclarés dans les scripts.
Vous voulez du concret non ? Alors allons y …
Démarrer une machine virtuelle
Ce script démarre une machine virtuelle nommée “Windows 2000 Server” localisée sur le serveur sur lequel est exécuté le script:
Set objVS = CreateObject("VirtualServer.Application") Set objVM = objVS.FindVirtualMachine("Windows 2000 Server") objVM.Startup()
Si vous souhaitez pouvoir lancer ce script à distance, par exemple depuis votre station d’administration, il suffit de préciser le nom du serveur Virtual Server lors de la création de l’instance ce qui donne le code suivant:
Set objVS = CreateObject("VirtualServer.Application","Nom_du_server_Virtual_Server_2005") Set objVM = objVS.FindVirtualMachine("Windows 2000 Server") objVM.Startup()
Et si vous souhaitiez démarrer toutes les machines virtuelles d’un serveur ?
Set objVS = CreateObject("VirtualServer.Application","Nom_du_server_Virtual_Server_2005") Set colVMs = objVS.VirtualMachines For Each objVM in colVMS objVM.Startup() Next
Arrêter une machine virtuelle
De la même manière nous pouvons arrêter une machine virtuelle nommée “Windows 2000 Server” grâce à la fonction Turnoff() :
Set objVS = CreateObject("VirtualServer.Application") Set objVM = objVS.FindVirtualMachine("Windows 2000 Server") objVM.Turnoff()
Sauvegarder l’état d’une machine virtuelle
Avant de sauvegarder une machine virtuelle il est fortement recommandé de sauvegarder son état , une sorte de cliché de la machine, grâce à la fonction Save() :
Set objVS = CreateObject("VirtualServer.Application") Set objVM = objVS.FindVirtualMachine("Windows 2000 Server") objVM.Save()
Mettre en pause une machine virtuelle
Il est possible de mettre en pause une machine virtuelle nommée “Windows 2000 Server” grâce à la fonction Pause() :
Set objVS = CreateObject("VirtualServer.Application") Set objVM = objVS.FindVirtualMachine("Windows 2000 Server") objVM.Pause()
Reprendre une machine virtuelle en pause
Il suffit d’utiliser la fonction Resume() pour reprendre une machine virtuelle en pause :
Set objVS = CreateObject("VirtualServer.Application") Set objVM = objVS.FindVirtualMachine("Windows 2000 Server") objVM.Resume()