In questo post creeremo un piccolo script powershell per modificare in maniera massiva la configurazione snmp delle iDrac presenti sui server Dell, torna molto comodo se avete una batteria di qualche decina/centinaia di iDrac da configurare in quanto vi evita di entrare in ogni singola interfaccia web e perdere 5 minuti per ogni iDrac da configurare.
Come prima cosa bisogna scaricare dal sito Dell ed installare il pacchetto che contiene il comando racadm, il pacchetto si chiama “Dell OpenManage DRAC Tools” ed al momento l’ultima versione disponibile è la 8.1.
Abilitate gli script powershell non firmati se non l’avete già fatto con il comando:
set-executionpolicy unrestricted
Di seguito trovate lo script in powershell, quindi create un file .ps1 e copiateci dentro queste righe; ovviamente dovrete impostare i parametri presenti nelle prime righe in base alla vostra confgiurazione ed all’ip delle vostre iDrac:
###POWERSHELL CODE
#Insert all the ip addresses in an array
$aRAC = @(“10.16.27.223″,”10.16.27.224”)$user = “root”
$password = “Pa$$w0rd”
$snmp_dest = “10.16.27.202”
$smtp_server = “mail.domain.com”
$mail_dest = “[email protected]”
$snmp_community = “monitoring”$dns_server1 = “10.16.27.210”
$dns_server2 = “10.16.27.211”
$ntp_server1 = “10.16.27.5”
$ntp_server2 = “10.16.27.6”
foreach ($idrac in $aRAC) {
racadm -r $idrac -u $user -p $password set iDRAC.Tuning.DefaultCredentialWarning Disabled
#DNS Config
write-host “Setup iDrac $idrac DNS…”
racadm -r $idrac -u $user -p $password config -g cfgLanNetworking -o cfgDNSServer1 $dns_server1
racadm -r $idrac -u $user -p $password config -g cfgLanNetworking -o cfgDNSServer2 $dns_server2write-host “Setup iDrac $idrac SNMP…”
racadm -r $idrac -u $user -p $password set idrac.IPMILan.AlertEnable Enabled
racadm -r $idrac -u $user -p $password config -g cfgIpmiPet -o cfgIpmiPetAlertEnable -i 1 1
racadm -r $idrac -u $user -p $password config -g cfgIpmiPet -o cfgIpmiPetAlertDestIPAddr -i 1 $snmp_dest
racadm -r $idrac -u $user -p $password config -g cfgIpmiLan -o cfgIpmiPetCommunityName $snmp_community
racadm -r $idrac -u $user -p $password set iDRAC.SNMP.TrapFormat 1
racadm -r $idrac -u $user -p $password set iDRAC.Snmp.AgentEnable enabled
racadm -r $idrac -u $user -p $password set iDRAC.SNMP.AgentCommunity $snmp_community#Config NTP
write-host “Setup iDrac $idrac NTP…”
racadm -r $idrac -u $user -p $password set idrac.NTPConfigGroup.NTPEnable Enabled
racadm -r $idrac -u $user -p $password set idrac.time.timezone Europe/Rome
racadm -r $idrac -u $user -p $password set idrac.NTPConfigGroup.ntp1 $ntp_server1
racadm -r $idrac -u $user -p $password set idrac.NTPConfigGroup.ntp2 $ntp_server2#write-host “Setup iDrac $idrac SMTP…”
#racadm -r $idrac -u $user -p $password set iDRAC.RemoteHosts.SMTPServerIPAddress $smtp_server
#racadm -r $idrac -u $user -p $password config -g cfgEmailAlert -o cfgEmailAlertEnable -i 1 1
#racadm -r $idrac -u $user -p $password config -g cfgEmailAlert -o cfgEmailAlertAddress -i 1 $mail_dest
}####
P.S.
Ho lasciato commentate le righe che configurano la parte SMTP che potrebbero comunque tornare utili per gli alert, per eseguirle togliete semplicemente il commento ad inizio riga.