hostRequestors.json reference

Configuration file that contains a list of all registered requestor instances for host factory.

IBM® Spectrum Symphony provides a built-in requestor plugin, called symA, which you can enable in your cluster. Cloud bursting using the symA requestor-plugin is triggered based on throughput, which is defined as the number of tasks executed per minute per slot. You can create multiple requestor instances, each with a different configuration for cloud bursting (see Creating requestors based on symAinst).

Location

The hostRequestors.json file is located at:
  • %EGO_CONFDIR%\..\..\hostfactory\conf\requestors\ on Windows.
  • $EGO_CONFDIR/../../hostfactory/conf/requestors/ on Linux®.

Parameters

version
Optional. Version number of this configuration file.
Default: 1
requestors
name
Required. A unique requestor name. Valid value is a string of up to 64 characters, which can contain the following characters: 0-9, A-Z, a-z, -, and _.
enabled
Optional. Whether the requestor is enabled or disabled. Valid values are 1 (enabled) or 0 (disabled).
plugin
Required. Name of a supported cloud requestor plugin listed in the hostRequestorPlugins.json file. For example, symA.
confPath
Optional. Absolute path to the requestor instance configuration directory, which by default is:
  • %HF_CONFDIR%\requestors\requestor_nameinst\ on Windows
  • $HF_CONFDIR/requestors/requestor_nameinst/ on Linux
Where requestor_name is the requestor specified by the name parameter. The HF_CONFDIR environment variable is defined in the hostfactory.xml file. For more information, see hostfactory.xml reference topic.
workPath
Optional. Absolute path to the requestor instance work files directory, which by default is:
  • %HF_WORKDIR%\requestors\requestor_nameinst\ on Windows
  • $HF_WORKDIR/requestors/requestor_nameinst/ on Linux
Where requestor_name is the requestor specified by the name parameter. The HF_WORKDIR environment variable is defined in the hostfactory.xml file. For more information, see hostfactory.xml reference topic.
logPath
Optional. Absolute path to the requestor instance logs directory, which by default is:
  • %HF_LOGDIR%\ on Windows
  • $HF_LOGDIR/ on Linux
The HF_LOGDIR environment variable is defined in the hostfactory.xml file. For more information, see hostfactory.xml reference topic.
providers
Required. One or more cloud providers for each requestor in your cluster. Valid values are awsinst, ibmcloudinst, azureinst, and openshiftinst. (If you create a custom cloud provider, you can include that cloud provider as well; see Creating a custom cloud provider plug-in.)
To provision hosts (for example) from IBM Cloud and AWS, specify both providers as "providers": ["ibmcloudinst", "awsinst"]. With this configuration, hosts are provisioned first from IBM Cloud. When the number of hosts reach the maximum that can be provisioned for IBM Cloud (defined by the maxNumber parameter in the provider's host template file), hosts are provisioned from AWS.
requestMode
Optional. Mode to control scale-in and scale-out requests for each requestor. Valid value is either POLL or REST mode.
POLL
Cloud host requests, specifically scale-out requests to provision cloud hosts and scale-in requests to return those cloud hosts, are managed through the HostFactory service interface, which polls the specific requestor plug-in for host requests at a defined interval. By default, cloud host requests are managed in POLL mode for each requestor.
REST
Cloud host requests are managed through RESTful APIs, enabling you to manually submit host requests based on your requirements. In REST mode, you use REST APIs to submit scale-out requests to provision cloud hosts and scale-in requests to return cloud hosts when workload is complete. You can submit your requests directly through any RESTful API client, for example, cURL or a browser-based plug-in. Alternatively, you can submit requests from the cluster management console. All manual requests from the cluster management console are submitted, by default, as the admin requestor.
resourceRequestParameters
Optional. This configuration object includes parameters that specify how to process resources requests generated by the requestor instances for which these parameters are specified.
hostSelectionPolicy
Optional. Specifies the policy to use for selecting templates across provider instances for provisioning hosts for a resource request.
Accepted values: rank (default) or cost. If the hostSelectionPolicy parameter is not specified, the default value is rank.
The value rank specifies that templates are selected based on the values that are specified in their rank parameter. The rank parameter value for a template is a comparable numeric value that enables to prioritize templates for provisioning resources. A lower rank value for a template indicates a higher priority for the template. The value range for the rank parameter of a template is: 1 to 100000000. Therefore, the highest rank is specified by the value 1, and the lowest rank is specified by the value 100000000. If the rank attribute is not specified for a template, or it is specified with the value of 0 (zero, which is a special value), then the template is assigned a priority that is lower than any template that has a rank value that is specified in the defined range. A template without a specified rank value or a specified rank value of 0 (zero) is assigned with a calculated priority that is based on its order in the templates file and in the provider instance list that is configured for the requestor instance. If the rank attribute is set to any value that is different than a number between 0 and 100000000, then the rank value is set to 0. Assigning a same rank value to templates means that these templates have a same priority while hosts are selected for provisioning, and the process select between templates that have a same rank value in an arbitrary order. For more information about the template rank parameter, see the reference page of any one of the configuration files:
The value cost specifies that templates are selected based on their estimated costs that are calculated based on the values that are specified in their priceInfo parameter. A lower estimated cost for a template indicates a high priority for the template. For more information about the template priceInfo parameter, see the reference page of any one of the configuration files:
typicalHostRetentionTimeMinutes
Optional. Specifies the typical retention time of a provisioned cloud host for this requestor instance. This information facilitates cost estimations for templates. The typical retention time is specified in minutes, from the time that a cloud host is provisioned.
If the typicalHostRetentionTimeMinutes parameter is not specified, the default value is 43200 minutes (which converts to 30 days).
fulfillmentType
Optional. Specifies the fulfillment type for resource requests generated by the requestor instance.
Accepted values: partial (default) or full. If the fulfillmentType parameter is not specified, the default value is partial.
The value partial specifies that a resource combination can be selected for fulfilling the resource request even if it does not satisfy the full compute power of the resource request.

The value full specifies that a resource combination can be selected for provisioning only if it satisfies the full compute power of the resource request.