0

PowerShell and PowerCLI for beginners

PowerShellPowerShell Scripting is a must have capabilities these days that every system admin should posses, automation saves much of precious time for system admin, it also enable operation efficiency by reducing risk involved in manual work.

A good system admin should be LAZY!  (only when it comes to manual work…..)

Garfield

It’s best to start with PowerShell as it’s the core, knowledge on Cmdlets, objects, Function and Filters to name some is required. Go through this link below where free videos can be downloaded from Microsoft on “PowerShell Essentials for the Busy Admin”.  It’s a 5 part series and all parts are free for download.

Next According to me the best online tutorial available starting from scratch till managing Active Directory via PS.  http://www.powershellpro.com/

powershellenstine

Book’s for reference: (The ones I am referring currently)

Microsoft Windows PowerShell Step by Step

Bruce Payette’s book – Windows PowerShell in Action

 

PowerCLIPowerCLI – A Windows PowerShell interface for managing VMware vSphere.  Powerful command-line tool that lets you automate all aspects of vSphere management, including network, storage, VM, guest OS and more.

VMware provided a “Automation Fast Track” Training which can enroll to get familiar with PowerCLI.

Prerequisites:

• System administration experience on Microsoft Windows or Linux operating systems
•  Scripting experience in Windows PowerShell, VBScript, Perl, UNIX, or other languages featuring variables and control structures.

Pluralsight – Has some great video training on PowerCLI on this link.

Books for reference:

VMware vSphere PowerCLI Reference: Automating vSphere Administration

Learning PowerCLI

Good Scripting Blog for reference:

http://www.virtu-al.net/

http://www.lucd.info/

0

Learning PowerCli!

6. How to store user credentials using the PowerCli?

   $cred = Get-Credential

The above code will save the credentials (if you vCenter credentials are not same as your windows FQDN).

There after you can connect to your vCenter just by typing the below command.

Connect-VIServer 192.168.145.163 -Credential $cred

 

7. How to connect to ESX host ?

Connect-VIServer “192.168.145.163” -Credential $cred

To connect to ESX host directly you need to alter the PowerCli proxy configuration.

To check your PowerCli proxy configuration

Get-PowerCLIConfiguration

To change the proxy configuration to “No Proxy” use the following command.

Set-PowerCLIConfiguration -ProxyPolicy NoProxy

 

8. How to disconnect from connected ESX or vCenter server?

disconnect-VIServer

To disconnect from all connect host / VC  you can supply the below command.

disconnect-VIServer *

 

9. PowerCli Cmdlets

 

10.  How to get list of command by verb and noun?

Get-Vicommand | group-object noun

Get-Vicommand | group-object verb

To sort by count

Get-Vicommand | group-object verb | sort count

11. How to declare a variable?

$vm = Get-VM Win_XP

Now the $VM inherits the get-vm command for virtual machine Win_XP, we can perform task like

$VM.name or $vm |Get-VMguest

12. How export data in a spread sheet?

Get-Vm | Export-Csv  -path data.csv -notypeinformation

to read the file the following command can be used.

Invoke-Item data.csv

13. How to fetch report of only column which we want?

Get-Vm | select-object name, Memorymb, numcpu|Export-Csv  -path data.csv -notypeinformation

Alias for Invoke Item is “ii”

ii data.csv

14. How to get the member data (Column names)?

Get-VM | Get-Member

15. How get the table output in an HTML format?

Get-VM | select-object name,MemoryMb, numcpu | ConvertTo-HTML | set-content data.html

To execute the code its

 ii data.html

16. How to read data in list instead of table view.

Get-VM | Format-List

17. How to use the . before its properties.

$vm.powerstate

18. How to identify VM which has less than 1 GB RAM configured?

$ram = Get-VM | Where-object {$_.memoryMB -lt 1024}

$_  accepts what every object comes through the pipeline.

19. To identify to which ESX host a VM is connected, the below command can be used.

Get-VM Win_XP | Get-VMHost

 

20. How to add a ESX / ESXi host to VCenter server  using PowerCli?

Add-VMHost -Name 192.168.145.164 -user root -pass Admin123 -location $dc -RunAsync -Force

$dc is mapped to Get-Datacenter and Force is used to ignore host SSL certificate validation.

21. How to add new VMHostAccount?

New-VMHostAccount -Id newuser -Password Admin123 -Description “hey there” -Gr

antShellAccess:$false

You need to directly connected to host to perform this task. The granstshell access represent SSH access.

22. How to find list of available commands for the command lets.

Get-Command *VMhostservice

 

23. GCM is the short form of get command.

gcm  Get-VM

 

24. How to overcome if you receive  error message something like “it’s not digitally signed” while running a PowerCli script.

Run this command

Set-ExecutionPolicy Unrestricted

0

Learning PowerCli!

Hi All,

I have started working / improve my skill ‘s on PowerCli scripting… and wanted to share the notes that I have captured during my learning process.

I hope it helps and Welcome to the PowerCli ERA!

Instruction on how to install PowerCli is available in this link. Lets start the journey!!! :)

  1. Why learn PowerCli?

    “If you repeat it, script it”.

A good system administrator is lazy!

2. What is PowerCli?

  • Free VMware product formerly known as the VI Toolkit for windows.
  • Scripting toolkit for vSphere and vCenter.
  • An interactive shell
  • A scripting engine
  • Remote access to your vSphere environment.
  • PowerCli is made for Admins not for developers.

3.  Enable PowerShell Script Execution

Note: As a security precaution remote PowerShell scripts cannot be executed unless you enable it. This is required before VMware commands can be executed.

Open up the Windows PowerShell command prompt and type

    set-ExecutionPolicy RemoteSigned

 

 

0

VMware vSphere PowerCLI Release Notes

About VMware vSphere PowerCLI

vSphere PowerCLI is a command-line and scripting tool built on Windows PowerShell, and provides more than 200 cmdlets for managing and automating vSphere.

Requirements

To use vSphere PowerCLI, you need to have installed the followming software:

  • .NET 2.0, 3.0, or 3.5 with Service Pack 1
  • Windows PowerShell 1.0/2.0

If .NET is installed without Service Pack 1, some operations might take long to complete.

Supported Platforms

vSphere PowerCLI 5.0 works on the 32-bit and 64-bit versions of the following operating systems:

  • Windows 7
  • Windows 2008 Server
  • Windows Vista
  • Windows XP Service Pack 2
  • Windows Server 2003 Service Pack 2

The following PowerCLI features are supported only on the 32-bit versions of the supported operating systems.

  • New-OSCustomizationSpec and Set-OSCustomizationSpec
  • New-VM and Set-VM (only when used for applying customization specifications)
  • Invoke-VMScript
  • Copy-VMGuestFile
  • New-VMGuestRoute, Get-VMGuestRoute, and Remove-VMGuestRoute
  • New-VMGuestNetworkInterface and Set-VMGuestNetworkInterface
  • Set-HardDisk ( only when used for resizing guest disk partitions)

vSphere PowerCLI 5.0 supports the following VMware environments:

  • VMware ESXi 5.0
  • vCenter Server 5.0
  • VMware ESX 4.1 / vCenter Server 4.1
  • VMware ESXi 4.1
  • VMware ESX 4.0 Update 2 / vCenter Server 4.0 Update 2
  • VMware ESX 4.0 Update 1 / vCenter Server 4.0 Update1
  • VMware ESX 4.0i Update 1
  • VMware VirtualCenter 2.5 Update 6
  • VMware ESX 3.5 Update 5
  • VMware ESXi 3.5 Update 5
  • VMware ESX 3.0.3 Update1

What’s New in This Release?

New Features

This release of vSphere PowerCLI introduces the following new capabilities:

  • Cloning templates with New-Template.
  • Copying files and folders from and to the guest operating system through the Copy-VMGuestFile cmdlet.
  • Joining domains through the Get-VMHostAuthentication and Set-VMHostAuthentication cmdlets.
  • Joining ESX hosts (version 4.1 and later) into an active directory through the Get-VMHostAuthentication and Set-VMHostAuthentication cmdlets.
  • Retrieving vCenter Server users and groups through the Get-VIAccount cmdlet.
  • Support for vCenter Servers in linked mode through the Connect-VIServer cmdlet.
  • Retrieving object properties through the Get-VIProperty cmdlet.
  • Moving virtual appliances through the Move-VApp cmdlets.
  • Importing compressed and chunked files through the Import-VApp cmdlet.
  • Importing and exporting virtual appliances in OVA format.
  • Support for the SSPI passthrough feature of VIX.
  • Support for storage DRS: creating virtual machines and hard disks on datastore clusters and defining anti-affinity rules.(experimental)

Additional Snapins

vSphere PowerCLI 5.0 introduces three additional snapins of cmdlets that cover specific vSphere functionalities:

  • VMware.VimAutomation.License : The Licensing snapin contains the Get-LicenseDataManager cmdlet for managing VMware License components..
  • VMware.ImageBuilder : The Image Builder snapin contains cmdlets for managing depots, image profiles, and VIBs.
  • VMware.DeployAutomation : The Auto Deploy snapin contains cmdlets that provide an interface to VMware Auto Deploy for provisioning physical hosts with ESXi software.

Discontinued Support

Support for PowerShell 1.0 will be removed in the next PowerCLI release.

For more information on changes made in vSphere PowerCLI 5.0, see the vSphere PowerCLI Change Log.

Obtaining the Software

You can obtain the vSphere PowerCLI 5.0 from here.

Known Issues

vSphere PowerCLI 5.0 is known to have the following issues:

Apply-DrsRecommendation

Apply-DrsRecommendation

      runs in asynchronous mode even when called without the

RunAsync

    parameter.

Copy-DatastoreItem

Copy-DatastoreItem

    throws an error when uploading an item to the root folder of a Datastore Provider drive.

Copy-HardDisk

      On vCenter Server 5.0,

Copy-HardDisk

    cannot change the storage format of the destination hard disk.

Get-Datastore

(Get-Datastore).FreeSpaceMB

    might not return the actual datastore free space after a virtual machine is powered on. A refresh should be made first.

Format-VMHostDiskPartition

      On ESX 3.5,

Format-VMHostDiskPartition

      throws an error and does not create a datastore, although the specified

VMHost

      disk partition is formatted with VMFS and you can run

New-Datastore

    to create a datastore from the formatted partition.

Get-HardDisk

      The value of the

Persistence

      property of the object returned by

Get-HardDisk

    is different depending on the way the hard disk is obtained by the cmdlet.

Get-NetworkAdapter

  • Get-NetworkAdapter does not throw an error message if you try to retrieve a nonexisting adapter.
  • Get-NetworkAdapter returns only one object, when you try to retrieve existing network adapters by name from two virtual machines or snapshots.

Get-ScsiLun

      When you use

Get-ScsiLun

      to retrieve Powerpath devices, the value of their

MultipathPolicy

      property is shown as

Unknown

    .

Get-Template

      The

Location

      parameter of

Get-Template

      does not accept

Cluster

    objects.

Get-UsbDevice

  • Get-UsbDevice does not work on ESX Server 3.5 Update 4 and ESX Server 3.5i platforms.
  • Get-UsbDevice cannot obtain USB devices from snapshots.

Get-VIEvent

  • If a nonexisting user is specified, Get-VIEvent returns the events for all existing users.
  • Objects returned by Get-VIEvent contain ManagedObjectReference types that are not compatible with the Get-View cmdlet.

Get-VM

  • During the process of creating a template from a virtual machine, Get-VM returns both the virtual machine and template objects.
  • If you try to retrieve virtual machines by their IDs and the list of the provided IDs contains the IDs of removed virtual machines, Get-VM returns no value.

Get-VMHostProfileRequiredInput

      On vCenter Server 5.0,

Get-VMHostProfileRequiredInput

    returns a result even if you pass a hashtable with inapplicable elements.

Install-VMHostPatch

  • The LocalPath parameter set of Install-VMHostPatch does not work.
  • Install-VMHostPatch cannot install patches on diskless ESXi servers.
  • Install-VMHostPatch cannot install patches on ESX 3.5.
  • Install-VMHostPatch cannot apply VIB patches.
    Workaround: Use metadata.zip patches.

Invoke-VMScript

      When using

Invoke-VMScript

    to invoke multi-line BAT and BASH scripts, the command might not run all the script lines.

New-HardDisk

New-HardDisk

    does not ask for confirmation when you try to create a VMDK anti-affinity rule that overwrites an existing one.

New-OSCustomizationSpec

      Cloning a server-side customization specification with

New-OSCustomizationSpec

      changes the values of the

PlainText

      properties from

true

      to

false

    .

New-VIPermission

      If you use

New-VIPermission

      to create a permission for a distributed switch, the

Entity

      property of the returned object is

null

    .

New-VMHostNetworkAdapter

New-VMHostNetworkAdapter

    cannot configure the MAC address on VirtualCenter Server 2.5 and ESX 3.5 hosts.

Set-Annotation

Set-Annotation

    cannot set an annotation for a custom attribute if another custom attribute with the same name exists.

Set-HardDisk

      Increasing the size of a system partition on Windows 7 and Windows 2008 by using the

GuestDiskResize

      parameter of

Set-HardDisk

    is not supported.

Set-ResourcePool

Set-ResourcePool

      disconnects the vCenter Server if the name you pass to the

Name

    parameter already exists for another resource pool on the server.

Set-ScsiController (added to ref)

Set-ScsiController

      cannot set both the

Type

      and

BusSharing

      parameters at the same time.

 

    Workaround: First run the cmdlet to set the type and then run it again to configure the bus sharing mode.

Set-ScsiLun

      The

CommandsToSwitchPath

      ,

BlocksToSwitchPath

      ,

NoCommandsSwitch

      , and

NoBlocksSwitch

      parameters of

Set-ScciLun

    do not work on ESX 4.0 and later.

Set-VM

    On vCenter Server 5.0, when you use Set-VM to upgrade the VM hardware version, the output of the cmdlet displays the old value although the version has been updated successfully.

Set-VMGuestNetworkInterface

      On Windows operating systems,

Set-VMGuestNetworkInterface

    becomes non-responding if the provided IP address conflicts with an existing IP address on the network.

Set-VMHost

Set-VMHost

      might not populate the

VMSwapfileDatastoreId

      property of the returned

VMHost

      object when

VMSwapFilePolicy

      or

VMSwapFileDatastore

      properties are modified.

 

      Workaround: Use

Get-VMHost

      to retrieve the object returned by

Set-VMHost

    .

Set-VMHostNetwork

Set-VMHostNetwork

      cannot clear the values of the

ConsoleV6Gateway

      and

VMKernelV6Gateway

    properties of the input object.

Set-VMHostNetworkAdapter

    If you have vMotion enabled on one VMKernel nic and you enable it on a second nic on the same switch (using Set-VMHostNetworkAdapter), ‘VMotionEnabled’ property of the second nic may still report that vMotion is not enabled. This is due to the fact that there can only be one nic selected for vMotion, but more than one can be ‘candidate’ nics for vMotion. In the described scenario the second nic will become a ‘candidate’ nic for vMotion. If you want to change the currently active vMotion nic – first disable the current one and then enable the one you want.

Set-VMGuestNetworkInterface

      Changing the value of the

IPPolicy

      parameter to

Static

      with

Set-VMGuestNetworkInterface

      changes the value of the

WinsPolicy

      parameter to

Static

    as well.

Set-VMHostNetworkInterface

Set-VMGuestNetworkInterface

    cannot configure correctly the DNS address on Linux operating systems.

Set-VMHostSNMP

  • The default value of the Set-VMHostSNMP TargetPort parameter is a random number instead of the port number.
  • Set-VMHostSNMP skips the value of the TargetPort parameter.
  • Set-VMHostSNMP fails to enable VMHostSNMP and to set the ReadOnlyCommunityString when called for the first time.
    Workaround: Run the command again.

Inventory Provider

      When run within the Inventory Provider,

Get-Datacenter

      returns the datacenters from the default servers instead from the

VIServer

    folder of the Inventory Provider drive.

Documentation

    The examples in section “Use ESXCLI with PowerCLI” in the PowerCLI 5.0 User’s Guide, are not applicable to ESX versions later than 4.0.

Other

  • On vCenter Server 5.0/ ESXi 5.0 platforms, all guest-related cmdlets have slow and unstable behavior due to the slow performance of VMware Tools.
  • The VirtualMachine parameter of the PowerCLI cmdlets is defined with the deprecated Description property of the VirtualMachine type, instead of the new one named Notes. In result, The PowerShell auto-complete function works with the deprecated property name.
  • The types labels in the UpdateViewData property are case-sensitive.
  • When running in 64-bit mode, PowerCLI cannot detect the registry key HKEY_LOCAL_MACHINE\SOFTWARE\VMware, Inc.\VMware vSphere PowerCLI\, which is used for determining the PowerCLI installation folder. Instead, you can use the following key: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\VMware, Inc.\VMware vSphere PowerCLI.
  • The Model and Vendor properties of the ScsiLun objects are always filled up with white-spaces to 16 (for Model) and 8 (for Vendor) characters.
  • All VIX cmdlets support using SSPI for Windows guest machines if the underlying vCenter Server is 5.0 version. This might not be valid for users who are local, and not domain users. VIX cmdlets are Invoke-VMScript, Copy-VMGuestFile, *-VMGuestNetworkInterface, *-VMGUestRoute, and Set-HardDisk when used for guest disk resizing.

Resolved Issues

The following issues have been resolved in vSphere PowerCLI 5.0:

Get-View

  • If a ManagedObjectReference object that points to StorageResourceManager is specified for the Id parameter, Get-View returns no result.
  • Get-View fails to retrive Cluster views if HA is enabled.

Get-VMGuestNetworkInterface

Get-VMGuestNetworkInterface

    throws an error if there is a disconnected network adapter.

Get-VMGuestRoute

      On Windows operating systems, the

Persistence

      property of the objects returned by

Get-VMGuestRoute

    is incorrect.

Invoke-VMScript

  • On 64-bit operating systems, Invoke-VMScript works only in 32-bit mode.
  • Invoke-VMScript does not work if the guest operating system is installed on a drive other than C: or D:.
  • Running Invoke-VMScript against outdated VMware Tools might make the console non-responsive.
  • Invoke-VMScript might become non-responding.

New-OSCustomizationSpec

  • New-OSCustomizationSpec clones only the first object if an array of objects is provided.
  • VMware vClient shows an error message Error reading password when opening specifications that are created by New-OSCustomizationSpec with empty passwords.

New-Snapshot

      When run with the

Quiesced

      switch parameter set to

$true

      ,

New-Snapshot

      creates a snapshot with

Quiesced

      property set to

$false

    .

Set-HardDisk

  • Set-HardDisk fails to resize the hard disk, if the helper virtual machine cannot access the datastore where the target hard disk is located.
  • Set-HardDisk fails to resize the hard disk, if the power state of the helper virtual machine is powered on.
    Workaround: Refresh the helper virtual machine object before running Set-HardDisk.

Set-PowerCLIConfiguration

Set-PowerCLIConfiguration

    does not set a persistent proxy policy.

Set-VM

  • Set-VM cannot modify the DrsAutomationLevel property of the virtual machine if the current value of the property is Disabled.
  • Set-VM accepts only values that are powers of 2 for the Numcpu parameter.

Set-VMGuestNetworkInterface

  • On Linux Red Hat 5, Set-VMGuestNetworkInterface cannot set static DNS addresses.
  • Set-VMGuestNetworkInterface cannot set the WinsPolicy property to dhcp.

Set-VMGuestRoute

      On Linux operating systems,

Set-VMGuestRoute

      cannot modify routes.

 

    Workaround: Remove all guest routes and then add them one by one.

Set-VMHostNetwork

Set-VMHostNetwork

      cannot configure

VMKernel

    devices.

vSphere SDK for .NET

      The

ScreenDimensions

      property of the

VMGuestInfo

    object is not populated.

Installing vSphere PowerCLI

VMware provides a single installer for vSphere PowerCLI.

To install vSphere PowerCLI

  1. Download vSphere PowerCLI 5.0.
  2. Launch the vSphere PowerCLI installer by double-clicking the executable file. In the Welcome page, click Next.
  3. To install vSphere PowerCLI in a non-default location, click Change in the Destination Folder page and select a different directory.
  4. In the Ready to Install the Program page, choose whether to create a desktop shortcut.
  5. Click Install to proceed with the installation.
  6. Click Finish to complete the installation process.

Source : VMware

0

PowerCLI v5 is available, download it NOW!

Run, don’t walk to vmware.com/go/powercli to grab the latest version of the world’s best PowerShell snapin. That’s right, v5 is out and you can grab it now! And the coolest part is that while nobody will have vSphere 5 in production on day one (ok, there’s a couple of you out there), PowerCLI v5 is a client-based tool with no dependencies, and it’s downwards-compatible! There is literally no reason for you not to upgrade right this instant! I am using exclamations here, people!

I’ve had beta builds installed for some time, but I didn’t want to do blog posts based on pre-release builds for fear that things would change. Now that it’s out, I’ll start pushing out some posts about what’s new and all that, so stay tuned. For now, some quick stats and info:

There are now FOUR VMware snap-ins installed with PowerCLI v5:

PowerCLI U:\> Get-PSSnapin vmware*

Name        : VMware.VimAutomation.Core
PSVersion   : 2.0
Description : This Windows PowerShell snap-in contains Windows PowerShell cmdlets for managing vSphere.

Name        : VMware.VimAutomation.License
PSVersion   : 2.0
Description : This Windows Powershell snap-in contains cmdlets for managing License components.

Name        : VMware.DeployAutomation
PSVersion   : 2.0
Description : Cmdlets for Rule-Based-Deployment

Name        : VMware.ImageBuilder
PSVersion   : 2.0
Description : This Windows PowerShell snap-in contains VMware ESXi Image Builder cmdlets used to generate custom images.

There are 293 cmdlets in total across these snap-ins. Here they are, grouped by Noun and Verb:

PowerCLI U:\> $c = Get-Command -Module vmware*
PowerCLI U:\> $c.Length
293
PowerCLI U:\> $c | group verb

Count Name                      Group
—– —-                      —–
6 Add                       {Add-DeployRule, Add-EsxSoftwareDepot, Add-E…
3 Apply                     {Apply-DrsRecommendation, Apply-ESXImageProf…
1 Compare                   {Compare-EsxImageProfile}
1 Connect                   {Connect-VIServer}
4 Copy                      {Copy-DatastoreItem, Copy-DeployRule, Copy-H…
1 Disconnect                {Disconnect-VIServer}
1 Dismount                  {Dismount-Tools}
3 Export                    {Export-EsxImageProfile, Export-VApp, Export…
1 Format                    {Format-VMHostDiskPartition}
95 Get                       {Get-AdvancedSetting, Get-AlarmAction, Get-A…
2 Import                    {Import-VApp, Import-VMHostProfile}
1 Install                   {Install-VMHostPatch}
1 Invoke                    {Invoke-VMScript}
1 Mount                     {Mount-Tools}
9 Move                      {Move-Cluster, Move-Datacenter, Move-Folder,…
37 New                       {New-AdvancedSetting, New-AlarmAction, New-A…
42 Remove                    {Remove-AdvancedSetting, Remove-AlarmAction,…
2 Repair                    {Repair-DeployImageCache, Repair-DeployRuleS…
4 Restart                   {Restart-VM, Restart-VMGuest, Restart-VMHost…
58 Set                       {Set-AdvancedSetting, Set-AlarmDefinition, S…
1 Shutdown                  {Shutdown-VMGuest}
4 Start                     {Start-VApp, Start-VM, Start-VMHost, Start-V…
5 Stop                      {Stop-Task, Stop-VApp, Stop-VM, Stop-VMHost…}
3 Suspend                   {Suspend-VM, Suspend-VMGuest, Suspend-VMHost}
1 Switch                    {Switch-ActiveDeployRuleSet}
3 Test                      {Test-DeployRuleSetCompliance, Test-VMHostPr…
1 Update                    {Update-Tools}
2 Wait                      {Wait-Task, Wait-Tools}

PowerCLI U:\> $c | group noun

Count Name                      Group
—– —-                      —–
6 DeployRule                {Add-DeployRule, Copy-DeployRule, Get-Deploy…
2 EsxSoftwareDepot          {Add-EsxSoftwareDepot, Remove-EsxSoftwareDepot}
3 EsxSoftwarePackage        {Add-EsxSoftwarePackage, Get-EsxSoftwarePack…
3 PassthroughDevice         {Add-PassthroughDevice, Get-PassthroughDevic…
9 VMHost                    {Add-VMHost, Get-VMHost, Move-VMHost, Remove…
3 VmHostNtpServer           {Add-VmHostNtpServer, Get-VMHostNtpServer, R…
2 DrsRecommendation         {Apply-DrsRecommendation, Get-DrsRecommendat…
6 ESXImageProfile           {Apply-ESXImageProfile, Compare-EsxImageProf…
7 VMHostProfile             {Apply-VMHostProfile, Export-VMHostProfile, …
2 VIServer                  {Connect-VIServer, Disconnect-VIServer}
1 DatastoreItem             {Copy-DatastoreItem}
5 HardDisk                  {Copy-HardDisk, Get-HardDisk, New-HardDisk, …
1 VMGuestFile               {Copy-VMGuestFile}
4 Tools                     {Dismount-Tools, Mount-Tools, Update-Tools, …
9 VApp                      {Export-VApp, Get-VApp, Import-VApp, Move-VA…
2 VMHostDiskPartition       {Format-VMHostDiskPartition, Get-VMHostDiskP…
4 AdvancedSetting           {Get-AdvancedSetting, New-AdvancedSetting, R…
3 AlarmAction               {Get-AlarmAction, New-AlarmAction, Remove-Al…
3 AlarmActionTrigger        {Get-AlarmActionTrigger, New-AlarmActionTrig…
2 AlarmDefinition           {Get-AlarmDefinition, Set-AlarmDefinition}
2 Annotation                {Get-Annotation, Set-Annotation}
4 CDDrive                   {Get-CDDrive, New-CDDrive, Remove-CDDrive, S…
5 Cluster                   {Get-Cluster, Move-Cluster, New-Cluster, Rem…
4 CustomAttribute           {Get-CustomAttribute, New-CustomAttribute, R…
5 Datacenter                {Get-Datacenter, Move-Datacenter, New-Datace…
4 Datastore                 {Get-Datastore, New-Datastore, Remove-Datast…
1 DatastoreCluster          {Get-DatastoreCluster}
2 DeployRuleSet             {Get-DeployRuleSet, Set-DeployRuleSet}
4 DrsRule                   {Get-DrsRule, New-DrsRule, Remove-DrsRule, S…
1 ErrorReport               {Get-ErrorReport}
1 EsxCli                    {Get-EsxCli}
1 EsxSoftwareChannel        {Get-EsxSoftwareChannel}
1 EsxTop                    {Get-EsxTop}
4 FloppyDrive               {Get-FloppyDrive, New-FloppyDrive, Remove-Fl…
5 Folder                    {Get-Folder, Move-Folder, New-Folder, Remove…
1 HAPrimaryVMHost           {Get-HAPrimaryVMHost}
3 Inventory                 {Get-Inventory, Move-Inventory, Remove-Inven…
4 IScsiHbaTarget            {Get-IScsiHbaTarget, New-IScsiHbaTarget, Rem…
1 LicenseDataManager        {Get-LicenseDataManager}
1 Log                       {Get-Log}
1 LogType                   {Get-LogType}
4 NetworkAdapter            {Get-NetworkAdapter, New-NetworkAdapter, Rem…
2 NicTeamingPolicy          {Get-NicTeamingPolicy, Set-NicTeamingPolicy}
4 OSCustomizationNicMapping {Get-OSCustomizationNicMapping, New-OSCustom…
4 OSCustomizationSpec       {Get-OSCustomizationSpec, New-OSCustomizatio…
2 PowerCLIConfiguration     {Get-PowerCLIConfiguration, Set-PowerCLIConf…
1 PowerCLIVersion           {Get-PowerCLIVersion}
5 ResourcePool              {Get-ResourcePool, Move-ResourcePool, New-Re…
3 ScsiController            {Get-ScsiController, New-ScsiController, Set…
2 ScsiLun                   {Get-ScsiLun, Set-ScsiLun}
2 ScsiLunPath               {Get-ScsiLunPath, Set-ScsiLunPath}
4 Snapshot                  {Get-Snapshot, New-Snapshot, Remove-Snapshot…
1 Stat                      {Get-Stat}
4 StatInterval              {Get-StatInterval, New-StatInterval, Remove-…
1 StatType                  {Get-StatType}
3 Task                      {Get-Task, Stop-Task, Wait-Task}
5 Template                  {Get-Template, Move-Template, New-Template, …
2 UsbDevice                 {Get-UsbDevice, Remove-UsbDevice}
1 VIAccount                 {Get-VIAccount}
3 VICredentialStoreItem     {Get-VICredentialStoreItem, New-VICredential…
1 VIEvent                   {Get-VIEvent}
1 View                      {Get-View}
1 VIObjectByVIView          {Get-VIObjectByVIView}
4 VIPermission              {Get-VIPermission, New-VIPermission, Remove-…
1 VIPrivilege               {Get-VIPrivilege}
3 VIProperty                {Get-VIProperty, New-VIProperty, Remove-VIPr…
4 VIRole                    {Get-VIRole, New-VIRole, Remove-VIRole, Set-…
4 VirtualPortGroup          {Get-VirtualPortGroup, New-VirtualPortGroup,…
4 VirtualSwitch             {Get-VirtualSwitch, New-VirtualSwitch, Remov…
9 VM                        {Get-VM, Move-VM, New-VM, Remove-VM…}
4 VMGuest                   {Get-VMGuest, Restart-VMGuest, Shutdown-VMGu…
2 VMGuestNetworkInterface   {Get-VMGuestNetworkInterface, Set-VMGuestNet…
3 VMGuestRoute              {Get-VMGuestRoute, New-VMGuestRoute, Remove-…
4 VMHostAccount             {Get-VMHostAccount, New-VMHostAccount, Remov…
2 VMHostAdvancedConfigur… {Get-VMHostAdvancedConfiguration, Set-VMHost…
1 VMHostAttributes          {Get-VMHostAttributes}
2 VMHostAuthentication      {Get-VMHostAuthentication, Set-VMHostAuthent…
1 VMHostAvailableTimeZone   {Get-VMHostAvailableTimeZone}
2 VMHostDiagnosticPartition {Get-VMHostDiagnosticPartition, Set-VMHostDi…
1 VMHostDisk                {Get-VMHostDisk}
2 VMHostFirewallDefaultP… {Get-VMHostFirewallDefaultPolicy, Set-VMHost…
2 VMHostFirewallException   {Get-VMHostFirewallException, Set-VMHostFire…
2 VMHostFirmware            {Get-VMHostFirmware, Set-VMHostFirmware}
2 VMHostHba                 {Get-VMHostHba, Set-VMHostHba}
1 VMHostImageProfile        {Get-VMHostImageProfile}
1 VMHostMatchingRules       {Get-VMHostMatchingRules}
2 VMHostModule              {Get-VMHostModule, Set-VMHostModule}
2 VMHostNetwork             {Get-VMHostNetwork, Set-VMHostNetwork}
4 VMHostNetworkAdapter      {Get-VMHostNetworkAdapter, New-VMHostNetwork…
2 VMHostPatch               {Get-VMHostPatch, Install-VMHostPatch}
1 VMHostProfileRequiredI… {Get-VMHostProfileRequiredInput}
4 VMHostRoute               {Get-VMHostRoute, New-VMHostRoute, Remove-VM…
5 VMHostService             {Get-VMHostService, Restart-VMHostService, S…
3 VMHostSnmp                {Get-VMHostSnmp, Set-VMHostSnmp, Test-VMHost…
2 VMHostStartPolicy         {Get-VMHostStartPolicy, Set-VMHostStartPolicy}
2 VMHostStorage             {Get-VMHostStorage, Set-VMHostStorage}
2 VMHostSysLogServer        {Get-VMHostSysLogServer, Set-VMHostSysLogSer…
2 VMQuestion                {Get-VMQuestion, Set-VMQuestion}
2 VMResourceConfiguration   {Get-VMResourceConfiguration, Set-VMResource…
2 VMStartPolicy             {Get-VMStartPolicy, Set-VMStartPolicy}
1 VMScript                  {Invoke-VMScript}
3 CustomField               {New-CustomField, Remove-CustomField, Set-Cu…
1 DeployImageCache          {Repair-DeployImageCache}
2 DeployRuleSetCompliance   {Repair-DeployRuleSetCompliance, Test-Deploy…
1 ActiveDeployRuleSet       {Switch-ActiveDeployRuleSet}
1 VMHostProfileCompliance   {Test-VMHostProfileCompliance}