ACCUEIL
SISR
CONTEXTES
Stages
- Lycée S. Valadon
-
Epreuves CCF
- Lycée S. Valadon
Epreuves BTS SIO 2011 :
Harmonisation CCF
Portefeuille de compétences professionnelles (Portfolio)
- Lycée S. Valadon
Epreuves BTS SIO 2011 :
Dans ce script on utilisera l'outil curl qui nous permettra de récupérer un jeton d'authentification, jq qui permettra de rendre plus facilement lisibles les informations récupérés et bc qui lui permettra d'avoir des nombres à virgules utiles lors de la conversion des valeurs.
!/bin/bash read -p "Entrez l'hyperviseur (exemple siohyp2) : " hyp read -p "Entrez votre identifiant : " id read -s -p "Entrez votre mot de passe : " passwd jeton=$(curl -k -d "username=$id@Valadon&password=$passwd" https://10.187.36.12:8006/api2/json/access/ticket | jq --raw-output '.data.ticket') curl https://10.187.36.12:8006/api2/json/nodes/$hyp/lxc -k -b "PVEAuthCookie=$jeton" > donnees nb=0 Totrunning=0 Totstopped=0 Totmemmio=0 Totdiskgio=0 for element in $(echo $(<donnees) | jq --raw-output '.data[].name') do echo "valeur de nb : $nb" name=".data[$nb].name" echo "nom : $(echo $(<donnees) | jq --raw-output $name)" vmid=".data[$nb].vmid" echo "VMID : $(echo $(<donnees) | jq --raw-output $vmid)" status=".data[$nb].status" echo "statut de la VM : $(echo $(<donnees) | jq --raw-output $status)" uptime=".data[$nb].uptime" echo "uptime de la VM : $(echo $(<donnees) | jq --raw-output $uptime)" cpus=".data[$nb].cpus" echo "nombre total de cpu(s) : $(echo $(<donnees) | jq --raw-output $cpus)" cpu=".data[$nb].cpu" echo "utilisation du cpu : $(echo $(<donnees) | jq --raw-output $cpu)%" mem=".data[$nb].mem" memoctet=$(echo "$(echo $(<donnees) | jq --raw-output $mem)") memmio=$(echo "scale=2;$memoctet/1024/1024" | bc) echo "utilsation de la memoire : $memmio Mio" maxmem=".data[$nb].maxmem" maxmemoctet=$(echo "$(echo $(<donnees) | jq --raw-output $maxmem)") maxmemmio=$(echo "scale=2;$maxmemoctet/1024/1024" | bc) echo "memoire total de la VM : $maxmemmio Mio" disk=".data[$nb].disk" diskoctet=$(echo "$(echo $(<donnees) | jq --raw-output $disk)") diskgio=$(echo "scale=2;$diskoctet/1024/1024/1024" | bc) echo "stockage utilise par le disque dur : $diskgio Gio" maxdisk=".data[$nb].maxdisk" maxdiskoctet=$(echo "$(echo $(<donnees) | jq --raw-output $maxdisk)") maxdiskgio=$(echo "scale=2;$maxdiskoctet/1024/1024/1024" | bc) echo "capacite totale du disque dur : $maxdiskgio Gio" echo "" ((nb=nb+1)) Totmemmio=`echo "$Totmemmio+$memmio" | bc ` Totdiskgio=`echo "$Totdiskgio+$diskgio" | bc ` if [ $(echo $(<donnees) | jq --raw-output $status) = "running" ] then ((Totrunning=Totrunning+1)) else ((Totstopped=Totstopped+1)) fi done echo "-----------" echo "" echo "Synthese :" echo "Memoire totale utilisee : $Totmemmio Mio , Stockage disque totale utilisee : $Totdiskgio Gio " echo "Nombre de machines totales : $nb, Machine allumee : $Totrunning, Machine eteinte : $Totstopped"
On peut donc voir dans cet exemple que au début de l'exécution du programme des paramètres sont demandés afin de rendre le programme accessible à un maximum de personnes. On peut voir ensuite qu'on a le listage de toutes les VMs avec les infos que l'on souhaitent et avec des valeurs après conversion. Pour finir on a une “synthèse” de l'exécution qui liste les infos importantes comme l'usage totales de la mémoires, le nombre de VMs démarré, etc.
Entrez l'hyperviseur (exemple siohyp2) : siohyp2 Entrez votre identifiant : sio2018 Entrez votre mot de passe : % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1036 100 995 100 41 14420 594 --:--:-- --:--:-- --:--:-- 15014 % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 938 100 938 0 0 2191 0 --:--:-- --:--:-- --:--:-- 2186 valeur de nb : 0 nom : CTDebianhyp2 VMID : 122 statut de la VM : running uptime de la VM : 1191630 nombre total de cpu(s) : 1 utilisation du cpu : 0% utilsation de la memoire : 27.70 Mio memoire total de la VM : 512.00 Mio stockage utilise par le disque dur : .62 Gio capacite totale du disque dur : 7.81 Gio valeur de nb : 1 nom : guerydebian VMID : 119 statut de la VM : running uptime de la VM : 591550 nombre total de cpu(s) : 1 utilisation du cpu : 0.00715672946153439% utilsation de la memoire : 99.02 Mio memoire total de la VM : 512.00 Mio stockage utilise par le disque dur : 1.08 Gio capacite totale du disque dur : 7.81 Gio valeur de nb : 2 nom : DebianCouderchon VMID : 260 statut de la VM : stopped uptime de la VM : 0 nombre total de cpu(s) : 1 utilisation du cpu : 0% utilsation de la memoire : 0 Mio memoire total de la VM : 512.00 Mio stockage utilise par le disque dur : 0 Gio capacite totale du disque dur : 8.00 Gio ----------- Synthese : Memoire totale utilisee : 126.72 Mio , Stockage disque totale utilisee : 1.70 Gio Nombre de machines totales : 3, Machine allumee : 2, Machine eteinte : 1