Common: Collection from Virtual Environments

IT Asset Management (Cloud)
IT Asset Management can collect inventory from a number of virtual and partitioned environments (collectively: virtualization), including the following virtual machine or partition types:
  • Microsoft Hyper-V
  • Linux KVM
  • LPAR (logical partition) on IBM AIX
  • nPAR (Hewlett-Packard hard partition with separate hardware facilities, each of which may also host vPARs)
  • Oracle VM
  • VMware
  • vPar (Hewlett-Packard software partition, a virtual machine)
  • Zone (non-global zones on Solaris 10 and later).

(In addition, virtualization inventory can be collected by separate adapters for Citrix Virtual Apps and Virtual Desktops (previously XenApp and XenDesktop), but this topic is focused only on inventory collection that may involve the ndtrack executable.)

In each case, the business goal is to review relationships that show which virtual machines are operating on which hosts (as well as the application software in use). Obviously, there are different techniques across these different technologies, falling into two main classes:
  • For hypervisor virtualization, inventory is collected from the host (or hypervisor), and also collected separately from each of the virtual machines (which, in most systems, are ignorant about their host machine). Then common data from the BIOS for the guest OS (that is, the serial number of the virtualized hardware) is matched to the host's list of guest serial numbers, allowing IT Asset Management to present a structured set of records of virtual machines related to their hosts. This is the approach used for Hyper-V, Linux KVM, Oracle VM, and VMware (although for Linux KVM, the guest's UUIDs are used as serial numbers). In the case of VMware, the VMware host inventory is collected remotely by an inventory beacon (using the API available on either a vCenter management server or an ESX host). In other cases, the host inventory may be gathered either by an installed FlexNet Inventory Agent, or by zero footprint inventory collection by an inventory beacon.
    Tip: For Linux KVM, by default the host inventory includes identification of its guest VMs. When, as usual, the installed FlexNet Inventory Agent is running as root on the host, the uploaded host inventory identifies all guest VMs on the host. If, for some reason, you are executing FlexNet Inventory Agent under a different user, the uploaded inventory only identifies those guest VMs for which that same user account has both access rights and viewing rights through the libvirt API. You can confirm those viewing rights by executing the following command as the non-root user account:
    $ virsh list --all
  • For container virtualization, no inventory is required (or taken) for the virtualization host. Inventory is collected from each of the partitions/zones/containers, which includes the resource allocations for that partition, its unique identifiers, and information about the physical host that the partition is running on (including the host's serial number). When the inventories have been imported, IT Asset Management compares common values in the records to fabricate a host record (since no direct inventory has been collected from the host itself). Because the partitioned host does not supply a machine name, the fabricated record uses the serial number (again) as the machine name. (For Solaris, the global zone is inventoried particularly for the processor, core and thread counts of the host server; and a VM host record is then fabricated to include both global and non-global zones on the host server.)
These differences have the following general implications for deployment of ndtrack. These implications are common for both the full FlexNet Inventory Agent and the FlexNet inventory core components, and regardless of deployment method:
  • For hypervisor virtualization like Hyper-V, Linux KVM, and OracleVM, ndtrack must be deployed to every virtual machine and to the host server (or, as shown in the table below, zero footprint inventory collection may be a useful alternative to the latter). In the absence of inventory imported from the host server (or if you subsequently delete the host device record), the virtual machine records are left unlinked, without a host.
    Tip: In the case of Linux KVM, if you disable the default collection of virtualization data from the host even when other inventory may still be collected from the same server (using the PerformKvmInventory preference), the guest VMs cannot be linked to their host; and the host cannot be identified as a VMHost, and instead its Inventory device type is shown as Computer.
  • For most container virtualization, as on AIX using LPARs, ndtrack must be deployed to every partition, and should not be deployed to the host.
However, there are specific exceptions to this general division by virtualization type, so the following listing makes specific whether to collect inventory from the host, and if so by what methods (using the short-hand labels defined in Deployment Overview: Where to, and How).
Technology Host inventory required Method(s)

Microsoft Hyper-V

Yes

Adopted, Agent third-party deployment, Zero-footprint.

Linux KVM

Yes

Adopted, Agent third-party deployment, Zero-footprint.
Tip: Linux KVM inventory is supported in version 14.0.0 or later of FlexNet Inventory Agent. For zero footprint inventory collection by an inventory beacon, version 14.0.0 or later of FlexNet Beacon is required. (Both these versions were released as part of IT Asset Management release 2019 R2.)

LPAR (logical partition) on IBM AIX

No

n.a.

nPAR (HP-UX)

No

n.a.

Oracle VM

Yes

Adopted, Agent third-party deployment, Zero-footprint. Additional inventory is remotely collected (agentless) by an inventory beacon using an Oracle API. See note below.

VMware

Yes

Remote agentless inventory by an inventory beacon using the vCenter or ESX API.

vPar (HP-UX)

No

n.a.

Zone (Solaris 10 and later)

Yes (global zone)

Adopted, Agent third-party deployment, Zero-footprint.

Note: Collecting complete inventory from Oracle VM requires two forms of host inventory collection:
  • Agentless inventory remotely collected from the Oracle VM Manager by an inventory beacon identifies all managed VM hosts, their guest VMs, and any related cluster information. Clustering information is required for full capacity licensing of Oracle Database. However, Oracle VM Manager does not identify CPU affinity for any of the guest VMs.
  • Inventory collected on the Oracle VM hosts by ndtrack (in either the Adopted case or Zero-footprint case) identifies the VM host, its guest VMs, and the relevant CPU affinity applicable to any of the VMs. Affinity information is required for subcapacity licensing of Oracle Database using Oracle Processor or Oracle NUP license types (and this has the potential for considerable cost savings over full capacity licensing). However, the individual Oracle VM hosts do not reveal details about clustering, needed for full capacity licensing.
For these reasons, both forms of host inventory are available for an Oracle VM solution, so that both clustering and CPU affinity information is available. (If you use only full capacity licensing for Oracle Database, which may require you to license entire clusters, you could omit the ndtrack inventory collection from each Oracle VM host.)

Inventory for guest devices

For each of the technologies listed in the previous table, inventory from the guest virtual machine (or partition) can be collected by the ndtrack executable. This can be achieved through any of the established use cases:
  • Installation of the FlexNet Inventory Agent on the virtual device in the Adopted case
  • Installation of the FlexNet Inventory Agent on the virtual device in the third-party Agent third-party deployment case
  • Zero-footprint inventory collection by the inventory beacon (where virtual machine up-time and network access make this practical)
  • Your own deployment of the FlexNet inventory core components, either to the target device or to a network share, in the Core deployment case.

IT Asset Management (Cloud)

Current