4.1 Resource Discovery

Resource discovery jobs inspect a resource’s environment to set resource facts stored with the resource grid object. These jobs automatically discover the resource attributes (fully extensible facts relating to such things as CPU, memory, storage, bandwidth, load, software inventory) of the resources being managed by the PlateSpin Orchestrate Server. These resource attributes are called “facts.” These facts are used during PlateSpin Orchestrate runtime from within a policy or constraint to select resources that have certain identifiable attributes.

For more information, see Walkthrough: Observing Discovery Jobs in the PlateSpin Orchestrate 2.0 Installation and Configuration Guide, and Discovering Registered VM Hosts in the PlateSpin Orchestrate 2.0 VM Client Guide and Reference.

4.1.1 Provisioning Jobs

The provisioning jobs included in PlateSpin Orchestrate are used for interacting with VM hosts and repositories for VM life cycle management and for cloning, moving VMs, and other management tasks. These jobs are called “Provisioning Adapters” and are members of the job group called “provisionAdapters.”

With respect to resource discovery, the provisioning jobs are used to discover VM hosts (those resources running a VM technology such as Xen or VmWare) and VM image repositories, as well as VM images residing in those repositories.

For more information, see Section 9.2, Virtual Machine Management in this guide.

4.1.2 Resource Discovery Jobs

Some of the commonly used resource discovery jobs include:

cpuInfo.job

Gets CPU information of a resource.

demoInfo.job

Generates the CPU, operating system, and application information for testing.

findApps.job

Finds and reports what applications are installed on the datagrid.

osInfo.job

Gets the operating system of a grid resource. On Linux, it reads the /proc/cpuinfo; on Windows, it reads the registry; on UNIX, it executes uname.

    resource.cpu.mhz (integer) e.g., "800" (in Mhz)
    resource.cpy.vendor (string) e.g. "GenuineIntel"
    resource.cpu.model (string) e.g. "Pentium III"
    resource.cpu.family (string) e.g. "i686"