mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
newdevice: Added HPE ILO4 storage, memory and additional sensors
* HPE ILO4 enhance Added Storage, Memory pools, new status (Array Controller, Logical Drive) * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Delete hpe.ilo.inc.php
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
mib: CPQHLTH-MIB:CPQIDA-MIB:CPQSTDEQ-MIB
|
||||
mib: CPQHLTH-MIB:CPQIDA-MIB:CPQSTDEQ-MIB:CPQHOST-MIB
|
||||
modules:
|
||||
sensors:
|
||||
power:
|
||||
@@ -89,3 +89,27 @@ modules:
|
||||
- { descr: ok, graph: 1, value: 2, generic: 0 }
|
||||
- { descr: degraded, graph: 1, value: 3, generic: 1 }
|
||||
- { descr: degradedModuleIndexUnknown, graph: 1, value: 4, generic: 1 }
|
||||
-
|
||||
oid: cpqDaCntlrTable
|
||||
value: cpqDaCntlrCondition
|
||||
num_oid: .1.3.6.1.4.1.232.3.2.2.1.1.6.
|
||||
descr: 'Array Controller Slot#{{ $cpqDaCntlrSlot }}'
|
||||
index: 'cpqDaCntlrCondition.{{ $index }}'
|
||||
state_name: cpqDaCntlrCondition
|
||||
states:
|
||||
- { descr: other, graph: 1, value: 1, generic: 3 }
|
||||
- { descr: ok, graph: 1, value: 2, generic: 0 }
|
||||
- { descr: degraded, graph: 1, value: 3, generic: 1 }
|
||||
- { descr: failed, graph: 1, value: 4, generic: 1 }
|
||||
-
|
||||
oid: cpqDaLogDrvTable
|
||||
value: cpqDaLogDrvCondition
|
||||
num_oid: .1.3.6.1.4.1.232.3.2.3.1.1.11.
|
||||
descr: 'Logical Drive #{{ $cpqDaLogDrvIndex }}'
|
||||
index: 'cpqDaLogDrvCondition.{{ $index }}'
|
||||
state_name: cpqDaLogDrvCondition
|
||||
states:
|
||||
- { descr: other, graph: 1, value: 1, generic: 3 }
|
||||
- { descr: ok, graph: 1, value: 2, generic: 0 }
|
||||
- { descr: degraded, graph: 1, value: 3, generic: 1 }
|
||||
- { descr: failed, graph: 1, value: 4, generic: 1 }
|
||||
|
@@ -4,6 +4,7 @@ type: appliance
|
||||
icon: hpe
|
||||
over:
|
||||
- { graph: device_bits, text: Traffic }
|
||||
- { graph: device_mempool, text: 'Memory Usage' }
|
||||
discovery:
|
||||
- sysObjectId:
|
||||
- .1.3.6.1.4.1.232.9.4.10
|
||||
|
28
includes/discovery/mempools/hpe-ilo.inc.php
Normal file
28
includes/discovery/mempools/hpe-ilo.inc.php
Normal file
@@ -0,0 +1,28 @@
|
||||
<?php
|
||||
|
||||
if ($device['os'] == 'hpe-ilo') {
|
||||
echo 'HPE ILO4 ';
|
||||
|
||||
$memory_pool = snmp_get_multi_oid($device, 'cpqHoPhysicalMemoryFree.0 cpqHoPhysicalMemorySize.0 cpqHoPagingMemoryFree.0 cpqHoPagingMemorySize.0', '-OQUs', 'CPQHO
|
||||
ST-MIB');
|
||||
|
||||
$mem_free = $memory_pool['cpqHoPhysicalMemoryFree.0'];
|
||||
$mem_capacity = $memory_pool['cpqHoPhysicalMemorySize.0'];
|
||||
$page_free = $memory_pool['cpqHoPagingMemoryFree.0'];
|
||||
$page_capacity = $memory_pool['cpqHoPagingMemorySize.0'];
|
||||
|
||||
|
||||
if ((is_numeric($mem_free)) && (is_numeric($mem_capacity))) {
|
||||
discover_mempool($valid_mempool, $device, 0, 'hpe-ilo', 'Physical Memory', '1', null, null);
|
||||
}
|
||||
if ((is_numeric($page_free)) && (is_numeric($page_capacity))) {
|
||||
discover_mempool($valid_mempool, $device, 1, 'hpe-ilo', 'Paging Memory', '1', null, null);
|
||||
}
|
||||
}
|
||||
|
||||
unset(
|
||||
$mem_free,
|
||||
$mem_capacity,
|
||||
$page_free,
|
||||
$page_capacity
|
||||
);
|
20
includes/discovery/storage/hpe-ilo.inc.php
Normal file
20
includes/discovery/storage/hpe-ilo.inc.php
Normal file
@@ -0,0 +1,20 @@
|
||||
<?php
|
||||
|
||||
$ilo_storage = snmpwalk_group($device, 'cpqHoFileSysEntry', 'CPQHOST-MIB');
|
||||
$units = 1024*1024;
|
||||
|
||||
if (is_array($ilo_storage)) {
|
||||
echo 'HPE ILO4 ';
|
||||
foreach ($ilo_storage as $index => $storage) {
|
||||
$type = $storage['cpqHoFileSysDesc'];
|
||||
preg_match_all("/\\[:(.*?)\\]/", $type, $matches);
|
||||
$fstype = $matches[1][0];
|
||||
$descr = $storage['cpqHoFileSysDesc'];
|
||||
$size = $storage['cpqHoFileSysSpaceTotal'];
|
||||
$used = $storage['cpqHoFileSysSpaceUsed'];
|
||||
if (is_int($index)) {
|
||||
discover_storage($valid_storage, $device, $index, $fstype, 'hpe-ilo', $descr, $size, $units, $used);
|
||||
}
|
||||
unset($deny, $fstype, $descr, $size, $used, $units, $storage_rrd, $old_storage_rrd, $hrstorage_array);
|
||||
}
|
||||
}
|
29
includes/polling/mempools/hpe-ilo.inc.php
Normal file
29
includes/polling/mempools/hpe-ilo.inc.php
Normal file
@@ -0,0 +1,29 @@
|
||||
<?php
|
||||
|
||||
$data = snmp_get_multi_oid($device, 'cpqHoPhysicalMemorySize.0 cpqHoPhysicalMemoryFree.0 cpqHoPagingMemorySize.0 cpqHoPagingMemoryFree.0', '-OUQs', 'CPQHOST-MIB');
|
||||
$units = 1024*1024;
|
||||
|
||||
if ($mempool['mempool_index'] == 0) {
|
||||
$mem_capacity = $data['cpqHoPhysicalMemorySize.0'];
|
||||
$mem_free = $data['cpqHoPhysicalMemoryFree.0'];
|
||||
|
||||
$mempool['total'] = $mem_capacity*$units;
|
||||
$mempool['free'] = $mem_free*$units;
|
||||
$mempool['used'] = $mempool['total'] - $mempool['free'];
|
||||
}
|
||||
|
||||
if ($mempool['mempool_index'] == 1) {
|
||||
$page_capacity = $data['cpqHoPagingMemorySize.0'];
|
||||
$page_free = $data['cpqHoPagingMemoryFree.0'];
|
||||
|
||||
$mempool['total'] = $page_capacity*$units;
|
||||
$mempool['free'] = $page_free*$units;
|
||||
$mempool['used'] = $mempool['total'] - $mempool['free'];
|
||||
}
|
||||
|
||||
unset(
|
||||
$mem_free,
|
||||
$mem_capacity,
|
||||
$page_free,
|
||||
$page_capacity
|
||||
);
|
14
includes/polling/storage/hpe-ilo.inc.php
Normal file
14
includes/polling/storage/hpe-ilo.inc.php
Normal file
@@ -0,0 +1,14 @@
|
||||
%
|
||||
<?php
|
||||
|
||||
if (!is_array($storage_cache['hpe-ilo'])) {
|
||||
$storage_cache['hpe-ilo'] = snmpwalk_group($device, 'cpqHoFileSysEntry', 'CPQHOST-MIB');
|
||||
echo("HPE ILO4 ");
|
||||
}
|
||||
|
||||
$entry = $storage_cache['hpe-ilo'][$storage[storage_index]];
|
||||
|
||||
$storage['units'] = 1024*1024;
|
||||
$storage['size'] = ($entry['cpqHoFileSysSpaceTotal'] * $storage['units']);
|
||||
$storage['used'] = ($entry['cpqHoFileSysSpaceUsed'] * $storage['units']);
|
||||
$storage['free'] = ($storage['size'] - $storage['used']);
|
Reference in New Issue
Block a user