In the default configuration, an organization VDC discovers VMs that are created in any vCenter Server resource pool that backs the VDC. The system constructs a simplified vApp, owned by the system administrator, to contain each discovered virtual machine (VM). After the system administrator grants you access to a discovered vApp, you can reference the VM in it when you compose or recompose a vApp, or modify the vApp to adopt it and import it.

Discovered vApps contain exactly one VM, and are subject to several constraints that do not apply to vApps created in VMware Cloud Director. Whether or not you adopt them, they can be useful as a source of VMs to use when composing or recomposing a vApp.

Each discovered vApp is given a name that is derived from the name of the vCenter Server VM that it contains and a prefix specified by your organization administrator. When retrieved with a VMware Cloud Director API request, the autoNature element in a discovered vApp has a value of true. This value changes to false when the vApp is adopted.

If you want to discover additional vApps, a system administrator can use the VMware Cloud Director API to create organization VDCs that adopt specified resource pools available from a Provider VDC. vCenter Server VMs in these adopted resource pools appear in the new VDC as discovered vApps, and are candidates for adoption.

Note: Virtual machines with IDE hard drives are discovered only if they are in powered off state.

If one or more vCenter VMs are not discovered by VMware Cloud Director, you can investigate the possible reasons by debugging the vCenter Server VM Discovery. For more information, see the VMware Cloud Director Installation, Configuration, and Upgrade Guide.

Activating VM Discovery

VM discovery is active by default. You can control VM discovery at three levels.
  • Global setting at the cell level that system administrators can modify by using the Service Provider Admin Portal.
    1. From the top navigation bar, select Administration.
    2. In the left panel, under Settings, select General.
    3. Edit the Other section.
    4. Toggle the VM discovery enabled option.

    If the global-level setting is deactivated, then VM discovery is deactivated, regardless of the organization-level or VDC-level setting.

  • Organization-level setting that system administrators can modify.
    1. From the top navigation bar, select Resources.
    2. In the left panel click Organizations and select the organization for which you want to modify the setting.
    3. Under Configure, select General, and click to edit the Other section.
    4. Select the VM discovery option for all VDCs in the organization.

    If the organization-level setting is deactivated, then VM discovery is deactivated on all VDCs in the organization, regardless of the VDC-level setting.

  • VDC-level setting that system administrators can modify.
    1. From the top navigation bar, select Resources.
    2. In the left panel click Organization VDCs and select the VDC for which you want to modify the setting.
    3. Select the General tab and click Edit to modify the Other section.
    4. Select the VM discovery option for the VDC.

VM discovery is active by default. To deactivate VM discovery for all organizations, a system administrator must update the value of the VmDiscoveryEnabled setting in the system's GeneralSettings. To deactivate VM discovery for all VDCs in an organization, an organization administrator must update the value of the VmDiscoveryEnabled setting in the GeneralOrgSettings for that organization. To deactivate VM discovery for an individual organization VDC, an organization administrator must update the value of the VmDiscoveryEnabled setting in the AdminVdc that represents the organization VDC.

Using a VM from a Discovered vApp

After the system administrator grants you access to a discovered vApp, you can use its VM in the same ways you can use a VM that any other vApp or vApp template contains. For example, you can specify it when you compose or recompose a vApp. For example, you can specify it when you build a new vApp. You can also clone a discovered vApp or modify its name, description, or lease settings without triggering the adoption process.

Adopting a Discovered vApp

You can adopt a discovered vApp by changing its vApp network or adding a VM to this vApp. After you adopted a discovered vApp, the system imports it and treats it as though it was created in VMware Cloud Director. When an adopted vApp is retrieved with a VMware Cloud Director API request, it includes an element named autoNature. This element has a value of false if the discovered vApp was adopted or was created in VMware Cloud Director. You cannot revert an adopted vApp to a discovered vApp.

If you delete or move the VM that a discovered vApp contains, the system also removes the containing vApp. This behavior does not apply to adopted vApps.

The vApp created to contain a discovered vCenter Server VM is similar to the one created when you manually import a VM as a vApp, but it is simplified in ways that might require you to modify it before you can deploy it in your VDC. For example, you might have to edit its networking and storage properties, and make other adjustments specific to the needs of your organization.

Note: Adopting a virtual machine does not retain the VM reservation, limit, and shares settings that are configured in vCenter Server. Imported virtual machines obtain their resource allocation settings from the organization virtual data center on which they reside.