어지간한 작업은 PowerCLI 를 vCenter쪽에 날려서 해결이 가능한데,
대량 서버 대상으로 ESXcli를 써야만 하는 상황이 오면 가내수공업으로 만들었던 Putty 자동 실행 스크립트를 실행했더랬다.
그런데 굳이 그럴 필요가 없이...
ESXcli를 바로 실행할 수 있었더랬다...
$vcenter
$vcadmin
$vcpw
Get-Module -ListAvailable VMware* | Import-Module
Connect-VIServer -Server $vcenter -User $vcadmin -Password $vcpw
$HostNames = Get-VMHost
$Result = @()
foreach($HostName IN $HostNames)
{
$esxcli = Get-EsxCli -VMHost $HostName -V2
$Hostname.Name
$Result += $esxcli.system.module.list.invoke() | Where Name -EQ "PATTERN"
}
$Result | Export-Csv "C:\TEMP\ModuleCheck.csv" -NoTypeinformation
Disconnect-VIServer -Force
ESXi 상에서 필요한 정보를 패턴과 일치시켜 결과값으로 뽑는 스크립트이고,
당연히 다른 용도로도 무궁무진하게 사용 가능할 예정...