Start with something like this
$clusterName = 'cluster'Get-Cluster -Name $clusterName | Get-VMHost |
ForEach-Object -Process {
$esxcli = Get-EsxCli -VMHost $_ -V2
$esxcli.system.module.list.Invoke() |
where{$_.Name -match "qfle3f"} |
Select @{N='VMHost';E={$esxcli.VMHost.Name}},
Name,IsLoaded,IsEnabled
}
To limit to specific HW models you can filter the Get-VMHost with a Where-clause.
Since I don't have access to that type of HW, you would need to find the values with a Get-VMHost.
You could that with
Get-VMHost | Select Name
,Model
The concept would work like this.
$clusterName = 'cluster'$modelName = '<targetted-model>'
Get-Cluster -Name $clusterName | Get-VMHost |
where{$_.Model -eq $modelName} |
ForEach-Object -Process {
$esxcli = Get-EsxCli -VMHost $_ -V2
$esxcli.system.module.list.Invoke() |
where{$_.Name -match "qfle3f"} |
Select @{N='VMHost';E={$esxcli.VMHost.Name}},
Name,IsLoaded,IsEnabled
}