Enhance PVE scripts and conf
This commit is contained in:
parent
29fe3a445d
commit
a9bc0f7f54
|
@ -1,10 +1,10 @@
|
|||
# Discover PVE items
|
||||
# $1 can be nodes, guests, storage or pools
|
||||
UserParameter=pve.discovery[*],/usr/bin/sudo /var/lib/zabbix/bin/disco_pve_sudo --what=$1
|
||||
UserParameter=pve.discovery[*],/usr/bin/sudo /var/lib/zabbix/bin/disco_pve_sudo --what $1
|
||||
|
||||
# Type: Agent or Agent (active)
|
||||
# pve.check.all[type,id]
|
||||
# Where type is what to monitor (pool, storage, node, cluster, guest)
|
||||
# id is the id of the item to monitor. For a guest, it's his numerical ID, for a storage
|
||||
# a node or a pool, its name. For the cluster, there's no ID
|
||||
UserParameter=pve.check.all[*],/usr/bin/sudo /var/lib/zabbix/bin/check_pve_sudo --$1=$2
|
||||
UserParameter=pve.check.all[*],/usr/bin/sudo /var/lib/zabbix/bin/check_pve_sudo --$1 $2
|
||||
|
|
|
@ -37,7 +37,7 @@ if ($cluster){
|
|||
my $guests = from_json(qx($pvesh get /cluster/resources --type=vm 2>/dev/null));
|
||||
foreach my $g (@{$guests}){
|
||||
if ($g->{vmid} eq $guest){
|
||||
$json = from_json(qx($pvesh get /nodes/$g->{node}/$g->{type}/$guest/status/current 2>/dev/null));
|
||||
$json = $g;
|
||||
last;
|
||||
}
|
||||
}
|
||||
|
@ -57,6 +57,21 @@ if ($cluster){
|
|||
$json->{templates}->{$item->{type}}++;
|
||||
}
|
||||
}
|
||||
$json->{guests}->{$_} //= 0 foreach (qw(cpu maxcpu diskread diskwrite maxdisk mem maxmem netin netout));
|
||||
$json->{templates}->{$_} //= 0 foreach (qw(maxdisk));
|
||||
} elsif ($storage){
|
||||
$json = from_json(qx($pvesh get /storage/$storage 2>/dev/null));
|
||||
my $stores = from_json(qx($pvesh get /cluster/resources --type=storage 2>/dev/null));
|
||||
foreach my $s (@{$stores}){
|
||||
if ($s->{storage} eq $storage){
|
||||
$json->{maxdisk} = $s->{maxdisk};
|
||||
$json->{disk} = $s->{disk};
|
||||
last;
|
||||
}
|
||||
}
|
||||
} else{
|
||||
print 'ZBX_UNSUPORTED';
|
||||
exit 0;
|
||||
}
|
||||
|
||||
print to_json($json, { pretty => $pretty }) . "\n";
|
||||
|
|
Loading…
Reference in New Issue