Xen et vserver : monitoring des VM sur une page PHP
From Deimos.fr / Bloc Notes Informatique
Contents
1 Introduction
J'ai eu recours à ce genre de script car il est plus simple d'ouvrir une petite page web pour voir l'activiter des VM plutôt que de lancer tout un tas de commandes.
2 Sudo
Il faut avoir besoin de sudo car apache par défaut n'a pas les droits nécessaire pour exécuter les commandes :
apt-get install sudo
Editez ensuite /etc/sudoers et rajoutez ceci : www-data ALL=NOPASSWD: /usr/sbin/vserver-stat,/usr/sbin/xm list
3 Php et script
Il faut évidement avoir apache et php d'installer pour que ceci fonctionne :
apt-get install apache2 php5
De plus, il y a un petit java script qui permet de rafraichir la page toutes les 60 secondes.
Ensuite créez par exemple un dossier et copiez ceci dans un index :
mkdir /var/www/virtual && vi /var/www/virtual/index.php
Voici le contenu de l'index.php :
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <script language="javascript" type="text/javascript">setTimeout("location.reload();",600000);</script> <head> <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"> <title>Informations for Virtual Machines</title> </head> <body> <?php system("date +%c") ; echo("<BR><BR>--- Vservers informations ---<BR>") ; echo("<syntaxhighlight lang=text>\n") ; system("sudo /usr/sbin/vserver-stat") ; echo("</syntaxhighlight>\n") ; echo("<BR>") ; echo("--- Xen informations ---<BR>") ; echo("<syntaxhighlight lang=text>\n") ; system("sudo /usr/sbin/xm list") ; echo("</syntaxhighlight>") ; ?> </body> </html>
On met ensuite les bons droits :
chown -Rf www-data. /var/www/virtual
Il ne reste plus qu'à y accéder :-)