Thats great LucD, here is my final version. Thanks alot for your help! $vcs = (Get-Content C:\temp\ITScript\vSphere\vcs.txt)
$clusters = (Get-Content C:\temp\ITScript\vSphere\scmclust...
See more...
Thats great LucD, here is my final version. Thanks alot for your help! $vcs = (Get-Content C:\temp\ITScript\vSphere\vcs.txt)
$clusters = (Get-Content C:\temp\ITScript\vSphere\scmclusters.txt)
foreach ($vc in $vcs) {
Connect-VIServer $vc
Get-Cluster -Name $clusters -ErrorAction SilentlyContinue -PipelineVariable cluster |
Get-VMHost -PipelineVariable esx |
Get-VMHostNetworkAdapter -VMKernel -PipelineVariable vmk |
ForEach-Object -Process {
$esxcli = Get-EsxCli -VMHost $esx -V2
$if = $esxcli.network.ip.interface.ipv4.get.Invoke(@{interfacename = $vmk.Name })
$stack = $vmk.ExtensionData.Spec.NetStackInstanceKey
$dns = Get-VMHostNetworkStack -VMHost $esx -Name $stack
$ip6enabled = Get-VMHostNetwork -VMHost $esx | Select-Object IPv6Enabled
New-Object -TypeName PSObject -Property ([ordered]@{
vCenter = ([uri]$esx.ExtensionData.Client.ServiceUrl).Host
Cluster = $cluster.Name
Hostname = $esx.Name
Device = $vmk.Name
DeviceIP = $if.IPv4Address
DeviceMask = $if.IPv4Netmask
Gateway = $if.Gateway
DnsAddress = $dns.DnsAddress -join ','
NTP = (Get-VMHostNtpServer -VMHost $esx) -join ', '
PortGroup = $vmk.PortGroupName
DNSSearchDomain = $dns.DnsSearchDomain -join '.'
IP6enabled = $ip6enabled.IPv6Enabled -join '.'
})
} | Export-Csv -Append C:\temp\VMK1GW-Output.csv
Disconnect-VIServer -Server * -Confirm:$false
}