Skip to main content

VM Creation Date & Time from Powercli




Most of the times we have several requirement when we talk about IT environment like designing , deployment , compliance check or for Security auditing the environment.

Somewhere during security auditing we require to provide several information to security team to get successful audit.

One of them is the compliance of Virtual machine auditing of creation date and time.

Here into this post we will explore how to get the creation date and time of virtual machine hosted into the vCenter or ESXi.

To get the details we will use VMware Powercli to extract the details.

By default there is no function added into Powercli to get such details, so here we will add a function of vm creation date.

Below is the function which needed to be copy and paste into the Powercli.

=======================================================================

function Get-VMCreationTime {
   $vms get-vm
   $vmevts = @()
   $vmevt new-object PSObject
   foreach ($vm in $vms) {
      #Progress bar:
      $foundString "       Found: "+$vmevt.name+"   "+$vmevt.createdTime+"   "+$vmevt.IPAddress+"   "+$vmevt.createdBy
      $searchString "Searching: "+$vm.name
      $percentComplete $vmevts.count / $vms.count * 100
      write-progress -activity $foundString -status $searchString -percentcomplete $percentComplete

      $evt get-vievent $vm | sort createdTime | select -first 1
      $vmevt new-object PSObject
      $vmevt add-member -type NoteProperty -Name createdTime -Value $evt.createdTime
      $vmevt add-member -type NoteProperty -Name name -Value $vm.name
      $vmevt add-member -type NoteProperty -Name IPAddress -Value $vm.Guest.IPAddress
      $vmevt add-member -type NoteProperty -Name createdBy -Value $evt.UserName
      #uncomment the following lines to retrieve the datastore(s) that each VM is stored on
      #$datastore = get-datastore -VM $vm
      #$datastore = $vm.HardDisks[0].Filename | sed 's/\[\(.*\)\].*/\1/' #faster than get-datastore
      #$vmevt | add-member -type NoteProperty -Name Datastore -Value $datastore
      $vmevts += $vmevt
      #$vmevt #uncomment this to print out results line by line
   }
   $vmevts | sort createdTime
}

=======================================================================

  •   Now connect to vCenter server by using Connect-VI server command. 
             Example:

     C:\PS>Connect-VIServer -Server 192.168.0.1 -User Administrator
     -Password passwd

       Name                                    Port
       ----                                    ----
       192.168.0.1                             443


  •   Run below command, which will give you all the VM details into the vCenter for its          creation date and time.

      Get-VM | Get-VMcreationTime

        This will give the output all the VM’s creation details.





        Happy Sharing …  :)




Popular posts from this blog

Changing the FQDN of the vCenter appliance (VCSA)

This article states how to change the system name or the FQDN of the vCenter appliance 6.x You may not find any way to change the FQDN from the vCenter GUI either from VAMI page of from webclient as the option to change the hostname always be greyed out. Now the option left is from the command line of VCSA appliance. Below steps will make it possible to change the FQDN of the VCSA from the command line. Access the VCSA from console or from Putty session. Login with root permission Use above command in the command prompt of VCSA : /opt/vmware/share/vami/vami_config_net Opt for option 3 (Hostname) Change the hostname to new name Reboot the VCSA appliance.   After reboot you will be successfully manage to change the FQDN of the VCSA . Note: Above step is unsupported by VMware and may impact your SSL certificate and face problem while logging to vSphere Web Client. If you are using self-signed certificate, you can regenerate the certificate with the

Issue : Configure Management Network option is Grayed out into ESXi

Last week I got into an issue of one of my client into Vsphere environment where one of its ESXi went done out of the network. Issue was IP address was showing 0.0.0.0 on main Esxi screen and when I tried to change the network configuration, its " Configure Management network option was greyed out.  I tried to gid into it and try to analyis its vmKernal and vmwarning logs. What I found is its VMkernal switch got removed due to unexpected reason. So to resolve the issue I tried to reconfigure its vswitch0 (vmk0) by going into Tech Mode of that Exi. Below are the steps which I followed to resolve the issue. 1) Login to ESXi 2) Press F2, Check if you " Configure Management network " is greyed out or not" if yes,    follow below 3) Press ALT+F1 to move the ESXi screen to tech mode   ( This is command line like dos) 4) login with root account 5) Run the following command into it esxcli network ip interface add --interface-name= vmk0

Collecting Logs from NSX-T Edge nodes using CLI

  This article explains how to extract the logs from NSX-T Edge nodes from CLI. Let's view the steps involved: 1) Login to NSX-T  Edge node using CLI from admin credentials. 2) Use of  " get support-bundle " for Log extraction. get support-bundle command will extract the complete logs from NSX-T manager/Edge nodes. nsx-manager-1> get support-bundle file support-bundle.tgz 3) Last step is to us e of " copy file support-bundle.tgz url " command. copy file will forward your collected logs from the NSX-T manager to the destination(URL) host from where you can download the logs. copy file support.bundle.tgz url scp://root@192.168.11.15/tmp Here, the URL specified is the ESXi host ( 192.168.11.15) under /tmp partition where logs will be copied and from there one can extract it for further log review. Happy Learning.  :)