Reports on virtual machines and their records

I want to create a report on all my virtual machines and disks attached to each.  My preference would be to have the information in a .csv, so I can work with it in Excel.  What I've done so far has proved frustrating as I find it hard to combine the two.

What I tried:

1 VI Toolkit - I know I can run the command 'Get - VM' and "Get-hard drive" to get everything I need, but the combination of the two is beyond my current abilities of PowerShell.

2 Report.ps1 of alanrenouf - gives a lot of information, but nowhere close to what I need.  I considered trying to modify this script, but I thought that it would take more time than learning how to make #1.

3 OpenXMPowerTools - get this utility approach work still takes hours without result, more work than it's worth

I have a few scripts (VBscript) skills, it is just their transfer in the new PowerShell environment for me I have difficulties with that.  I'm picturing extract names VM of the command Get - VM and then providing them to the hard disk-Get command and write VM name and output in the .csv file.

Any help you can provide me with would be greatly appreciated to learn PowerShell.

Thank you

Joey

Did you watch his pretty good RVtools and maybe gives you options of export or copied data and import it with excellent that.  Its very nice ESX administration tool.

If you found this information useful, please consider awarding points to 'Correct' or 'useful '. Thank you!!!

Kind regards

Stefan Nguyen

VMware vExpert 2009

iGeek Systems Inc.

VMware, Citrix, Microsoft Consultant

Tags: VMware

Similar Questions

  • List virtual machines and their DNS server settings

    I try to list virtual machines and their primary and secondary DNS server addresses.  Are the cmdlets in vmware that can do this, or would I need to use the invoke-script command.  I have the list of virtual machines and I want to list them all with their DNS server addresses.

    I tried to use the wmi objects such as:

    Win32_networkadapterconfiguration get-wmiobject - computername "servername |

    Select name, DNSServerSearchOrder

    It would give me the specific server name and addresses of dns.

    But I need the list of servernames which I would like to list some and their

    DNSserversearchorder settings (DNS settings)

    I tried to put the servernames list in a text file using

    Get - vm | Export-csv C:\computername.txt - notype

    Then I used the get-content command and the pipe in the get-wmiobject

    command like below:

    $servers = get-Content c:\computername.txt

    ForEach ($server in $servers)

    {get-wmiobject Win32_networkadapterconfiguration - computername $server

    | where {$_.} IPEnabled-fits 'True'} | Select-object

    name, DNSServerSearchOrder

    But when I run this command fails with errors such as a pipe empty

    element is not allowed.  I don't know if the above script has all synatx

    error or what is the best way to get a list of servers and their dns server

    Parameters.

    I know the wmiobject maybe out of this range in these newsgroups but there at - it a script in powershell, vmware or windows powershell to get a list of servername (which are mostly VMS) and their DNS server settings.

    Try the following script to get the DNS search order:

    Get-Content c:\computername.txt | `
    ForEach-Object {
      Get-WMIObject Win32_NetworkAdapterConfiguration -Computername $_ | `
        Where-Object {$_.IPEnabled -match "True"} | `
        Select-Object -property DNSHostName,DNSServerSearchOrder
    }
    

    Best regards, Robert

  • List virtual machines and their data warehouses

    I took a dagger to the list of all virtual machines in my VC with data warehouses where their VMDK:

    $report = @)

    $allvms = Get-VM

    {foreach ($vm to $allvms)

    $row = "" | Select VMNAME, DATASTORE

    $row. VMNAME = $vm.name

    {color: #ff0000} $row. DATA store = (Get - VM | get-data store)

    $report += $row

    }

    $report | Export-Csv "C:\vm_ds.csv" -NoTypeInformation

    No luck. I know that the problem is with the cndlet of get-data store, the file indicates the VMNAME column filled with virtual machines, as expected, but the column of report DATA store System.Object [].

    Any help would be appreciated.

    You are already in a loop through all the guests (the loop foreach in line 3), there is no need to get all customers with the cmdlet Get - VM (again) in the 6th line.

    You can just pass (i $vm) invites him to the cmdlet Get-data store on line

    System.Object [] entry in the CSV file is caused by the fact that the Export-CSV cmdlet does not know how to handle objects or arrays of objects.

    One solution is to loop through all the data store names that are returned.

    And keep the data store name in the property of the DATA store.

    The result is that there will be several rows in the CSV file to people with more than 1 data store.

    $report = @()
    
    $allvms = Get-VM
    foreach ($vm in $allvms) {
         $dstores = $vm | Get-Datastore
         foreach($ds in $dstores){
              $row = "" | select VMNAME, DATASTORE
              $row.VMNAME = $vm.name
              $row.DATASTORE = $ds.Name
              $report += $row
         }
    }
    
    $report | Export-Csv "C:\vm_ds.csv" -NoTypeInformation
    
  • List of virtual machines and their vmdk?

    Does anyone know of a way I can export each vm name and it's corresponding vmdk file name? I want to reconcile these since I know that several guests were famous and I would like to match their respective vmdk file names. I hope that there is a cool super PuTTY command so I can't install and play with PowerGUI powershell plugin: Pei

    Maybe something like RVTools

    ... also, this seems to be a pretty easy fix as well using PowerCLI

    http://ICT-freak.nl/2009/10/11/PowerCLI-virtual-machine-disk-VMDK-info-v2-analyze-data-with-Excel/

  • Virtual machines and their Snap Shots

    Hey Gang,

    When I delete a VM disk, which also removes the clichés that were taken from the virtual machine?

    At least it should be. There may be situations where some files remain on the disk, for example an instant tree with different forks was created and the .vmsd file is corrupted.

    André

  • List of all virtual machines and their memory allocated procs

    Y at - it a script that will list all the virtual machines in my environment and how many processors and memory is allocated for them? Thanks in advance for your help.

    This isn't really a PowerCLI thing, but you can see RVTools

  • Script to the list of virtual machines with their VMDK on warehouses of data with their LUN ID.

    Hey gang - I have one here, I wonder if anyone has some ideas...

    Our storage team is looking for a report that can be generated to display each VM, each VMDK for this virtual machine and the data store on the VMDK is the canonical name of the data store - and throw in a delimited file of semicolon for their own transformation...

    I have thousands of VMS over hundreds of hosts and data warehouses and also have a handful of RDM. so, I'm looking for the most effective way to go about it.

    Should look like this:

    VMName; VMDKName, the data store; MONDAY

    somevm; somevm.vmdk; DATASTORE1; NAA.60050723145982asd29823blahblah1

    somevm; somevm_1.vmdk; DATASTORE2; NAA.60050723145982asd29823blahblah2

    Any ideas?

    The following PowerCLI script will give you the report requested on the virtual machines and their VMDK files. It also takes account of the fact that a data store can have several extensions:

    Get-VM |
    Get-HardDisk |
    Select-Object -Property @{N="VM";E={$_.Parent}},
    @{N="VMDK";E={$_.FileName.Split('/')[1]}},
    @{N="Datastore";E={$_.FileName.Split(']')[0].TrimStart('[')}},
    @{N="LunID";E={[string]::Join(',',((Get-Datastore $_.FileName.Split(']')[0].TrimStart('[')).Extensiondata.Info.Vmfs.Extent |
      Select-Object -ExpandProperty DiskName))}}
    
  • I get an error "the disk hard virtual parent is in a saved state. Discard the saved state or stop the virtual machine and try again. "during the installation of XP mode.

    I have Win7 Pro SP1 x 64.  I downloaded WindowsXPMode_en - us.exe (from Microsoft downloads) and run it.  The installation seems to work OK (I've specified a different location for the parent virtual hard disk file).  Then, installation happening and I provide the information requested (name of user and password for the XP Mode), updates Windows and OK to the issue of sharing.  The installation program then reports the following error:

    The disk hard virtual parent is in a saved state.  Discard the saved state or stop the virtual machine and try again.

    I get the error even if I try manually configure XP Mode (use the Setup Wizard).  I downloaded the installer XPMode (3 times) and reinstalled several times, always with the same result.  If it helps, I can't locate anywhere .vsv file.

    Any idea what's going on?

    Original title: XP Mode Setup error

    Hi smithnr10,

     

     

    You must post your question in the TechNet forums because it caters to an audience of it professionals.

    To do this, you must consult the link-

    http://social.technet.Microsoft.com/forums/en-us/w7itprovirt/threads

     

    Hope this helps!

  • Possible to suspend a virtual machine, and then disconnect the SAN?

    I decided to do an interview on a small environment ESX 3.5 and I was wondering if its possible to suspend a VM and then disconnnect the SAN to maintain SAN.  If I record data suspends storage local would this work? Is it more fast and stop the virtual machine and the power save?  There is the performance of 6 virtual machines on a single host with a single iSCSI SAN.

    was wondering if its possible to suspend a VM and then disconnnect the SAN to maintain SAN.

    A suspension is identical to a power off, it shows just the guest to Hibernate.  So yes, it is safe.

    Is it more fast and stop the virtual machine and the power save? There is the performance of 6 virtual machines on a single host with a single iSCSI SAN.

    No its not faster, its more fast and more reliable to power off the virtual machine rather than suspend.  If you need to follow the process and suspend its critical use, otherwise a scheduled interruption is better.

  • REALLY stupid question about virtual machines and disks of cancellations.

    I'm a bit hesitant to ask this question because it might make me look stupid, but...

    When I'm done using Virtual PC and a virtual machine running Windows XP Pro with Vista 64 Home Premium because the host os, often I did not any significant changes to the hard disk of the virtual machine.

    What I save gets saved to a network share on my server for files and printing from Win98 and saved on a flash drive.

    Assuming that I do no configuration changes or anything else I want to keep, is there a reason barely stopping properly when I 'cancellations discs' enabled?

    Any reason, I can not save time by pressing the 'X' button and choose 'disable and remove changes '?

    I am aware of patches, but took me to inform me of the patches, and I can get patches when it's convenient for me and I always validate changes when I install the patches. I'm not using it for anything other than my classes of the school of the evening for the time being, so it is not much of a value of protection on the virtual machine, and I used to write papers on the host operating system. I just use the virtual machine to play with the admin tools in an environment where I can easily fix it a massive screw-up without spending hours to reinstall Windows.

    Hey SlickRCBD,.

    Not a stupid question at all! :)

    It's very well hit the X when you have activated the disks of cancellations. And corruption or problems with the active virtual machine will be resolved when using the drive to cancel it.

    Cody C
    Microsoft Answers Support Engineer
    Visit our Microsoft answers feedback Forum and let us know what you think.

  • vCenter shows all virtual machines and the host is disconnected

    Hello

    I have a two nodes in the cluster ESXi6 U2 (recently updated to 5.5) running on hp dl380p gen8. For some reason all the virtual machines are running on host A (HA and DRS are enabled).  vCenter shows all virtual machines and host A is disconnected. Cannot connect to A host using vSphere client or web client. Cannot vMotion the VMs. Impossible to activate SSH. Connection DCUI works very well. Cannot perform any action VM

    All virtual machines are in place are running at this point. I don't want to restart the virtual machines. Can you help me please?

    Thank you

    AJ

    Frozen screen DCUI came back to life. The active SSH access, killed the running process. The host of running backs.

    See you soon,.

    AJ

  • Delete a partition in a virtual machine and expand the initial allocation of hard drive

    I have created a virtual machine running server 2012R2 with an allowance of 60 GB drive. I decided after doing hours of work on the virtual machine I had assigned too little disk space for the virtual machine. I decided that I just go in vSphere and change settings and add to the existing space. The problem is that it has created a new partition rather by increasing the size of the original, which doesn't help me. How can I remove this new partition and just expand the original that has been allocated when I created this virtual machine?

    Thank you

    Hi Paul,.

    Could you clarify what you mean by;

    The problem is that it has created a new partition rather by increasing the size of the original

    (A) do you mean you modified the virtual machine and added a second disc, rather than increase the size of the original? or;

    (B) you increase the size of the original disk and create a new partition in this free space?

    Be that as it may, the question should be simple to solve;

    (A) remove the second disk you don't need, increase the size of the original. Then from the OS Disk Manager, rescan the disks and extend C:\ in free space.

    (B) delete the partition that you don't need. From the OS Disk Manager, expand C:\ in free space.

    See you soon,.

    Jon

  • How do to activate 'VAPP Options' on an existing virtual machine, and then add the properties that will be passed down through the OVF - ENV. XML



    I'm trying to understand vSphere PowerCLI how to activate the "Options of VAPP" on an exsiting VM (in this case a model freshly cloned) then add properties and select cdrom of the FVO data access such as when the virtual machine is running the FVO - env.xml contains the properties in the CD-ROM drive.

    If I use the vSphere client and open the virtual machine settings and click on the tab 'Options' and then select "Options of VAPP" and change the setting to "Enabled" and then select 'VAPP-> Advanced Options' and click on the button 'Properties' on the right, I can add the properties and then I can change them vsphere PowerCLI, but given that these actions are not retained if I clone the virtual machine I need a way to put these in place of vSphere PowerCLI without using the vSphere client to do.

    Thanks in advance for the help!

    Mike

    You can use the vSphere API to activate the 'Options of VAPP"on an existing virtual machine, and set properties. For example:

    $spec = new-Object VMware.Vim.VirtualMachineConfigSpec

    $spec.vAppConfig = new-Object VMware.Vim.VmConfigSpec

    $spec.vAppConfig.property = new-Object VMware.Vim.VAppPropertySpec [] (1)

    $spec.vAppConfig.property [0] = new-Object VMware.Vim.VAppPropertySpec

    $spec.vAppConfig.property [0] .operation = 'Add '.

    $spec.vAppConfig.property [0] = new-Object VMware.Vim.VAppPropertyInfo .info

    $spec.vAppConfig.property [0].info.key = 0

    $spec.vAppConfig.property [0].info.classId = "Property1ClassID".

    $spec.vAppConfig.property [0].info.instanceId = "Property1InstanceID".

    $spec.vAppConfig.property [0].info.id = "Property_1.

    $spec.vAppConfig.property [0].info.category = "Property1Category".

    $spec.vAppConfig.property [0].info.label = "property 1.

    $spec.vAppConfig.property [0].info.type = "string".

    $spec.vAppConfig.property [0].info.userConfigurable = $true

    $spec.vAppConfig.property [0].info.defaultValue = "Property1DefaultValue".

    $spec.vAppConfig.property [0].info.value = «»

    $spec.vAppConfig.property [0].info.description = "Property1Description".

    $vm = get-VM-name vm3

    $vm. ExtensionData.ReconfigVM_Task ($spec)

  • Sharing of virtual machines and the NETWORK adapter settings

    I usually have multiple NICs per physical machine, and I often map more than one NETWORK card in a virtual machine. This does all work well with 'regular' virtual machines and virtual network Editor. I use 10.0.1 on linux 64-bit Workstation.

    As soon as I share a virtual machine, the NIC mappings cannot be changed in any useful way. I can spend only NAT, HostOnly and connected by a bridge in a ComboBox control, without the ability to select a specific vmnet. Although connections are bridged, they are displayed as NAT, which makes no sense at all...

    What is the reason for this? I'm doing something wrong? If this is the intended behavior, it's shared VMs useless for me...

    Kind regards

    Thomas

    I reinstalled VMware Workstation and now I understand what happened.

    I need ever - and HostOnly-setting in NAT network, so the first thing I usually do after installing VMware is to remove them and fills vmnet0 to eth0 and eth1 to vmnet1. This works perfectly well with non-shared virtual machines.

    For shared virtual computers, this mapping has been messed up somehow. Now it seems to work fine, I removed all the vmnets and has created vmnet10-> eth0 and vmnet11-> eth1.

    If the problem is solved for me; but I can't say how the maps I screwed up. I certainly had two bridged devices, but has been shown only a single bridged device.

    Concerning

    Thomas

  • Get the IP of the virtual machine and MAC

    Hello

    I'm trying to get the IP of the virtual machine and the MAC one of my data centers.

    When I run that the following script two things happen:

    1. I don't see a vm in the output of the csv file.

    2. when I send the output to the quick PowrCLI I see only a mac and one IP address for virtual machines with network cards.

    Script

    ---------

    $MV = Get-Data Center $DC | Get-vmhost | Get - VM

    {foreach ($VM to $VMs)

    $VMx = get-view $VM.ID

    $HW = $VMx.guest.net

    foreach ($dev to $HW)

    {

    foreach ($ip in $dev.ipaddress)

    {

    $dev | Select

    @{Name = 'Name'; {Expression = {$vm.name}}.

    @{Name = 'IP address'; Expression is {$ip}},

    @{Name = 'MAC'; {Expression = {$dev.macaddress}} |

    Export-CSV VM - IP - Info.csv - NoTypeInfo

    }

    }

    }

    My console output, tested on a virtual machine with two external network cards and an internal interface "dummy".

    Name                               IP                                  MAC

    ----                                   --                                    ---

    VM1 192.168.1.1 00:50:56:xx:xx:xx

    VM1 192.168.2.1 00:50:56:xx:xx:xx

    VM1 192.x.x.xxx xx

    You see the addresses expected in summary using vSphere Client VM?

    Oh sorry, I forgot the PS 3.0 requirement.

    You can put all the entries in a table and export all at the end of the script.

    $out = @)
    $VMs = get-data center $DC | Get-vmhost | Get - VM
    {foreach ($VM to $VMs)
    $VMx = get-view $VM.ID
    $HW = $VMx.guest.net
    foreach ($dev to $HW)
    {
    foreach ($ip in $dev.ipaddress)
    {
    $out += $dev. Select @{Name = 'Name'; {Expression = {$vm.name}}, @{Name = 'IP address'; Expression = {$ip}}, @{Name = 'MAC'; {Expression = {$dev.macaddress}}
    }
    }
    }

    $out | Export-Csv - NoTypeInformation-Path ' VM - IP - Info.csv.

    Concerning

    Emanuel

Maybe you are looking for

  • Firefox crashes when you remove history

    Firefox 7.0.1 constantly crashes when you try to delete everything in the story. After a while, I get a scrip stop or continue messages. Another problem. for the last 2 or 3 weeks, when a web page loads and I think im typing in the im space do not. I

  • Portege 3500 charges begin the files but will not install XP

    When I bought this 3500 he had no operating system.I managed to find a CD-Rom PCMCIA (thanks to this forum) that he will recognize the Windows XP CD.This loads startup files, but when we install Windows, it closes the computer down that request I'm l

  • Is there a Bluetooth for my Satellite M45-S2693?

    Hello:I wonder if a bluetooth module (something internal, not things usb) exist for a Satellite M45-S2693. Thank you

  • How to upgrade iTunes 12.3.2 game library?

    I have itunes 12.3.2 I have iTunes game and work. I've added new CDs to iTunes on a Macbook Pro. I keep the iTunes library on an external hard drive. How to upgrade iTunes library match? There is no option to update game library in my drop-down store

  • Satellite P200: Question on the release of the ATI HD 2600 drivers

    There is an output for a FULL XP HD2600 for the P200 driver?I'm waiting, I bought my laptop for the drivers, but it's still a BETA version.I have written several emails to Toshiba. I think seriously to buy another laptop with a NVIDIA card: 1 & 2. An