Quantcast
Channel: VMware Communities: Message List
Viewing all articles
Browse latest Browse all 228891

Re: Add multiple PVLAN IDs to dvSwitch?

$
0
0

Thanks, I'm not sure where im going wrong

 

function Get-dvSwitch{

  param($dcName,$dvSwName)

 

 

  $dcNetFolder = Get-View (Get-Datacenter $dcName | Get-View).NetworkFolder

  $found = $null

  foreach($net in $dcNetFolder.ChildEntity){

  if($net.Type -eq "VmwareDistributedVirtualSwitch"){

  $temp = Get-View $net

  if($temp.Name -eq $dvSwName){

  $found = $temp

  }

  }

  }

  $found

}

 

 

function New-dvSwPVLAN{

  param($dvSw, $primaryNr, [int[]] $secondaryNr, [string[]] $secondaryType)

 

 

  $spec = New-Object VMware.Vim.VMwareDVSConfigSpec

 

 

  # Primary

  $pvlan = New-Object VMware.Vim.VMwareDVSPvlanConfigSpec

  $pvlan.operation = "add"

  $pvlan.pvlanEntry = New-Object VMware.Vim.VMwareDVSPvlanMapEntry

  $pvlan.pvlanEntry.primaryVlanId = $primaryNr

  $pvlan.pvlanEntry.pvlanType = "promiscuous"

  $pvlan.pvlanEntry.secondaryVlanId = $primaryNr

  $spec.PvlanConfigSpec += $pvlan

 

 

  # Secondaries

  for($i = 0;$i -lt $secondaryNr.Count; $i++){

  $pvlan = New-Object VMware.Vim.VMwareDVSPvlanConfigSpec

  $pvlan.operation = "add"

  $pvlan.pvlanEntry = New-Object VMware.Vim.VMwareDVSPvlanMapEntry

  $pvlan.pvlanEntry.primaryVlanId = $primaryNr

  $pvlan.pvlanEntry.pvlanType = $secondaryType[$i].ToLower()

  $pvlan.pvlanEntry.secondaryVlanId = $secondaryNr[$i]

  $spec.PvlanConfigSpec += $pvlan

  }

 

 

  $dvSw.UpdateViewData()

  $spec.ConfigVersion = $dvSw.Config.ConfigVersion

  $taskMoRef = $dvSw.ReconfigureDvs_Task($spec)

 

 

  $task = Get-View $taskMoRef

  while("running","queued" -contains $task.Info.State){

  $task.UpdateViewData("Info")

  }

}

 

 

$datacenterName = "DC1"

$dvSwitchName = "VDS1"

$dvSw = Get-dvSwitch $datacenterName $dvSwitchName

New-dvSwPVLAN $dvSw 900 910 "community"


Viewing all articles
Browse latest Browse all 228891

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>