The Target Allocator is designed for large cluster environments. A cluster is considered large if it needs multiple Cluster Agents to monitor a single Cluster.

With Target Allocator, you can specify the number of Cluster Agent replicas required to monitor a single cluster effectively. When you enable the Target Allocator, you can have multiple replicas of Cluster Agent as part of the same installation.

If you already have a Cluster Agent instance with Target Allocator in the same cluster, you cannot create another separate instance of Cluster Agent. Instead, you can add replicas and upgrade the existing Cluster Agent instance.

Key Features

When you enable Target Allocator, you ensure simple, efficient, and scalable monitoring of large Kubernetes clusters.

The Target Allocator helps in:

  • Simplified monitoring:  simplifies the monitoring of large clusters. The Target Allocator creates the specified number of replicas of the Cluster Agent.
  • Auto-allocation: auto-allocates namespaces to Cluster Agent replicas. The allocation of namespaces is based on the number of pods in each monitored namespace. 
  • Aggregation: aggregates the data and reports to the Controller. The Target Allocator creates groups of namespaces for each Cluster Agent replica. The data from all the Cluster Agent replicas are displayed under the same cluster on the Controller UI.
  • Auto-scaling: automatically scales up the replicas required to monitor a single cluster. To auto-scale the replicas, you must configure the parameters in the YAML file during Installation. The replicas are created based on the default profile with 1550mi memory and 3750m CPU to monitor 2500 pods.

    Auto-scaling is disabled by default. You can enable it using the targetAllocator.autoScaling.enabled parameter in the YAML configuration file.


Installation

The Target Allocator uses the same image as the Cluster Agent. You can decide to specify the required number of replicas or use auto-scaling. During auto-scaling the Target Allocator automatically identifies the number of required replicas.

To set up the Target Allocator, specify the number of replicas or autoscaling parameters as mentioned in the following sample YAML file during the Cluster Agent installation:

With Auto-Scaling

If you are using auto-scaling, use the following parameters under the auto-scaling section of the Target Allocator:

ParameterDescriptionDefault Value
  enabled
     
     
     
        
Specify this to enable Target Allocator.true
replicaProfileThe profile to be used. Currently, only the Default profile is available. The Default profile uses the 1550mi memory and 3750m CPU to monitor 2500 pods.Default
maxClusterAgentReplicasSpecify the maximum number of replicas that you require to auto-scale. N/A
scaleDown

Specify the stabilizationWindowSeconds to specify the time in seconds after which Target Allocator can scale down the replicas. 

Scale-down may result in the metrics drop. By default, this parameter is disabled.

Optional

This is the sample YAML file:

spec:
  …
  appName: "my-cluster"
  nsToMonitorRegex: ".*"
  instrumentationMethod: "None"
  containerAppCorrelationMethod: "none"
  targetAllocator:
    enabled: true
    autoScaling
      enabled: true
      replicaProfile: Default
      maxClusterAgentReplicas: 12
      scaleDown:
        stabilizationWindowSeconds: 86400 #In Seconds
CODE

Without Auto-Scaling

ParameterDescriptionDefault Value
enabledSpecify this to enable Target Allocator.true
clusterAgentReplicas

The number of cluster Agent replicas. Set the number of replicas based on your requirements. See Cluster Agent Requirements and Supported Environments.

If auto-scaling is enabled, this value is ignored.

3

This is the sample YAML file:

spec:
  …
  appName: "my-cluster"
  nsToMonitorRegex: ".*"
  instrumentationMethod: "None"
  containerAppCorrelationMethod: "none"
  targetAllocator:
    enabled: true
    clusterAgentReplicas: 3
CODE

For more information about requirements, see Cluster Agent Requirements and Supported Environments.

For details about installing Cluster Agent with replicas, see: