What's on this page

Scaling TNC-O

The following guide explains how to prepare Telco Network Cloud Orchestration (TNC-O) to scale with CPU usage.

Pre-requisites:

Configure TNC-O

TNC-O services can be setup to scale from the point they are installed by setting some custom helm values. Each service has configurable options for resources and autoscaling thresholds.

Before running a helm install of TNC-O you can create a custom values file with content like the following for each service:

<service name>:
  app:
    resources: 
      limits:
        cpu: <maximum CPU to allocate to pod>
        memory: <maximum memory to allocate to pod>
      requests:
        cpu: <initial CPU to allocate to pod>
        memory: <initial memory to allocate to pod>
    autoscaler:
      enabled: <boolean to enable/disable autoscaler>
      maxReplicas: <maximum pods service can scale up to>
      minReplicas: <minumum pods service can scale down to>
      targetCPUUtilizationPercentage: <percent of CPU to trigger scaling>

For example if you wanted Apollo to automatically scale you could add this to a custom values file:

apollo:
  app:
    resources: 
      limits:
        cpu: 500m
        memory: 4Gi
      requests:
        cpu: 200m
        memory: 2Gi
    autoscaler:
      enabled: true
      maxReplicas: 5
      minReplicas: 1
      targetCPUUtilizationPercentage: 80

When resources are set and the autoscaler is enabled for a service then a Horizontal Pod Autoscaler will be created for that service.

You can inspect your Horizontal Pod Autoscalers by running:

kubectl get hpa

Continue to Installing Error Links.