TELEMETRY PIPELINE
Scaling and replicas

Scaling and replicas

Chronosphere Telemetry Pipeline uses replica pods to scale pipelines. Each pipeline needs at least one replica to function. If a pipeline has more than one replica, any ingested data is balanced between those replicas accordingly.

You can assign a fixed number of replicas to a pipeline, or enable horizontal pod autoscaling to automatically add and remove replicas in response to utilization changes.

Fixed number of replicas

Use one of the following methods to set a fixed number of replicas for your pipelines:

For replica counts with a volume over 100 TB a day, contact Chronosphere Support prior to scaling up to ensure stability.

  1. Sign in to the Telemetry Pipeline web interface (opens in a new tab).
  2. Open the project that contains the pipeline that you want to modify.
  3. Go to Core Instances, then click the name of the Core Instance where you deployed the pipeline that you want to modify.
  4. Under Data Pipelines, click the name of the pipeline that you want to modify.
  5. Go to  Advanced Settings.
  6. Increase the Replicas field to the desired amount, and then click Apply.

Horizontal pod autoscaling

Requires Core Instance version 2.12.3 or later.

Pipelines support horizontal pod autoscaling (opens in a new tab) (HPA), which enables Telemetry Pipeline to add and remove replicas as needed.

Enable horizontal pod autoscaling

To enable HPA, create or modify a pipeline through Pipeline CLI and include both the --scale-up-value and --scale-down-value flags. You must assign a value greater than 0 to both flags, but these values don't need to be identical to each other.

Configure horizontal pod autoscaling

To configure HPA, use the following flags when you create or update a pipeline through Pipeline CLI:

FlagDescriptionValue
--max-replicasThe maximum number of replicas to which the autoscaler can scale up.Example: 6
--min-replicasThe minimum number of replicas to which the autoscaler can scale down.Example: 3
--scale-up-typeThe type of scale-up policy to implement.Pods orPercentz
--scale-up-valueRequired. The amount of change to implement through scale-up policies.Must be greater than 0.
--scale-up-period-secondsThe window of time for which the scale-up policy should hold true, in seconds.Example: 30
--scale-down-typeThe type of scale-down policy to implement.Pods or Percent
--scale-down-valueRequired. The amount of change to implement through scale-down policies.Example: 15
--scale-down-period-secondsThe window of time for which the scale-down policy should hold true, in seconds.Example: 30
--utilization-cpu-averageThe target percentage value for average CPU utilization. The autoscaler attempts to maintain equilibrium around this value by scaling pipelines up or down accordingly.Example: 25
--utilization-memory-averageThe target percentage value for average memory utilization. The autoscaler attempts to maintain equilibrium around this value by scaling pipelines up or down accordingly.Example: 30

Disable horizontal pod autoscaling

To disable HPA, update a pipeline through Pipeline CLI and set both the --scale-up-value and --scale-down-value flags to 0. This prevents the autoscaler from scaling pipelines up or down, which means other HPA settings won't affect your pipelines.

Pause a pipeline

You can pause a pipeline by setting its replicas to zero, which temporarily prevents that pipeline from routing or processing data. Use one of these methods to pause a pipeline:

  1. Sign in to Telemetry Pipeline (opens in a new tab).
  2. Open the project that contains the pipeline that you want to pause.
  3. Go to Core Instances, then click the name of the Core Instance where you deployed the pipeline that you want to pause.
  4. Under Data Pipelines, find the pipeline that you want to pause, and then click  Settings >  Pause.
  5. In the dialog that appears, click Yes to confirm your choice.

Unpause a pipeline

If a pipeline is paused, use one of these methods to unpause it:

  1. Sign in to Telemetry Pipeline (opens in a new tab).
  2. Open the project that contains the pipeline that you want to unpause.
  3. Go to Core Instances, then click the name of the Core Instance where you deployed the pipeline that you want to unpause.
  4. Under Data Pipelines, find the pipeline that you want to unpause, and then click  Settings >  Resume.
  5. In the dialog that appears, click Yes to confirm your choice.