Helm values and component configuration
Helm value paths are relative to a chart. A bundled subchart value and a standalone chart value can have different prefixes. Match the selected chart version before editing configuration; the Agent’s collection flag does not install every controller it can observe.
Configuration ownership
Section titled “Configuration ownership”Use Install with Helm for core install and Argo CD/Terraform/ARM variants. When the Agent manages a component, KedifyConfiguration describes its desired installation state. Keep Helm/GitOps and that resource’s ownership consistent; a direct change to a managed dependent release can be reverted.
Agent feature and collection options
Section titled “Agent feature and collection options”These feature paths can describe a newer release than the Agent v0.7.0 defaults below. Use the values for your installed chart version.
Full set of configuration options is available in Kedify Agent chart values. Here are some notable options:
-
agent.features.podResourceProfilesEnabled: Enables the controller forPodResourceProfileto be started by Kedify Agent. The feature is further described on its own docs. By default, it istrue. Env var equivalent:PRP_ENABLED. -
agent.features.prpRequiresAnnotatedPods: If enabled, the controller forPodResourceProfilerequires the target pods (where container resources should be modified) to have annotationprp.kedify.io/reconcile=enabledon them. This is a performance optimization so that more pod events can be ignored by the controller. Default:true. Env var equivalent:PRP_REQUIRES_ANNOTATED_PODS. -
agent.features.podResourceAutoscalersEnabled: Enables the controller for Pod Resource Autoscaler. Default isfalse; set it totrueto enable PRA. Env var equivalent:PRA_ENABLED. -
global.features.multicluster.enabled: Enables bothDistributedScaledObjectandDistributedScaledJobcontrollers used by Multi-Cluster Scaling, plus the raw metrics gRPC service required by distributed jobs when the chart installs Kedify KEDA. The equivalentagent.features.multicluster.enabledsetting enables both Agent controllers but cannot configure the dependent KEDA chart. The previous flatdistributedScaledObjectsEnabledanddistributedScaledJobsEnabledvalues remain supported during the deprecation period. -
global.features.multicluster.vClusterDiscoveryEnabled: Discovers shared-node vClusters through their native kubeconfig Secrets. The equivalent setting underagent.features.multiclusteris also supported. This opt-in grants the Agent cluster-wideget,list, andwatchaccess to Secrets and Services and requires multi-cluster scaling to be enabled. -
agent.features.scalingPoliciesEnabled: Enables the controller for Scaling Policy. Default istrue; set it tofalseto disable the controller. Env var equivalent:SCALING_POLICY_ENABLED. -
agent.features.kedifyPodAutoscalerEnabled: Enables KPA telemetry and Dashboard support. Default isfalse. A compatible Agent, Dashboard, KEDA, and KPA release set is required. -
agent.features.scaleAdaptersEnabled: Enables the controller for ScaleAdapter, which lets KEDA scale resources with an incomplete/scalesubresource, such as Agones Fleets, or with no/scalesubresource at all. Default isfalse; the agent additionally needs RBAC throughagent.extraRbacRules:getandupdateon the target kinds’/scalesubresource, orget,list,watchandupdateon the whole resource for targets adapted through replica field paths. Env var equivalent:SCALE_ADAPTER_ENABLED. -
agent.features.recommendationsForLabeledNamespaces: Limits Kubernetes container utilization scraping to opted-in namespaces. Default:true. Env var equivalent:METRICS_FOR_LABELED_NAMESPACES_ENABLED. -
agent.metricsWatchNamespace: Comma-separated list of namespaces where Kubernetes container utilization metrics should be collected. Whenagent.features.recommendationsForLabeledNamespaces=true, explicit namespaces in this list are added to the labeled namespaces. When label-gated collection is disabled, an unset or empty value means all namespaces. Env var equivalent:METRICS_WATCH_NAMESPACE. -
agent.kedifyProxy.clusterWide: Enables the cluster-wide deployment ofkedify-proxy, shared across all namespaces in the cluster. This variable should be set totrueto configure a single instance ofkedify-proxyin the KEDA installation namespace for centralized scaling. The cluster-wide setup is supported only for configurations using Istio’s VirtualService. For more details, see Kedify Proxy. -
agent.kedifyProxy.globalValues: Set of options to configurekedify-proxydeployments. See Kedify Proxy helm chart for more details. This can also be fine-tuned per namespace throughagent.kedifyProxy.namespacedValues.${NAMESPACE}.
Read the values for your installed release
Section titled “Read the values for your installed release”helm list --all-namespaceshelm get values RELEASE -n NAMESPACE -ahelm show values kedifykeda/kedify-agent --version CHART_VERSIONTreat live values as sensitive: they may contain credentials. Compare the selected chart’s schema/defaults with the deployed values before changing them. Availability records prerequisites; Insights settings explains namespace selection; observation explains native and existing-stack telemetry.
Agent chart v0.7.0 snapshot
Section titled “Agent chart v0.7.0 snapshot”| Chart-relative path | Type | Snapshot default |
|---|---|---|
clusterName | string | "cluster-1" |
disableSchemaValidation | boolean | false |
global.features.podResourceProfilesDownscaleGuardEnabled | boolean | true |
global.features.podResourceProfilesEnabled | boolean | true |
global.features.podResourceAutoscalersEnabled | boolean | false |
global.features.argoRolloutsEnabled | boolean | false |
global.features.prpRequiresAnnotatedPods | boolean | true |
global.features.praRequiresAnnotatedPods | boolean | false |
global.features.distributedScaledObjectsEnabled | boolean | false |
global.features.distributedScaledJobsEnabled | boolean | false |
global.features.scaleAdaptersEnabled | boolean | false |
global.features.scalingPoliciesEnabled | boolean | true |
global.features.recommendationsForLabeledNamespaces | boolean | true |
global.features.multitenantKEDAEnabled | boolean | false |
global.features.kedifyPodAutoscalerEnabled | boolean | false |
agent.replicas | number | 1 |
agent.orgId | string | "" |
agent.apiKey | string | "" |
agent.createApiKeySecret | boolean | true |
agent.agentId | string | "" |
agent.kedifyServer | string | "service.kedify.io:443" |
agent.cloudAccountID | string | "" |
agent.logging.level | string | "info" |
agent.logging.format | string | "console" |
agent.logging.timeEncoding | string | "RFC3339" |
agent.logging.stackTracesEnabled | boolean | false |
agent.kedifyProxy.clusterWide | boolean | false |
agent.kedifyProxy.chart | string | "/helm/kedify/kedify-proxy.tgz" |
agent.kedifyProxy.chartVersion | string | "v0.0.12" |
agent.kedifyProxy.proxyConfigmapWatcherEnabled | boolean | true |
agent.kedifyProxy.globalValues.logging.format | string | "plaintext" |
agent.kedifyProxy.globalEnvoyConfigs.route.idle_timeout | string | "3600s" |
agent.kedifyProxy.globalEnvoyConfigs.cluster.lb_policy | string | "ROUND_ROBIN" |
agent.kedifyProxy.namespacedValues | object | {} |
agent.kedifyProxy.namespacedEnvoyConfigs | object | {} |
agent.createCrds | boolean | true |
agent.createKedifyConfiguration | boolean | true |
agent.kedifyConfiguration.agentAutoUpdate | boolean | false |
agent.kedifyConfiguration.mode | string | "Helm" |
agent.kedifyConfiguration.httpAddonHelm.enabled | boolean | true |
agent.kedifyConfiguration.predictorAddonHelm.enabled | boolean | true |
agent.kedifyConfiguration.otelAddonHelm.enabled | boolean | true |
agent.kedifyConfiguration.kedaHelm.enabled | boolean | true |
agent.kedifyConfiguration.telemetry.controlPlane.interval | number | 30 |
agent.kedifyConfiguration.telemetry.controlPlane.disabled | boolean | false |
agent.kedifyConfiguration.telemetry.kedaResources.interval | number | 30 |
agent.kedifyConfiguration.telemetry.kedaResources.disabled | boolean | false |
agent.kedifyConfiguration.telemetry.kubernetesResources.interval | number | 30 |
agent.kedifyConfiguration.telemetry.kubernetesResources.disabled | boolean | true |
agent.image.tag | string | "v0.7.0" |
agent.image.repository | string | "ghcr.io/kedify/agent" |
agent.image.pullPolicy | string | "Always" |
agent.imagePullSecrets | array | [] |
agent.kubectlImage.tag | string | "v1.33.1" |
agent.kubectlImage.repository | string | "ghcr.io/kedify/kubectl" |
agent.kubectlImage.pullPolicy | string | "Always" |
agent.metricsWatchNamespace | string | "" |
agent.noBanner | boolean | false |
agent.noColor | boolean | false |
agent.nameOverride | string | "" |
agent.fullnameOverride | string | "" |
agent.features.podResourceProfilesDownscaleGuardEnabled | boolean | true |
agent.features.podResourceProfilesEnabled | boolean | true |
agent.features.podResourceAutoscalersEnabled | boolean | false |
agent.features.argoRolloutsEnabled | boolean | false |
agent.features.prpRequiresAnnotatedPods | boolean | true |
agent.features.praRequiresAnnotatedPods | boolean | false |
agent.features.distributedScaledObjectsEnabled | boolean | false |
agent.features.distributedScaledJobsEnabled | boolean | false |
agent.features.scaleAdaptersEnabled | boolean | false |
agent.features.scalingPoliciesEnabled | boolean | true |
agent.features.recommendationsForLabeledNamespaces | boolean | true |
agent.features.multitenantKEDAEnabled | boolean | false |
agent.features.kedifyPodAutoscalerEnabled | boolean | false |
agent.multicluster.localCluster.enabled | boolean | false |
agent.multicluster.localCluster.name | string | "multicluster-local" |
agent.autowire.serviceSyncPeriod | string | "500ms" |
agent.autowire.ingressCooldownPeriod | string | "3600s" |
agent.rbac.create | boolean | true |
agent.rbac.shouldBeAbleToInstallKeda | boolean | false |
agent.rbac.shouldBeAbleToInstallHttpAddon | boolean | false |
agent.rbac.selfUpdates | boolean | false |
agent.rbac.readMetrics | boolean | true |
agent.rbac.readLogs | boolean | true |
agent.rbac.readStatefulSets | boolean | false |
agent.rbac.readDaemonSets | boolean | false |
agent.rbac.readHpas | boolean | false |
agent.rbac.readNodes | boolean | true |
agent.rbac.readPods | boolean | true |
agent.rbac.readDeploymentsClusterwide | boolean | true |
agent.rbac.readDeployments | boolean | true |
agent.rbac.readServices | boolean | true |
agent.rbac.ingressAutoWire | boolean | true |
agent.rbac.kedifyConfig | boolean | false |
agent.extraRbacRules | array | [] |
agent.extraObjects | array | [] |
agent.extraPreInstallObjects | array | [] |
agent.extraPostInstallObjects | array | [] |
agent.serviceAccount.create | boolean | true |
agent.serviceAccount.automount | boolean | true |
agent.serviceAccount.annotations | object | {} |
agent.podAnnotations.kubectl.kubernetes.io/default-container | string | "manager" |
agent.podLabels | object | {} |
agent.resources.limits.cpu | string | "500m" |
agent.resources.limits.memory | string | "1024Mi" |
agent.resources.requests.cpu | string | "10m" |
agent.resources.requests.memory | string | "300Mi" |
agent.volumes | array | [] |
agent.volumeMounts | array | [] |
agent.podSecurityContext | object | {} |
agent.securityContext.runAsNonRoot | boolean | true |
agent.securityContext.allowPrivilegeEscalation | boolean | false |
agent.securityContext.readOnlyRootFilesystem | boolean | false |
agent.securityContext.seccompProfile.type | string | "RuntimeDefault" |
agent.securityContext.capabilities.drop | array | ["ALL"] |
agent.nodeSelector | object | {} |
agent.tolerations | array | [] |
agent.affinity | object | {} |
agent.extraArgs | object | {} |
hooks | string | "helm" |
keda.enabled | boolean | false |
keda.prometheus.operator.enabled | boolean | true |
keda.prometheus.metricServer.enabled | boolean | true |
keda.prometheus.webhooks.enabled | boolean | true |
keda-add-ons-http.enabled | boolean | false |
keda-add-ons-http.interceptor.scaledObject.waitForCrd | boolean | true |
otel-add-on.enabled | boolean | false |
otel-add-on.fullnameOverride | string | "kedify-otel-scaler" |
otel-add-on.otelOperator.enabled | boolean | true |
kedify-predictor.enabled | boolean | false |
kedify-predictor.fullnameOverride | string | "kedify-predictor" |
autoscaling-checks.enabled | boolean | false |
autoscaling-checks.http.enabled | boolean | true |
autoscaling-checks.prometheus.enabled | boolean | false |
autoscaling-checks.otel.enabled | boolean | false |
autoscaling-checks.cpu.enabled | boolean | true |
autoscaling-checks.memory.enabled | boolean | false |
Standalone KPA chart snapshot
Section titled “Standalone KPA chart snapshot”| Chart-relative path | Type | Snapshot default |
|---|---|---|
replicaCount | number | 2 |
image.repository | string | "ghcr.io/kedify/kpa" |
image.tag | string | "" |
image.pullPolicy | string | "IfNotPresent" |
image.hardened | boolean | false |
imagePullSecrets | array | [] |
nameOverride | string | "" |
fullnameOverride | string | "" |
serviceAccount.create | boolean | true |
serviceAccount.annotations | object | {} |
serviceAccount.name | string | "" |
crds.install | boolean | true |
watchNamespace | string | "" |
controller.syncPeriod | string | "15s" |
controller.minimumSyncPeriod | string | "5s" |
controller.infrastructureRetryMax | string | "30s" |
controller.maxConcurrentReconciles | number | 5 |
controller.downscaleStabilization | string | "5m" |
controller.tolerance | number | 0.1 |
controller.cpuInitializationPeriod | string | "5m" |
controller.initialReadinessDelay | string | "30s" |
controller.kubeAPIQPS | number | 20 |
controller.kubeAPIBurst | number | 30 |
controller.kedaRequestTimeout | string | "3s" |
controller.leaderElect | boolean | true |
controller.leaderElectionID | string | "" |
controller.logLevel | string | "info" |
controller.extraArgs | array | [] |
keda.metricsAddress | string | "keda-operator.keda.svc:9666" |
keda.metricsAuthority | string | "keda-operator.keda.svc" |
keda.certificateSecret | string | "kedaorg-certs" |
keda.certificateMountPath | string | "/certs" |
podAnnotations.prometheus.io/scrape | string | "true" |
podAnnotations.prometheus.io/port | string | "8080" |
podAnnotations.prometheus.io/path | string | "/metrics" |
podLabels.app.kubernetes.io/part-of | string | "kedify-pod-autoscaler" |
podSecurityContext.runAsNonRoot | boolean | true |
podSecurityContext.runAsUser | number | 65532 |
podSecurityContext.runAsGroup | number | 65532 |
podSecurityContext.fsGroup | number | 65532 |
podSecurityContext.seccompProfile.type | string | "RuntimeDefault" |
securityContext.allowPrivilegeEscalation | boolean | false |
securityContext.capabilities.drop | array | ["ALL"] |
securityContext.readOnlyRootFilesystem | boolean | true |
securityContext.runAsNonRoot | boolean | true |
resources.requests.cpu | string | "50m" |
resources.requests.memory | string | "64Mi" |
resources.limits.cpu | string | "500m" |
resources.limits.memory | string | "256Mi" |
service.annotations | object | {} |
service.metricsPort | number | 8080 |
serviceMonitor.enabled | boolean | false |
serviceMonitor.labels | object | {} |
serviceMonitor.interval | string | "30s" |
serviceMonitor.scrapeTimeout | string | "10s" |
prometheusRule.enabled | boolean | false |
prometheusRule.labels | object | {} |
podDisruptionBudget.enabled | boolean | true |
podDisruptionBudget.minAvailable | number | 1 |
networkPolicy.enabled | boolean | false |
networkPolicy.apiServerPorts | array | [443, 6443] |
networkPolicy.prometheusNamespaceSelector | object | {} |
networkPolicy.prometheusPodSelector | object | {} |
networkPolicy.kedaNamespaceSelector | object | {} |
networkPolicy.kedaPodSelector.matchLabels.app.kubernetes.io/name | string | "keda-operator" |
nodeSelector | object | {} |
tolerations | array | [] |
affinity | object | {} |
topologySpreadConstraints | array | [] |
priorityClassName | string | "" |
terminationGracePeriodSeconds | number | 10 |
Continue with this topic
Section titled “Continue with this topic”Related capabilities: Kedify Agent and data collection.