# runCommandsOnRemoteComputers.ps1
# User defined variables
$computernames=@(
'SERVER001',
'SERVER002'
)
$expectedExecutable='racadm.exe'
$expectedInstallPath='C:\program files\Dell\SysMgt\iDRACTools\racadm'
# Execution
foreach($computername in $computernames){
invoke-command -computername $computername -scriptblock{
param($expectedInstallPath,$expectedExecutable)
$commandAvailable=try{get-command $expectedExecutable -EA Ignore}catch{$false}
$proceed=if(!$commandAvailable){
$environmentalPathExists=$env:path -like "*$expectedInstallPath*"
if(!$environmentalPathExists){
$env:path+=";$expectedInstallPath"
}
$null=RefreshEnv
$commandNowAvailable=try{get-command $expectedExecutable -EA Ignore}catch{$false}
if($commandNowAvailable){$true}else{$false}
}
if($proceed){
write-host "Configuring iDrac on $env:computername"
racadm set iDRAC.NIC.DNSRacName ($env:computername).tolower()
racadm set iDRAC.NIC.DNSRegister 0
racadm set iDRAC.IPv4.DHCPEnable 1
racadm set iDRAC.IPv4.DNSFromDHCP 1
racadm set iDRAC.NIC.DNSDomainFromDHCP 1
racadm set iDRAC.NIC.VLanEnable 0
}
} -Args $expectedInstallPath,$expectedExecutable
}
July 12, 2022July 12, 2022
0 Comments