Networking 2 (TestTrack Unplugged Series)

I’ll assume you read the first post in the series.

Networking 2
scenario

Things to note:

  • “network administrator is in the process of setting the physical network” = This will likely not work if tested between hosts. In actuality it will usually work because Workstation ignores and just passes VLAN tags along.
  • “cannot send or receive traffic regardless of changes to the OS or virtual machine properties” = However you achieve this it won’t be in the OS or VM. Pretty much narrows it down to on the virtual switch. Only way to block sent/receive for a VM connected to a VDS from the VDS is to block the port.

Also note it doesn’t list which hosts to add to it. This was an oversight during writing, but as written you’d only be expected to add the host the Batch VM is on.

Step 1: Create the VDS

Very straightforward, make the VDS and portgroup and add the two hosts (see note above).

Step 2: Migrate Batch to TestDev

No notes on IP changes so no worries there, just move the VM.

Step 3: Block the port

The text doesn’t include limits like “make sure this doesn’t affect other VMs” so you could block at the port group level:

blockall

Or you can take the more precise route and just block the port for Batch

blockone

Scoring:

Is there a VDS on the host Batch is on with the right vmnic in use?
$esxcli = Get-EsxCli -VMhost esxi02.dca.vclass.local
$switchlist = $esxcli.network.vswitch.dvs.vmware.list()
$switch = $switchlist | where {$_.uplinks -match "vmnic3"}
if ($switch){$one = 1}

Is the portgroup set to the right VLAN?
$pg = $null
$numvms = $null
$vlan = $null
$pg = (get-vm batch).networkadapters[0].networkname
$vlan = (get-vdportgroup -name $pg).vlanconfiguration.vlanid
if ($vlan -eq 101) {$two = 1}

Is the port blocked?
$found = get-vdport -VDPortgroup (get-vm batch | get-networkadapter).NetworkName -key ((get-vm batch | get-networkadapter).extensiondata.backing.port.portkey)

if ($found.isblocked) {$three = 1}

Posted in Certification, Computing, Network, PowerShell, Scripting, Virtualization, VMware | Tagged , , , , | Leave a comment

Storage 3 (TestTrack unplugged series)

I’ll assume you read the first post in the series.

Storage 3
scenarioThings to note:

  • “created on the array in the future” = Don’t change PSP on any current LUN, just change the default for the array so new ones are RR.
  • “IP address 192.168.247.61 is available for use.” = Hey, looks like we need to add an IP address somewhere.

Note also, this item was not updated for the DCA550 TestTrack and doesn’t have the “Requirements” section. You will also note the host named and IPs dont match. Otherwise it all works.

Step 1: Check networking

network1

network2

iscsi1

We can see that there is one vmk that can hit the iSCSI target and there is one additional NIC on the same subnet which is also where the spare IP address sits.

So, either make a new switch with the spare NIC, or add the NIC to vSwitch0. Then create the new vmk with the new IP. If you didn’t make a new switch, you’ll need to allocate only one NIC per vmk using the failover settings.

Step 2: Configure the NICs, vmks and then configure port binding.

portbinding
(You’ll want to do it to both vmk ports)

Step 3: Configure the default PSP

Make sure you know which SATP is in use for the array:
path1

Then set the PSP for that SATP:

path2

Check your work:
path3

Scoring:
I don’t have powercli for the first two handy but I’ll work on it.

Verify there are two port bindings for iSCSI for the host in question
Verify there are the correct number of paths for the LUNs in question

Verify the default PSP is set to RR for the SATP
$esxcli = Get-EsxCli -VMhost esxi02.dca.vclass.local
$switchlist = $esxcli.storage.nmp.satp.list() |where {$_.Name -eq "VMW_SATP_DEFAULT_AA"}
if ($switchlist.DefaultPSP -eq "VMW_PSP_RR") {$three = 1}

Posted in Certification, Computing, PowerShell, Scripting, Storage, Virtualization, VMware | Tagged , , , , | 2 Comments

Storage 2 (TestTrack Unplugged series)

I’ll assume you read the first post in the series.

Storage 2
scenario

The initial note to delete Payroll is only seen on TestTrack – you won’t want to undo anything on the real exam as no scoring is done until the exam is completed.

Things to note:

  • “requires a 16 GB system drive that has the space pre-allocated and zeroed” = you will need 16GB of space
  • “must run on iSCSI” “storage administrator has stated that enough iSCSI storage already exists for your needs.”
  • “any means necessary” “short of deleting other virtual machines” = all these mean don’t get on the iSCSI appliance, don’t use NFS and don’t delete – but you can do anything else

Step1: Check the storage

Actually from the last question we know iSCSI0 only has 10GB after being extended, so we need the space to come from somewhere else.

storage

And we know there are no extra LUNs

nostorage

Step 2: Make space

So we need the space to come from somewhere. There are two iSCSI datastores other than iSCSI0 – iSCSI1 with one VM (177KB in use) and iSCSISharedVMs with 5 VMs and two templates.

The easiest way to get more space for iSCS0 is to move the one VM off of iSCSI1 and onto any other datastore, delete iSCSI1 and add that LUN as an extent to iSCSI0.

This makes iSCSI0 ~20GB and the new VM can then be created. Note that the new VMDK needs to be thick eager to get all the points.

Scoring:

Make sure the VM has a 16GB vmdk
$found = (get-vm e* |get-harddisk)
if (($found.capacitygb -ge 14) -and ($found.storageformat -eq "EagerZeroedThick") ) {$one = 1}

Make sure the VM’s VMDK is on iSCSI0
$found = ((get-vm e*)|get-harddisk).filename
if ($found -match "iSCSI0") {$two = 1}

Make sure Capture wasn’t deleted
$found = (get-VM capture)
if (($one -or $two) -and $found) {$three = 1}

Note that the third point requires the completion of one of the other points as well .  This prevent it being a free point if the item is skipped.

Posted in Certification, Computing, PowerShell, Scripting, Storage, Virtualization, VMware | Tagged , , , , | Leave a comment

TestTrack Unplugged (Storage 1)

Back in 2012 I created TestTrack as a practice tool for the DCA510 (VCAP5-DCA on vSphere 5.0) exam. When the updated DCA550 exam launched I updated TT to match.

With the decommissioning of the VCAP5-DCA exams the current TestTrack is not longer relevant so I will be posting some of the scenarios and solution walk-throughs for the items contained in TestTrack, starting with the first of the Storage question.

Storage 1

contentThings to note:

  • “a physical server failure with no downtime” = Fault Tolerance
  • “The other administrator has reported a problem” = There is an underlying troubleshooting issue built into the scenario.
  • “Leave all settings not specified at the default” = Next next next for anything not covered by the requirements or opening statement.

Step 1: Create the VM
Creating the VM goes fine if you pick all defaults other than the host, but enabling FT on the VM pops a few errors:

errors

So, HA and vMotion are not enabled.

For this scenario when enabling vMotion you are not given any information other than the implied “make it work”. On the official exam you would be presented with any settings would you need so make sure you stay within the expected parameters. The idea is to only present one path that achieves the stated goal.

Step 2: Enable HA on the cluster and enable vMotion on vmk0 of both hosts.

Enabling FT again gets a new error, the one that explains why this is a storage question.
storageerror

Turns out ISCSI0 has less than 7GB free and PayRoll needs 8GB when FT thick-provisions the disk.

iscsi0info

Investigating iSCSI0 shows there is space available on the underlying LUN

iscsi0extraspace

Step 3: Extending the disk nets us enough space to enable FT.

ftenabled

Note! On the real exam, enabling FT takes a while.  Don’t sit there and twiddle your thumbs, make a note on the scratch pad like:

Q3 : Waitng on FT enabled on DB

and move on to the next question.

Scoring:

There are three scoring points
Is the VM on ISCSI0?
$HD = get-vm Pa* |get-harddisk |select -first 1 filename, capacityGB
if ($HD.filename -match "\[iSCSI0.*") {$one = 1}

Is the payroll harddrive still 8GB?
if ($HD.capacityGB -eq 8) {$two = 1}

Is FT enabled on the VM?
$vm = Get-VM p* | % { ($_ | Get-View).runtime.FaultToleranceState } | select -first 1
if ($vm -ne "notConfigured") {$three = 1}

Note that there were other things changed (vMotion, HA) that are not scored. On the real exam, the “best” points will be scored, those that best identify a Minimally Qualified Candidate.

Posted in Certification, Cloud, Computing, PowerShell, Scripting, Virtualization, VMware | Tagged , , , , | 2 Comments

vCloud Director – retain IP/Mac

I found myself in need of changing a network setting on a bunch of vCD vApps.  The setting in question (“Retain IP/MAC Resources” in the GUI, “RetainNetInfoAcrossDeployments” from the API) causes the vApp to retain it’s assigned IP (apparently by retaining the VCNS components), even after stopping and expiring the vApp. (it releases the IP when it is removed from “Expired Items”)

I first checked Set-CIVAppNetwork but the option was not listed.  I found it using (get-civapp <name>|get-civappnetwork).extensiondata.configuration

BackwardCompatibilityMode :
IpScope :
IpScopes : VMware.VimAutomation.Cloud.Views.IpScopes
ParentNetwork : VMware.VimAutomation.Cloud.Views.Reference
FenceMode : natRouted
RetainNetInfoAcrossDeployments : True
Features : {, VMware.VimAutomation.Cloud.Views.FirewallService, VMware.VimAutomation.Cloud.Views.NatService, VMware.VimAutomation.Cloud.Views.StaticRoutingService}
SyslogServerSettings : VMware.VimAutomation.Cloud.Views.SyslogServerSettings

But could not see a way to change it until my GoogleFu turned up a VMware Communities post where pwmiller demonstrates using .UpdateServerData() along with GetNetworkConfigSection(), both of which are Methods for extensiondata.

However, when I tried the script it would not work without a tweak, either a typo from 11/2013 or a change in PowerCLI:

$vapp = get-civapp 
$networkconfigsection = $vapp.ExtensionData.GetNetworkConfigSection()
$vappnetwork = $networkconfigsection.networkconfig | Where-Object {$_.networkName -match }
$vappnetwork.configuration.RetainNetInfoAcrossDeployments = $false
$networkconfigsection.UpdateServerData()

The bold is my fix to get the code working. Now I’ll have to investigate those additional methods a little more…

Posted in Cloud, Computing, PowerShell, Scripting, Virtualization, VMware | Tagged , , , | Leave a comment

VCAP6 Design Exam tips and tricks

The CloudJAR has a new post up with a great overview of the Design exams and some tips/tricks and new features.

Update: CloudJAR has a new post on Design exam scoring!

Posted in Certification, Virtualization, VMware | Leave a comment

VCAP6 Deploy exam tips and tricks

Dave over at Virtualizestuff has a new post with more tips on the new VCAP deploy exams including videos show interface components and methods you should familiarize yourself with before taking one of the new exams.

Note especially the one on getting text from the manual into the kit without typing!

Posted in Certification, VMware | Tagged , | Leave a comment