VMware Cloud Community
edegrave
Contributor
Contributor

Export all VLANs and Portgroups from dVS

I'm trying to get an cvs with a list with of all Portgroups and their VLANs from a dVS. IS that possible?

I've found some scripts but they take the hosts and that results in an endless long list.

0 Kudos
1 Reply
LucD
Leadership
Leadership

Did you check this one as well?

Re: Get all Vlan for the host and network info

With some minor modifications, you can limit this to VDS and only portgroup names and VlanIds.

Get-VirtualPortGroup -Distributed |

Select Name,

  @{N='Host';E={

   if($_ -is [VMware.VimAutomation.ViCore.Impl.V1.Host.Networking.DistributedPortGroupImpl]){

   [string]::Join(',',(Get-View -Id $_.ExtensionData.Host -Property Name | %{$_.Name}))

  }

   else{

  Get-View -Id $_.VMHostId | Select -ExpandProperty Name

  }}},

  @{N='Type';E={

   if($_ -is [VMware.VimAutomation.ViCore.Impl.V1.Host.Networking.DistributedPortGroupImpl]){

   'VDS'

  }

   else{'VSS'}}},

  @{N='VlanId';E={

   if($_ -is [VMware.VimAutomation.ViCore.Impl.V1.Host.Networking.DistributedPortGroupImpl]){

   if($_.ExtensionData.Config.DefaultPortConfig.Vlan -is [VMware.Vim.VmwareDistributedVirtualSwitchPvlanSpec]){

   $_.ExtensionData.Config.DefaultPortConfig.Vlan.PvlanId

  }

   elseif($_.ExtensionData.Config.DefaultPortConfig.Vlan -is [VMware.Vim.VmwareDistributedVirtualSwitchVlanSpec]){

   if($_.ExtensionData.Config.DefaultPortConfig.Vlan.VlanId -is [VMware.Vim.NumericRange[]]){

   [string]::Join(',',($_.ExtensionData.Config.DefaultPortConfig.Vlan.VlanId | %{"$($_.Start)-$($_.End)"}))

  }

   else{

   $_.ExtensionData.Config.DefaultPortConfig.Vlan.VlanId

  }

  }

  }

   else{$_.VlanId}}},

  @{N='Available ports';E={

   if($_ -is [VMware.VimAutomation.ViCore.Impl.V1.Host.Networking.DistributedPortGroupImpl]){

   $_.numPorts - $_.ExtensionData.Vm.Count

  }

   else{'na'}}},

  @{N='Total ports';E={

   if($_ -is [VMware.VimAutomation.ViCore.Impl.V1.Host.Networking.DistributedPortGroupImpl]){

   $_.NumPorts

  }

   else{'na'}}} |

Select Name,VlanId |

Sort-Object -Property Name -Unique


Blog: lucd.info  Twitter: @LucD22  Co-author PowerCLI Reference

0 Kudos