VMware,在CSV文件上输出网络运行状况检查



我有一个脚本,它运行得很好,一切都显示在我的电源外壳屏幕"控制台"上。但我试图弄清楚如何在CSV 中导出

脚本:

foreach(Get-VDSwitch中的$vds({$vds。扩展数据。运行时。HostMemberRuntime |%{$。HealthCheckResult |其中{$-是[VMware.Vim.VMwareDVSVlanHealthCheckResult]}|选择@{N="vdSwitch";E={$vds.Name}},UplinkPortKey,@{N='RunkedVLAN';E={($.TrunkedVLAN|%{if($.Start-eq$.End({"{0}"-f$。开始}其他{"{0}-{1} "-f$。开始,$。结束}})-加入",">
}}}

}

屏幕上的输出如下所示

VsanEnabled:FalseVsanDiskClaimMode:手动HATotalSlots:3099HAUsedSlot:22HA可用插槽:1527HASlotCpuMHz:32HASlotMemoryMb:328HASlotMemoryGB:0.3203125HASlotNumVCpus:1ParentId:文件夹组-h28ParentFolder:主机HAEnabled:TrueHAAdmissionControlEnabled:TrueHA故障转移级别:1HARestartPriority:中等HAIsolationResponse:DoNothingVM交换文件策略:使用VMDrsEnabled:TrueDrsMode:完全自动DrsAutomationLevel:FullyAutomatiedEVC代码:intel nehalem名称:mac01dmzp01自定义字段:{}扩展数据:VMware。Vim。ClusterComputeResourceId:ClusterComputeResource-domain-c12033Uid:/VIServer=cn\t175726@mac01vcp02.cn.ca:443/Cluster=ClusterComputeResource-domain-c12033/

vdSwitch:vds-toronto-mac01-2-ports-10Gbe上行端口密钥:78集群VLAN:11-17396500

vdSwitch:vds-toronto-mac01-2-ports-10Gbe上行端口密钥:79集群VLAN:11-17396500

vdSwitch:vds-toronto-mac01-2-ports-10Gbe上行端口密钥:82集群VLAN:11-17396500

vdSwitch:vds-toronto-mac01-2-ports-10Gbe上行端口密钥:83集群VLAN:11-17396500

vdSwitch:vds-toronto-mac01-2-ports-10Gbe上行端口密钥:358集群VLAN:11-17396500

vdSwitch:vds-toronto-mac01-2-ports-10Gbe上行端口密钥:359集群VLAN:11-17396500

更多。。。。。。

我找到了实现这一点的方法,那就是使用一个函数。

#####################################################
#  vSphere 6.5
#  Get ESX HealthCheck Network Config from VDS
#
#  by Gerald Begin (Nov.20 2018)
#################################
##### Set Script Location
Set-Location T:___Main-Script____VDS-vLANs_
##### Add VMWare Module.
Get-Module -Name VMware* -ListAvailable | Import-Module
##### Output Path
$Desti = 'T:___Main-Script____VDS-vLANs_Output'
Import-Module -Name "T:__Script_Functions__Connect2All.ps1" -Force:$true      # Function to Connect to ALL vCenters
$Clster = "mac01dmzp01"
#### --------------------------------------
function GetInfo  {
###################################################
foreach($vds in Get-VDSwitch)
{
$vds.ExtensionData.Runtime.HostMemberRuntime | %{
$_.HealthCheckResult | where{$_ -is [VMware.Vim.VMwareDVSVlanHealthCheckResult]} |
Select @{N='vdSwitch';E={$vds.Name}},
UplinkPortKey,
@{N='TrunkedVLAN';E={
($_.TrunkedVLAN | %{
if($_.Start -eq $_.End){
"{0}" -f $_.Start
}
else{
"{0}-{1}" -f $_.Start,$_.End
}
}) -join ','       
}}
}
}
}

Get-Cluster -Name $Clster | GetInfo | Export-Csv -Path $DestiResults.csv -NoTypeInformation
Disconnect-VIServer * -Confirm:$false

最新更新