Serveur http sur OVM server

Comme vous avez pu le remarquer, OVM utilise les protocoles ftp, http, https pour télécharger des templates de VM, booter sur un ISO en mode de virtualisation PVM, …
S’il est possible d’utiliser le serveur OVM Manager lui-même en serveur http pour présenter un iso au serveur OVM, comment faire  dans le cas où, par exemple, il faut déplacer un template depuis un repository local à un serveur OVM vers un autre repository local sur un autre serveur OVM ?
 
 

Les serveurs OVM étant des moteurs Xen, il faut les conserver si possible en l’état sans rajout supplémentaire de packages. Comment faire alors pour les transformer en serveur http et pouvoir facilement télécharger des templates de VM dont les fichiers sont situés dans un repository local (ou non) ?
L’astuce consiste à utiliser ce qui est déjà installé sur le serveur OVM, à savoir le moteur python et ses librairies standards.
Justement, l’une d’entre elle, SimpleHTTPServer, permet de réaliser ce que nous souhaitons.
Pour cela, il faut :

  • se positionner dans un niveau de répertoire permettant de voir les fichiers à télécharger
# cd  /OVS/Repositories/0004fb000003000066b5e28e00cf202c

 

  • Lancer le serveur http
# python -m SimpleHTTPServer 8080

 
 
A partir de maintenant, le contenu du repository OVM est accessible en http.
Utilisons un navigateur internet pou le vérifier.
 

Il est possible maintenant de transférer des VM sous forme de template depuis le repository local d’un serveur vers un autre en utilisant l’interface graphique OVM.

 
Nous allons entrer, par exemple, les informations suivantes qui désignent le fichier de configuration d’une VM, vm.cfg, ainsi que ses disques images.

http://172.16.12.36:8080/VirtualMachines/0004fb00000600005366c0f459239cff/VirtualMachines/0004fb00000600005366c0f459239cff/vm.cfg
http://172.16.12.36:8080/VirtualDisks/0004fb0000120000e500e11533832846.img
http://172.16.12.36:8080/VirtualDisks/0004fb000012000021c619424381ddbf.img

 
Pour cela, ouvrons l’interface graphique d’OVMM pour renseigner ces éléments et déplacer le template vers le nouveau repository.

Voilà, l’opération a été réalisée avec un minimum d’effort et de déploiement !