Worst Failover scenario available memory : ".($clmem - $vmmem). " / " .$clmem. " GB";
$pcent = round(($clmem - $vmmem)/$clmem*100);
$pcent_restant = 100 - $pcent;
if($pcent <= 5){
$color = "bg-danger"; $border = "red";
}else{
if($pcent <= 10){
$color = "bg-warning"; $border = "yellow";
}else{
$color = "bg-success"; $border = "green";
}
}
echo "
";
$nbvm = Invoke_Infra("select count(*) as nbvm, sum(memory) as vmmem from cmdb_vms where owner ='".$cluster['node']."' and decomtime is null");
echo '
'.$cluster['node']." - ".$nbvm[0]['nbvm']." VMs ".$cluster['ts']."
";
#Memory
echo "
";
echo "
";
echo "Free Memory : ".($cluster['node_ram'] - 32 - $nbvm[0]['vmmem']). " / " .($cluster['node_ram'] - 32). " GB";
$pcent = round(($cluster['node_ram'] - 32 - $nbvm[0]['vmmem'])/($cluster['node_ram'] - 32)*100);
$pcent_restant = 100 - $pcent;
if($pcent <= 5){
$color = "bg-danger";
}else{
if($pcent <= 10){
$color = "bg-warning";
}else{
$color = "bg-success";
}
}
$progress_bar_height = '25px'; // Hauteur de la barre
$marker_overlap = 5; // Dépassement souhaité en px (haut et bas)
$marker_height = (int)$progress_bar_height + (2 * $marker_overlap); // Hauteur totale du marqueur
$marker_top = -$marker_overlap; // Position top du marqueur
echo "
";
echo "
";
echo "
" ;
echo "
";
#Storage
echo "
";
foreach(explode("|",$cluster['csvs']) as $csv){
if(strpos($csv,";") != false){
echo "
";
echo "" . explode(";",$csv)[0];
$total = explode(";",$csv)[1]; $used = explode(";",$csv)[2]; $free = $total-$used ;
echo " Free : ".$free."/" .$total. " GB";
echo "
";
echo "
";
$pcent = round($free/$total*100);
$pcent_restant = 100 - $pcent;
if($pcent <= 10){
$color = "bg-danger";
}else{
if($pcent <= 20){
$color = "bg-warning";
}else{
$color = "bg-success";
}
}
echo "
";
echo "
";
}else{echo "
";}
}
echo "
";
echo "
";
#VMs
$vms = Invoke_Infra("select * from cmdb_vms where owner ='".$cluster['node']."' and decomtime is null order by name");
foreach($vms as $vm){
echo "
";
echo "
";
$state = ' ';
if($vm['State'] == "Running"){$state = ' ';}
if($vm['State'] == "Off" || $vm['State'] == "Stopping"){$state = ' ';}
if($vm['State'] == "Paused"){$state = ' ';}
if(strpos($vm['Name'],'WS') === 0){
echo $state." ".substr($vm['Name'],0,10)."";
}else{
echo $state." ".$vm['Name']."";
}
echo "
";
echo "
";
echo ''.$vm['Memory'].'GB / '.$vm['CPU'].' CPU ';
if($vm['WWPNs'] != ""){
echo 'LUN(s) ';
}
#echo "
";
#echo "
";
if($vm['IsClustered'] != "True"){
echo 'Unclustered ';
}else{
if($vm['Owner'] != $vm['PreferredOwner']){
echo 'Wrong Owner ';
}
}
echo "
";
echo "
";
echo "
";
echo "
";
}
echo "
";
echo "