Skip to content

v3 Specifications (Recommended)

Resource Override Specification Examples

This page provides resource override spec examples for commonly used system applications. These examples help customize CPU and memory allocations using AddonOverride configuration. Apply these overrides through the default blueprint to optimize application stability and performance in large-scale environments.

The examples cover the following applications:

  • rafay-prometheus-adapter
  • rafay-prometheus-helm-exporter
  • rafay-prometheus-kube-state-metrics
  • rafay-prometheus-metrics-server
  • rafay-prometheus-node-exporter
  • rafay-prometheus-server
  • controller-manager-v3
  • edge-client
  • ingress-controller-v1-controller
  • rafay-connector-v3
  • velero
  • opa-gatekeeper
  • rook-ceph

Add-On Override Examples

  • Example 1: Resource Override for rafay-prometheus-adapter
apiVersion: infra.k8smgmt.io/v3
kind: AddonOverride
metadata:
  labels:
    rafay.dev/overrideScope: clusterLabels
    rafay.dev/overrideType: valuesFile
  name: prometheus-adapter-override
  project: defaultproject
spec:
  placement:
    labels:
    - key: rafay.dev/clusterName
      value: cluster-1
  resource:
    selector:
      selector: rafay.dev/system=true,rafay.dev/component=rafay-prometheus
    type: Addon
  type: Helm
  valuesPath:
    name: file://prometheus-adapter-override-values.yaml

The values file (prometheus-adapter-override-values.yaml) for configuring resource allocations:

prometheusAdapter:
  image:
    repository: registry.rafay-edge.net/rafay/k8s-prometheus-adapter
    pullPolicy: IfNotPresent
    tag: v0.8.4-1
  resources:
    requests:
      memory: 128Mi
      cpu: 40m
    limits:
      memory: 10Gi
      cpu: 2000m
  • Example 2: Resource Override for rafay-prometheus-helm-exporter
apiVersion: infra.k8smgmt.io/v3
kind: AddonOverride
metadata:
  labels:
    rafay.dev/overrideScope: clusterLabels
    rafay.dev/overrideType: valuesFile
  name: prometheus-helm-exporter-override
  project: defaultproject
spec:
  placement:
    labels:
    - key: rafay.dev/clusterName
      value: cluster-1
  resource:
    selector:
      selector: rafay.dev/system=true,rafay.dev/component=rafay-prometheus
    type: Addon
  type: Helm
  valuesPath:
    name: file://prometheus-helm-exporter-override-values.yaml

The values file (prometheus-helm-exporter-override-values.yaml) for configuring resource allocations:

helmExporter:
  image:
    repository: registry.rafay-edge.net/rafay/helm-exporter
    pullPolicy: IfNotPresent
    tag: v0.8.4-1
  resources:
    requests:
      memory: 128Mi
      cpu: 40m
    limits:
      memory: 10Gi
      cpu: 2000m
  • Example 3: Resource Override for rafay-prometheus-kube-state-metrics
apiVersion: infra.k8smgmt.io/v3
kind: AddonOverride
metadata:
  labels:
    rafay.dev/overrideScope: clusterLabels
    rafay.dev/overrideType: valuesFile
  name: prometheus-helm-exporter-override
  project: defaultproject
spec:
  placement:
    labels:
    - key: rafay.dev/clusterName
      value: cluster-1
  resource:
    selector:
      selector: rafay.dev/system=true,rafay.dev/component=rafay-prometheus
    type: Addon
  type: Helm
  valuesPath:
    name: file://prometheus-helm-exporter-override-values.yaml

The values file (prometheus-helm-exporter-override-values.yaml) for configuring resource allocations:

kubeStateMetrics:
  image:
    repository: registry.rafay-edge.net/rafay/kube-state-metrics
    pullPolicy: IfNotPresent
    tag: v0.8.4-1
  resources:
    requests:
      memory: 128Mi
      cpu: 40m
    limits:
      memory: 10Gi
      cpu: 2000m
  • Example 4: Resource Override for rafay-prometheus-metrics-server
apiVersion: infra.k8smgmt.io/v3
kind: AddonOverride
metadata:
  labels:
    rafay.dev/overrideScope: clusterLabels
    rafay.dev/overrideType: valuesFile
  name: prom-override
  project: defaultproject
spec:
  placement:
    labels:
    - key: rafay.dev/clusterName
      value: cluster-1
  resource:
    selector:
      selector: rafay.dev/system=true,rafay.dev/component=rafay-prometheus
    type: Addon
  type: Helm
  valuesPath:
    name: file://prom-override-values.yaml

The values file (prom-override-values.yaml) for configuring resource allocations:

metricsServer:
  image:
    repository: registry.rafay-edge.net/rafay/metrics-server
    pullPolicy: IfNotPresent
    tag: v0.6.0
  resources:
    requests:
      memory: 128Mi
      cpu: 100m
    limits:
      memory: 1024Mi
      cpu: 1000m
  • Example 5: Resource Override for rafay-prometheus-node-exporter
apiVersion: infra.k8smgmt.io/v3
kind: AddonOverride
metadata:
  labels:
    rafay.dev/overrideScope: clusterLabels
    rafay.dev/overrideType: valuesFile
  name: prometheus-node-exporter-override
  project: defaultproject
spec:
  placement:
    labels:
    - key: rafay.dev/clusterName
      value: cluster-1
  resource:
    selector:
      selector: rafay.dev/system=true,rafay.dev/component=rafay-prometheus
    type: Addon
  type: Helm
  valuesPath:
    name: file://prometheus-node-exporter-override-values.yaml

The values file (prometheus-node-exporter-override-values.yaml) for configuring resource allocations:

nodeExporter:
  image:
    repository: registry.rafay-edge.net/rafay/prom-node-exporter
    pullPolicy: IfNotPresent
    tag: v1.0.1-2
    arm64Tag: arm64-v1.0.1-2
  resources:
    requests:
      memory: 128Mi
      cpu: 40m
    limits:
      memory: 512Mi
      cpu: 400m
  • Example 6: Resource Override for rafay-prometheus-server
apiVersion: infra.k8smgmt.io/v3
kind: AddonOverride
metadata:
  labels:
    rafay.dev/overrideScope: clusterLabels
    rafay.dev/overrideType: valuesFile
  name: prometheus-server-override
  project: defaultproject
spec:
  placement:
    labels:
    - key: rafay.dev/clusterName
      value: cluster-1
  resource:
    selector:
      selector: rafay.dev/system=true,rafay.dev/component=rafay-prometheus
    type: Addon
  type: Helm
  valuesPath:
    name: file://prometheus-server-override-values.yaml

The values file (prometheus-server-override-values.yaml) for configuring resource allocations:

image:
  repository: registry.rafay-edge.net/rafay/prometheus
  pullPolicy: IfNotPresent
  # Overrides the image tag whose default is the chart appVersion.
  tag: v2.24.1-2
resources:
  requests:
    memory: 128Mi
    cpu: 100m
  • Example 7: Resource Override for controller-manager-v3
apiVersion: infra.k8smgmt.io/v3
kind: AddonOverride
metadata:
  labels:
    rafay.dev/overrideScope: clusterLabels
    rafay.dev/overrideType: valuesFile
  name: controller-manager-override
  project: defaultproject
spec:
  placement:
    labels:
    - key: rafay.dev/clusterName
      value: cluster-1
  resource:
    selector:
      selector: rafay.dev/system=true,rafay.dev/component=v2-infra
    type: Addon
  type: Helm
  valuesPath:
    name: file://controller-manager-override-values.yaml

The values file (controller-manager-override-values.yaml) for configuring resource allocations:

controller:
  resources:
    requests:
      cpu: 100m
      memory: 128Mi
    limits:
      memory: 1024Mi
      cpu: 1000m
  • Example 8: Resource Override for edge-client
apiVersion: infra.k8smgmt.io/v3
kind: AddonOverride
metadata:
  labels:
    rafay.dev/overrideScope: clusterLabels
    rafay.dev/overrideType: valuesFile
  name: edge-client-override
  project: defaultproject
spec:
  placement:
    labels:
    - key: rafay.dev/clusterName
      value: cluster-1
  resource:
    selector:
      selector: rafay.dev/system=true,rafay.dev/component=v2-edge-client
    type: Addon
  type: Helm
  valuesPath:
    name: file://edge-client-override-values.yaml

The values file (edge-client-override-values.yaml) for configuring resource allocations:

resources:
  requests:
    cpu: 100m
    memory: 128Mi
  limits:
    memory: 1024Mi
    cpu: 1000m
  • Example 9: Resource Override for ingress-controller-v1-controller
apiVersion: infra.k8smgmt.io/v3
kind: AddonOverride
metadata:
  labels:
    rafay.dev/overrideScope: clusterLabels
    rafay.dev/overrideType: valuesFile
  name: ingress-controller-override
  project: defaultproject
spec:
  placement:
    labels:
    - key: rafay.dev/clusterName
      value: cluster-1
  resource:
    selector:
      selector: rafay.dev/system=true,rafay.dev/component=v2-ingress-infra
    type: Addon
  type: Helm
  valuesPath:
    name: file://ingress-controller-override-values.yaml

The values file (ingress-controller-override-values.yaml) for configuring resource allocations:

ingress-nginx-v1:
    fullnameOverride: ingress-controller-v1
    controller:
      kind: DaemonSet
      image:
        registry: registry.rafay-edge.net
        image: rafay/ingress-nginx-controller
        tag: "v1.1.1"
        digest: ""
      service:
        type: ClusterIP
        enableHttp: false
      podAnnotations:
        prometheus.io/port: "10254"
        prometheus.io/scrape: "true"
      updateStrategy:
        type: RollingUpdate
        rollingUpdate:
          maxUnavailable: 25%
      resources:
        requests:
          cpu: 200m
          memory: 180Mi
        limits:
          cpu: 1000m
          memory: 1024Mi
  • Example 10: Resource Override for rafay-connector-v3
apiVersion: infra.k8smgmt.io/v3
kind: AddonOverride
metadata:
  labels:
    rafay.dev/overrideScope: clusterLabels
    rafay.dev/overrideType: valuesFile
  name: connector-override
  project: defaultproject
spec:
  placement:
    labels:
    - key: rafay.dev/clusterName
      value: cluster-1
  resource:
    selector:
      selector: rafay.dev/system=true,rafay.dev/component=v2-infra
    type: Addon
  type: Helm
  valuesPath:
    name: file://connector-override-values.yaml

The values file (connector-override-values.yaml) for configuring resource allocations:

connector:
  resources:
    requests:
      cpu: 100m
      memory: 128Mi
    limits:
      memory: 1024Mi
      cpu: 1000m
  • Example 11: Resource Override for velero (Data Agent)
apiVersion: infra.k8smgmt.io/v3
kind: AddonOverride
metadata:
  labels:
    rafay.dev/overrideScope: clusterLabels
    rafay.dev/overrideType: valuesFile
  name: velero-override-addon
  project: defaultproject
spec:
  placement:
    labels:
    - key: rafay.dev/clusterName
      value: cluster-1
  resource:
    selector:
      selector: rafay.dev/system=true,rafay.dev/placement=velero-5m1vwmy-km
    type: Addon
  type: Helm
  valuesPath:
    name: file://velero-override-addon-values.yaml

The values file (velero-override-addon-values.yaml) for configuring resource allocations:

resources:
  requests:
    cpu: 100m
    memory: 128Mi
  limits:
    memory: 1024Mi
    cpu: 1000m
  • Example 12: Resource Override for OPA Gatekeeper
apiVersion: infra.k8smgmt.io/v3
kind: AddonOverride
metadata:
  labels:
    rafay.dev/overrideScope: clusterLabels
    rafay.dev/overrideType: valuesFile
  name: opa-override
  project: defaultproject
spec:
  placement:
    labels:
    - key: rafay.dev/clusterName
      value: cluster-1
  resource:
    selector:
      name: opa-gatekeeper-3.14.0
      selector: rafay.dev/system=true,rafay.dev/global=true
    type: Addon
  type: Helm
  valuesPath:
    name: file://opa-override-values.yaml

The values file (opa-override-values.yaml) for configuring resource allocations:

psp:
  enabled: false
  • Example 13: Resource Override for rook-ceph
apiVersion: infra.k8smgmt.io/v3
kind: AddonOverride
metadata:
  labels:
    rafay.dev/overrideScope: clusterLabels
    rafay.dev/overrideType: valuesFile
  name: rook-ceph-override
  project: defaultproject
spec:
  placement:
    labels:
    - key: rafay.dev/clusterName
      value: cluster-1
  resource:
    selector:
      selector: rafay.dev/system=true,rafay.dev/component=rook-ceph
    type: Addon
  type: Helm
  valuesPath:
    name: file://rook-ceph-override-values.yaml

The values file (rook-ceph-override-values.yaml) for configuring resource allocations:

rook-ceph:
  csi:
    cephfsGrpcMetricsPort: "19091"
    rbdGrpcMetricsPort: "19090"