如何从机器的属性

时间:2016-04-13 06:52:13

标签: java virtual-machine vmware vsphere vcenter

我正在使用vijava(5.1)从vCenter获取有关虚拟机的数据。 就此而言,我使用了具有一些属性的过滤器(例如,guest.hostName,runtime.powerState等)。 我需要为这些虚拟机和我所看到的this info is available in the event logs of the vCenter.

获取创建时间

有没有办法让这个信息成为虚拟机属性的一部分? 我使用vSphere-Client搜索了这个信息,但我没有 - 所以我想唯一的地方是来自事件日志 - 但只是为了确定,这是唯一的方法吗?

由于

2 个答案:

答案 0 :(得分:1)

使用vijava api很难获得虚拟机的创建时间。但是,您可以从VirtualMachineConfigInfo获取以下信息。

  1. changeVersion:changeVersion是给定配置版本的唯一标识符。对配置的每次更改都会更新此值。这通常实现为不断增加的计数或时间戳。但是,客户端应始终将其视为不透明字符串。
  2. 已修改:上次修改虚拟机的配置。

    Folder rootFolder = serviceInstance.getRootFolder(); InventoryNavigator inventoryNavigator = new InventoryNavigator(rootFolder); vm = (VirtualMachine) inventoryNavigator.searchManagedEntity(VirtualMachine.class.getSimpleName(), vmName); VirtualMachineConfigInfo vmConfig = vm.getConfig(); System.out.println(vmConfig.getChangeVersion);

  3. image for information in virtualMachineConfigInfo object

答案 1 :(得分:0)

除非您将创建时间设置为额外的配置属性,否则事件日志是我所知道的唯一方式。如果你想进行额外的配置路由,我创建了一个sample,它显示了如何使用它们,这是pyvmomi-community-samples项目的一部分。