18.08.2013 Views

vSphere PowerCLI User's Guide - Documentation - VMware

vSphere PowerCLI User's Guide - Documentation - VMware

vSphere PowerCLI User's Guide - Documentation - VMware

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>vSphere</strong> <strong>PowerCLI</strong> User’s <strong>Guide</strong><br />

Populate a View Object<br />

This procedure illustrates how to populate a view object from an already retrieved managed object using the<br />

Get-View cmdlet.<br />

To populate a view object<br />

1 Get the VM2 virtual machine using a filter by name and populates the view object.<br />

$vm2 = Get-View -ViewType VirtualMachine -Filter @{"Name" = "VM2}<br />

$hostView = Get-View -Id $vm2.Runtime.Host<br />

2 Retrieve runtime information:<br />

$hostView.Summary.Runtime<br />

Update the State of a Server-Side Object<br />

This procedure illustrates how to update the state of server-side objects.<br />

To update the state of a server-side object<br />

1 Get the VM2 virtual machine using a filter by name:<br />

$vm2 = Get-View -ViewType VirtualMachine -Filter @{"Name" = "VM2}<br />

$hostView = Get-View -Id $vm2.Runtime.Host<br />

2 Print the current power state:<br />

$vm2.Runtime.PowerState<br />

3 Change the power state of the virtual machine:<br />

If ($vm2.Runtime.PowerState -ne “PoweredOn”) {<br />

$vm.PowerOnVM($vm2.Runtime.Host)<br />

} else {<br />

$vm2.PowerOffVM()<br />

}<br />

4 Print the value of $vm2 power state (the power state is still not updated because the virtual machine<br />

property values are not updated automatically):<br />

$vm2.Runtime.PowerState<br />

5 Update the view:<br />

$vm2.UpdateViewData()<br />

6 Show the actual power state of the virtual machine:<br />

$vm2.Runtime.PowerState<br />

Mixed Usage of <strong>vSphere</strong> <strong>PowerCLI</strong> and API Access Cmdlets<br />

To get more advantages of the usability and functionality of the <strong>vSphere</strong> <strong>PowerCLI</strong> cmdlets and the API Access<br />

cmdlets you can use them together.<br />

To reboot a host<br />

1 Use the Get-VMHost cmdlet to get a host by its name, and pass the result to the Get-View cmdlet to<br />

retrieve the host view:<br />

$hostView = Get-VMHost -Name Host | Get-View<br />

2 Call the reboot method of the host view object to reboot the host:<br />

$hostView.RebootHost()<br />

32 <strong>VMware</strong>, Inc.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!