Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #Script will prompt for credentials and server name, outputs to c:\servername.csv
- add-pssnapin VMware.VimAutomation.Core
- $creds = get-credential
- $vserver = Read-Host -Prompt 'Enter Server name'
- Connect-VIServer $vserver -Credential $creds
- #To run without prompt comment the above 3 lines, fill in variables below and uncomment
- #$vserver = <enter server here>
- #$vuser = <enter user here>
- #$vpass = <enter pass here>
- #Connect-VIServer $vserver -user $vuser -password $vpass
- $allvminfo = @()
- $vms = Get-Vm
- foreach($vm in $vms){
- $vminfo = "" | Select Name, Host, Cluster, Datastore, PowerState, SRM, CPUCount, RAMAssigned, ProvisionedSpace, UsedSpace, UnusedSpace, Notes
- $VMHost = $vm.Host
- $VMCluster = get-cluster -VM $vm.Name
- $VMDatastore = Get-Datastore -Id $vm.DatastoreIdList
- $VMPowerState = $vm.PowerState
- $VMsrm = $vm.ExtensionData.Config.ManagedBy.ExtensionKey
- $CPUCount = $vm.NumCpu
- $Notes = $vm.notes
- $RAMAssigned = $vm.MemoryGB
- $ProvisionedSpace = $vm.ProvisionedSpaceGB
- $ProvisionedSpace = [math]::round($ProvisionedSpace, 2)
- $vmview = Get-VM $vm.Name | Get-View
- $vmview.Storage.PerDatastoreUsage.Committed.gettype()
- $UsedSpace = [math]::round(($vmview.Storage.PerDatastoreUsage.Committed/1024/1024/1024), 2)
- $UsedSpace =$UsedSpace.ToString()
- $UsedSpace = $UsedSpace + " GB"
- $UnUsedSpace = [math]::round(($vmview.Storage.PerDatastoreUsage.UnCommitted/1024/1024/1024), 2)
- $UnUsedSpace =$UnUsedSpace.ToString()
- $UnUsedSpace = $UnUsedSpace + " GB"
- $ProvisionedSpace =$ProvisionedSpace.ToString()
- $ProvisionedSpace = $ProvisionedSpace + " GB"
- $vminfo.Name = $vm.Name
- $vminfo.Host = $VMHost
- $vminfo.Cluster = $VMCluster.Name
- $vminfo.Datastore = $VMDatastore.Name
- $vminfo.PowerState = $VMPowerState
- $vminfo.SRM = $VMsrm
- $vminfo.CPUCount = $CPUCount
- $vminfo.RAMAssigned = $RAMAssigned
- $vminfo.ProvisionedSpace = $ProvisionedSpace
- $vminfo.UsedSpace = $UsedSpace
- $vminfo.UnUsedSpace = $UnUsedSpace
- $vminfo.Notes = $Notes
- $allvminfo += $vminfo
- }
- $allvminfo | Select Name, Host, Cluster, Datastore, PowerState, SRM, CPUCount, RAMAssigned, ProvisionedSpace, UsedSpace, UnusedSpace, Notes | -noTypeInformation
- disconnect-viserver -confirm:$false
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement