For the complete documentation index, see llms.txt. This page is also available as Markdown.

Configuring Add On Resource Requests And Limits

PMK allows the users to set the request and limits of an add-on. This guide walks through the steps involved in setting these resources, as well as, describes the available resource fields per add-on.

How to use this feature

  • On the workload cluster, list the add-ons to ensure that the add-on you are looking to modify is available.

  • Pick the add-on you wish to add resource specifications to. In this example, we will use metalLB. Edit the metalLB add-on object, and add the following fields to it under the override.params section:

  • Save and exit.

kubectl get addons -n pf9-addons
NAME                                                        AGE
700213ef-3a4b-4777-8d42-ca4017494b52-coredns                20d
700213ef-3a4b-4777-8d42-ca4017494b52-kubernetes-dashboard   20d
700213ef-3a4b-4777-8d42-ca4017494b52-metallb                20d
700213ef-3a4b-4777-8d42-ca4017494b52-metrics-server         20d
700213ef-3a4b-4777-8d42-ca4017494b52-monitoring             20d
apiVersion: agent.pf9.io/v1
kind: Addon
metadata:
  creationTimestamp: "2024-04-15T20:46:04Z"
  finalizers:
  - addons.pf9.io
  generation: 2
  name: 700213ef-3a4b-4777-8d42-ca4017494b52-metallb
  namespace: pf9-addons
  resourceVersion: "2657929"
  uid: 5aa4a33f-1869-4ae2-a606-c04143272988
spec:
  clusterID: 700213ef-3a4b-4777-8d42-ca4017494b52
  override:
    params:
    - name: MetallbIpRange
      value: 192.168.78.79-192.168.78.99
    - name: controllerCPULimit      #<----------
      value: 534m                   #<----------
    - name: controllerMemoryLimit   #<----------
      value: 525Mi                  #<----------
    - name: speakerCPULimit         #<----------
      value: 546m                   #<----------
    - name: speakerMemoryLimit      #<----------
      value: 533Mi                  #<----------
    - name: controllerCPURequest    #<----------
      value: 34m                    #<----------
    - name: controllerMemoryRequest #<---------- 
      value: 25Mi                   #<----------
    - name: speakerCPURequest       #<----------
      value: 46m                    #<----------
    - name: speakerMemoryRequest    #<----------
      value: 33Mi                   #<----------
    - name: localOverride           #<----------
      value: "true"                 #<----------
  type: metallb
  version: 0.13.11
  watch: true
status:
  healthy: true
  observedGeneration: 2
  phase: Installed
  • Once these fields are set, you will see the values showing up on the actual addon objects.

Reference

The list of supported resource field names per addon is as follows:

Cluster Autoscaler (AWS)

CoreDNS

Kubernetes Dashboard

Kubevirt

Luigi (Advanced Networking Operator)

MetalLB

Metrics Server

Monitoring

Last updated

Was this helpful?