Powershell Skript: Aruba Virtual Controller

Hinweis: Wir haben in diesem Artikel möglicherweise Provisions-Links verwendet und sie durch (*) gekennzeichnet. Erfolgt über diese Links eine Bestellung, erhält maffert.net eine Provision. Es entstehen für Sie keine Nachteile beim Kauf oder Preis.

Dieser Check liest Model (mit Firmware), IP des virtuellen Controllers, wer ist Master, Anzahl der APs, Anzahl der Netze aus und überprüft ob die festgelegte Anzahl unterschritten wird.

########################################################
# von Tobias Maffert - www.maffert.net - 06.2020
########################################################
# Was macht dieser Check:
# Liest Model, IP des virtuellen Controllers, Master, APs, Netze aus
# Ueberprueft die Anzahl der APs gegen eine vordefinierte Anzhal
#
# Voraussetzungen:
# Erwartet die Eingabe von IP, SNMP Community und Anzahl der APs, z.B.: 192.168.15.100 public 20
# Benoetigt das Powershell Modul SNMP
########################################################

Write-Host "Aruba VC Check 1.2"
Write-Host "____________________________"
Write-Host ""

$ip = $args[0]
$community = $args[1]
$anzahlapsv = $args[2]
$psversion = $PSVersionTable.PSVersion.Major

if($psversion -eq "5")
{} else {
write-host "Fehler: Benoetige Powershell Version 5 - aktuell aktiv ist $psversion!"
exit 2
}

if ($anzahlapsv -eq "" -or $anzahlapsv -like "-logfile" -or !$anzahlapsv){
write-host "Fehler: Kann die Argumente nicht lesen!"
exit 2
}

if (!(Get-Module -ListAvailable -Name SNMP -ErrorAction SilentlyContinue)) {
write-host "Fehler: SNMP Modul fehlt, versuche es zu installieren, bitte Check erneut starten!"
Install-Module SNMP -Force
exit 2
}

[string]$model = (Get-SnmpData -IP $ip -Community $community -OID .1.3.6.1.2.1.1.1.0).Data
write-host "Model: $model"

[string]$vcip = (Get-SnmpData -IP $ip -Community $community -OID .1.3.6.1.4.1.14823.2.3.3.1.1.5.0).Data
write-host "IP des VC: $vcip"

[string]$master = (Get-SnmpData -IP $ip -Community $community -OID .1.3.6.1.4.1.14823.2.3.3.1.1.6.0).Data
[string]$mastern = (Get-SnmpData -IP $ip -Community $community -OID .1.3.6.1.4.1.14823.2.3.3.1.1.2.0).Data
write-host "Master: $master ($mastern)"

[string]$anzahlaps = (Invoke-SnmpWalk -IP $ip -Community $community -OIDStart .1.3.6.1.4.1.14823.2.3.3.1.2.1.1.1).count
[string]$aps = (Invoke-SnmpWalk -IP $ip -Community $community -OIDStart .1.3.6.1.4.1.14823.2.3.3.1.2.1.1.3).data
write-host ""
write-host "Anzahl der APs: $anzahlaps"
write-host "Die APs: $aps"

[string]$anzahln = (Invoke-SnmpWalk -IP $ip -Community $community -OIDStart .1.3.6.1.4.1.14823.2.3.3.1.1.7.1.2).count
[string]$netze = (Invoke-SnmpWalk -IP $ip -Community $community -OIDStart .1.3.6.1.4.1.14823.2.3.3.1.1.7.1.2).data
write-host ""
write-host "Anzahl der Netze: $anzahln"
write-host "Die Netze: $netze"

if ($anzahlaps -lt $anzahlapsv){
write-host ""
write-host "Fehler: Die Anzahl der APs passt nicht, bitte pruefen!"
exit 2
}

exit 0

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert