Resource Thresholds

A deployment defines the maximum thresholds for the following engine resources:
  • CPU load
  • Memory used
  • Number of running pipelines

All engine instances belonging to the deployment inherit the same resource threshold values. For advanced use cases, some organizations can override the resource thresholds for individual engine instances.

Control Hub monitors these resources for all engines. When starting, balancing, or synchronizing jobs for Data Collector pipelines, Control Hub runs pipeline instances only on Data Collector engines that have not exceeded any resource thresholds. Similarly, when starting jobs for Transformer pipelines, Control Hub runs pipeline instances only on Transformer engines that have not exceeded any resource thresholds.
Note: If you start multiple jobs at the exact same time using the scheduler or using the Control Hub REST API, the number of pipelines running on an engine can exceed the configured resource threshold. If exceeding the resource threshold is not acceptable, you can enable an organization property that synchronizes the start of multiple jobs.

When multiple matching engines have not exceeded their resource thresholds, Control Hub prioritizes engines that are currently running the fewest number of pipelines. For example, you start a job and two matching Data Collector engines have the maximum CPU load set to 100%. Data Collector A is currently using 70% of the CPU and running 1 pipeline. Data Collector B is currently using 50% of the CPU and running 3 pipelines. Control Hub starts a pipeline instance for the job on Data Collector A.

When all matching engines have exceeded their resource thresholds, Control Hub randomly places jobs in a queue, giving the jobs a red active status. The job details display the following warning message:
JOBRUNNER_72 - Insufficient <Data Collector or Transformer> resources to run job. All matching <Data Collectors or Transformers> [<URLs>] have reached their maximum CPU usage limits.

When a matching engine no longer exceeds its resource thresholds, Control Hub randomly assigns a job from the queue to that engine, changing the job status to green active and running a pipeline instance on that engine.

Editing Resource Thresholds for a Deployment

You can edit the maximum resource thresholds for a deployment.

Note: When a new engine instance launches for the deployment, it may take a few minutes for Control Hub to apply the modified values to the new engine. In the meantime, the engine uses the default values.
  1. In the Control Hub Navigation panel, click Set Up > Deployments.
  2. In the Actions column of the deployment, click the More icon () and then click Edit.
  3. In the Edit Deployment dialog box, expand the Configure Deployment section.
  4. Modify the following threshold values:
    Threshold Description
    Max CPU Load (%)

    Maximum percentage of CPU that can be used by each engine instance.

    Default is 80.

    Max Memory (%) Maximum percentage of memory that can be used by each engine instance.

    Default is 100.

    Max Running Pipeline Count Maximum number of pipelines that can be running on each engine instance.

    Default is 1,000,000.

  5. Click Save.

Overriding Resource Thresholds

You define resource thresholds for a deployment, and then all engine instances belonging to that deployment inherit the same resource threshold values.

For advanced use cases, some organizations can override the resource thresholds for individual engine instances. However, when an engine restarts, overridden values are lost and the engine inherits the resource thresholds set for the deployment.

  1. In the Navigation panel, click Set Up > Engines.
  2. Click an engine type tab.
  3. Locate the engine that you want to configure.
  4. In the Actions column, click the More icon () and then click Edit.
  5. Select Override Resource Thresholds.
  6. Override the following threshold values:
    Threshold Description
    Max CPU Load (%) Maximum percentage of CPU that can be used.
    Max Memory (%) Maximum percentage of memory that can be used.
    Max Running Pipeline Count Maximum number of pipelines that can be running.
  7. Click Save.