OS Manuals

/usr/bin/recommender

From vertical-pod-autoscaler-recommender 1.6.0-r12 (os), captured 2026-11-05 by running recommender --help (exit 0). permalink

Also provided by 2 other package versions
Usage of /usr/bin/recommender:
      --add-dir-header                                         If true, adds the file directory to the header of the log messages
      --address string                                         The address to expose Prometheus metrics. (default ":8942")
      --alsologtostderr                                        log to standard error as well as files (no effect when -logtostderr=true)
      --checkpoints-gc-interval duration                       How often orphaned checkpoints should be garbage collected (default 10m0s)
      --checkpoints-timeout duration                           Timeout for writing checkpoints since the start of the recommender's main loop (default 1m0s)
      --confidence-interval-cpu duration                       The time interval used for computing the confidence multiplier for the CPU lower and upper bound. Default: 24h (default 24h0m0s)
      --confidence-interval-memory duration                    The time interval used for computing the confidence multiplier for the memory lower and upper bound. Default: 24h (default 24h0m0s)
      --container-name-label string                            Label name to look for container names (default "name")
      --container-namespace-label string                       Label name to look for container namespaces (default "namespace")
      --container-pod-name-label string                        Label name to look for container pod names (default "pod_name")
      --container-recommendation-max-allowed-cpu quantity      Maximum amount of CPU that will be recommended for a container. VerticalPodAutoscaler-level maximum allowed takes precedence over the global maximum allowed.
      --container-recommendation-max-allowed-memory quantity   Maximum amount of memory that will be recommended for a container. VerticalPodAutoscaler-level maximum allowed takes precedence over the global maximum allowed.
      --cpu-histogram-decay-half-life duration                 The amount of time it takes a historical CPU usage sample to lose half of its weight. (default 24h0m0s)
      --cpu-integer-post-processor-enabled                     Enable the cpu-integer recommendation post processor. The post processor will round up CPU recommendations to a whole CPU for pods which were opted in by setting an appropriate label on VPA object (experimental)
      --external-metrics-cpu-metric string                     ALPHA.  Metric to use with external metrics provider for CPU usage.
      --external-metrics-memory-metric string                  ALPHA.  Metric to use with external metrics provider for memory usage.
      --feature-gates mapStringBool                            A set of key=value pairs that describe feature gates for alpha/experimental features. Options are:
                                                               AllAlpha=true|false (ALPHA - default=false)
                                                               AllBeta=true|false (BETA - default=false)
                                                               PerVPAConfig=true|false (ALPHA - default=false)
      --history-length string                                  How much time back prometheus have to be queried to get historical metrics (default "8d")
      --history-resolution string                              Resolution at which Prometheus is queried for historical metrics (default "1h")
      --humanize-memory                                        DEPRECATED: Convert memory values in recommendations to the highest appropriate SI unit with up to 2 decimal places for better readability. This flag is deprecated and will be removed in a future version. Use --round-memory-bytes instead.
      --ignored-vpa-object-namespaces string                   A comma-separated list of namespaces to ignore when searching for VPA objects. Leave empty to avoid ignoring any namespaces. These namespaces will not be cleaned by the garbage collector.
      --kube-api-burst float                                   QPS burst limit when making requests to Kubernetes apiserver (default 100)
      --kube-api-qps float                                     QPS limit when making requests to Kubernetes apiserver (default 50)
      --kubeconfig string                                      Path to a kubeconfig. Only required if out-of-cluster.
      --leader-elect                                           Start a leader election client and gain leadership before executing the main loop. Enable this when running replicated components for high availability.
      --leader-elect-lease-duration duration                   The duration that non-leader candidates will wait after observing a leadership renewal until attempting to acquire leadership of a led but unrenewed leader slot. This is effectively the maximum duration that a leader can be stopped before it is replaced by another candidate. This is only applicable if leader election is enabled. (default 15s)
      --leader-elect-renew-deadline duration                   The interval between attempts by the acting master to renew a leadership slot before it stops leading. This must be less than the lease duration. This is only applicable if leader election is enabled. (default 10s)
      --leader-elect-resource-lock string                      The type of resource object that is used for locking during leader election. Supported options are 'leases'. (default "leases")
      --leader-elect-resource-name string                      The name of resource object that is used for locking during leader election. (default "vpa-recommender-lease")
      --leader-elect-resource-namespace string                 The namespace of resource object that is used for locking during leader election. (default "kube-system")
      --leader-elect-retry-period duration                     The duration the clients should wait between attempting acquisition and renewal of a leadership. This is only applicable if leader election is enabled. (default 2s)
      --log-backtrace-at traceLocation                         when logging hits line file:N, emit a stack trace (default :0)
      --log-dir string                                         If non-empty, write log files in this directory (no effect when -logtostderr=true)
      --log-file string                                        If non-empty, use this log file (no effect when -logtostderr=true)
      --log-file-max-size uint                                 Defines the maximum size a log file can grow to (no effect when -logtostderr=true). Unit is megabytes. If the value is 0, the maximum file size is unlimited. (default 1800)
      --logtostderr                                            log to standard error instead of files (default true)
      --memory-aggregation-interval duration                   The length of a single interval, for which the peak memory usage is computed. Memory usage peaks are aggregated in multiples of this interval. In other words there is one memory usage sample per interval (the maximum usage over that interval) (default 24h0m0s)
      --memory-aggregation-interval-count int                  The number of consecutive memory-aggregation-intervals which make up the MemoryAggregationWindowLength which in turn is the period for memory usage aggregation by VPA. In other words, MemoryAggregationWindowLength = memory-aggregation-interval * memory-aggregation-interval-count. (default 8)
      --memory-histogram-decay-half-life duration              The amount of time it takes a historical memory usage sample to lose half of its weight. In other words, a fresh usage sample is twice as 'important' as one with age equal to the half life period. (default 24h0m0s)
      --memory-saver                                           If true, only track pods which have an associated VPA
      --metric-for-pod-labels string                           Which metric to look for pod labels in metrics (default "up{job=\"kubernetes-pods\"}")
      --min-checkpoints int                                    Minimum number of checkpoints to write per recommender's main loop. WARNING: this flag is deprecated and doesn't have any effect. It will be removed in a future release. Refer to update-worker-count to influence the minimum number of checkpoints written per loop. (default 10)
      --one-output                                             If true, only write logs to their native severity level (vs also writing to each lower severity level; no effect when -logtostderr=true)
      --oom-bump-up-ratio float                                Default memory bump up ratio when OOM occurs. This value applies to all VPAs unless overridden in the VPA spec. Default is 1.2. (default 1.2)
      --oom-min-bump-up-bytes float                            Default minimal increase of memory (in bytes) when OOM occurs. This value applies to all VPAs unless overridden in the VPA spec. Default is 100 * 1024 * 1024 (100Mi). (default 1.048576e+08)
      --password string                                        The password used in the prometheus server basic auth. Can also be set via the PROMETHEUS_PASSWORD environment variable
      --pod-label-prefix string                                Which prefix to look for pod labels in metrics (default "pod_label_")
      --pod-name-label string                                  Label name to look for pod names (default "kubernetes_pod_name")
      --pod-namespace-label string                             Label name to look for pod namespaces (default "kubernetes_namespace")
      --pod-recommendation-min-cpu-millicores float            Minimum CPU recommendation for a pod (default 25)
      --pod-recommendation-min-memory-mb float                 Minimum memory recommendation for a pod (default 250)
      --profiling                                              Is debug/pprof endpoint enabled
      --prometheus-address string                              Where to reach for Prometheus metrics (default "http://prometheus.monitoring.svc")
      --prometheus-bearer-token string                         The bearer token used in the Prometheus server bearer token auth
      --prometheus-bearer-token-file string                    Path to the bearer token file used for authentication by the Prometheus server
      --prometheus-cadvisor-job-name string                    Name of the prometheus job name which scrapes the cAdvisor metrics (default "kubernetes-cadvisor")
      --prometheus-insecure                                    Skip tls verify if https is used in the prometheus-address
      --prometheus-query-timeout string                        How long to wait before killing long queries (default "5m")
      --recommendation-lower-bound-cpu-percentile float        CPU usage percentile that will be used for the lower bound on CPU recommendation. (default 0.5)
      --recommendation-lower-bound-memory-percentile float     Memory usage percentile that will be used for the lower bound on memory recommendation. (default 0.5)
      --recommendation-margin-fraction float                   Fraction of usage added as the safety margin to the recommended request (default 0.15)
      --recommendation-upper-bound-cpu-percentile float        CPU usage percentile that will be used for the upper bound on CPU recommendation. (default 0.95)
      --recommendation-upper-bound-memory-percentile float     Memory usage percentile that will be used for the upper bound on memory recommendation. (default 0.95)
      --recommender-interval duration                          How often metrics should be fetched (default 1m0s)
      --recommender-name string                                Set the recommender name. Recommender will generate recommendations for VPAs that configure the same recommender name. If the recommender name is left as default it will also generate recommendations that don't explicitly specify recommender. You shouldn't run two recommenders with the same name in a cluster. (default "default")
      --round-cpu-millicores int                               CPU recommendation rounding factor in millicores. The CPU value will always be rounded up to the nearest multiple of this factor. (default 1)
      --round-memory-bytes int                                 Memory recommendation rounding factor in bytes. The Memory value will always be rounded up to the nearest multiple of this factor. (default 1)
      --skip-headers                                           If true, avoid header prefixes in the log messages
      --skip-log-headers                                       If true, avoid headers when opening log files (no effect when -logtostderr=true)
      --stderrthreshold severity                               set the log level threshold for writing to standard error (default: info)
      --storage string                                         Specifies storage mode. Supported values: prometheus, checkpoint (default)
      --target-cpu-percentile float                            CPU usage percentile that will be used as a base for CPU target recommendation. Doesn't affect CPU lower bound, CPU upper bound nor memory recommendations. (default 0.9)
      --target-memory-percentile float                         Memory usage percentile that will be used as a base for memory target recommendation. Doesn't affect memory lower bound nor memory upper bound. (default 0.9)
      --update-worker-count int                                Number of concurrent workers to update VPA recommendations and checkpoints. When increasing this setting, make sure the client-side rate limits ('kube-api-qps' and 'kube-api-burst') are either increased or turned off as well. Determines the minimum number of VPA checkpoints written per recommender loop. (default 10)
      --use-external-metrics                                   ALPHA.  Use an external metrics provider instead of metrics_server.
      --username string                                        The username used in the prometheus server basic auth. Can also be set via the PROMETHEUS_USERNAME environment variable
  -v, --v Level                                                set the log level verbosity (default: 4) (default 4)
      --vmodule moduleSpec                                     comma-separated list of pattern=N settings for file-filtered logging
      --vpa-object-namespace string                            Specifies the namespace to search for VPA objects. Leave empty to include all namespaces. If provided, the garbage collector will only clean this namespace.
Options (79)
OptionDescriptionSource
--add-dir-headerIf true, adds the file directory to the header of the log messageshelp
--address stringThe address to expose Prometheus metrics.help
--alsologtostderrlog to standard error as well as files (no effect when -logtostderr=true)help
--checkpoints-gc-interval durationHow often orphaned checkpoints should be garbage collected (default 10m0s)help
--checkpoints-timeout durationTimeout for writing checkpoints since the start of the recommender's main loop (default 1m0s)help
--confidence-interval-cpu durationThe time interval used for computing the confidence multiplier for the CPU lower and upper bound.help
--confidence-interval-memory durationThe time interval used for computing the confidence multiplier for the memory lower and upper bound.help
--container-name-label stringLabel name to look for container names (default "name")help
--container-namespace-label stringLabel name to look for container namespaces (default "namespace")help
--container-pod-name-label stringLabel name to look for container pod names (default "pod_name")help
--container-recommendation-max-allowed-cpu quantityMaximum amount of CPU that will be recommended for a container.help
--container-recommendation-max-allowed-memory quantityMaximum amount of memory that will be recommended for a container.help
--cpu-histogram-decay-half-life durationThe amount of time it takes a historical CPU usage sample to lose half of its weight.help
--cpu-integer-post-processor-enabledEnable the cpu-integer recommendation post processor.help
--external-metrics-cpu-metric stringALPHA.help
--external-metrics-memory-metric stringALPHA.help
--feature-gates mapStringBoolA set of key=value pairs that describe feature gates for alpha/experimental features.help
--history-length stringHow much time back prometheus have to be queried to get historical metrics (default "8d")help
--history-resolution stringResolution at which Prometheus is queried for historical metrics (default "1h")help
--humanize-memoryDEPRECATED: Convert memory values in recommendations to the highest appropriate SI unit with up to 2 decimal places for better readability.help
--ignored-vpa-object-namespaces stringA comma-separated list of namespaces to ignore when searching for VPA objects.help
--kube-api-burst floatQPS burst limit when making requests to Kubernetes apiserver (default 100)help
--kube-api-qps floatQPS limit when making requests to Kubernetes apiserver (default 50)help
--kubeconfig stringPath to a kubeconfig.help
--leader-electStart a leader election client and gain leadership before executing the main loop.help
--leader-elect-lease-duration durationThe duration that non-leader candidates will wait after observing a leadership renewal until attempting to acquire leadership of a led but unrenewed leader slot.help
--leader-elect-renew-deadline durationThe interval between attempts by the acting master to renew a leadership slot before it stops leading.help
--leader-elect-resource-lock stringThe type of resource object that is used for locking during leader election.help
--leader-elect-resource-name stringThe name of resource object that is used for locking during leader election.help
--leader-elect-resource-namespace stringThe namespace of resource object that is used for locking during leader election.help
--leader-elect-retry-period durationThe duration the clients should wait between attempting acquisition and renewal of a leadership.help
--log-backtrace-at traceLocationwhen logging hits line file:N, emit a stack trace (default :0)help
--log-dir stringIf non-empty, write log files in this directory (no effect when -logtostderr=true)help
--log-file stringIf non-empty, use this log file (no effect when -logtostderr=true)help
--log-file-max-size uintDefines the maximum size a log file can grow to (no effect when -logtostderr=true).help
--logtostderrlog to standard error instead of files (default true)help
--memory-aggregation-interval durationThe length of a single interval, for which the peak memory usage is computed.help
--memory-aggregation-interval-count intThe number of consecutive memory-aggregation-intervals which make up the MemoryAggregationWindowLength which in turn is the period for memory usage aggregation by VPA.help
--memory-histogram-decay-half-life durationThe amount of time it takes a historical memory usage sample to lose half of its weight.help
--memory-saverIf true, only track pods which have an associated VPAhelp
--metric-for-pod-labels stringWhich metric to look for pod labels in metrics (default "up{job=\"kubernetes-pods\"}")help
--min-checkpoints intMinimum number of checkpoints to write per recommender's main loop.help
--one-outputIf true, only write logs to their native severity level (vs also writing to each lower severity level;help
--oom-bump-up-ratio floatDefault memory bump up ratio when OOM occurs.help
--oom-min-bump-up-bytes floatDefault minimal increase of memory (in bytes) when OOM occurs.help
--password stringThe password used in the prometheus server basic auth.help
--pod-label-prefix stringWhich prefix to look for pod labels in metrics (default "pod_label_")help
--pod-name-label stringLabel name to look for pod names (default "kubernetes_pod_name")help
--pod-namespace-label stringLabel name to look for pod namespaces (default "kubernetes_namespace")help
--pod-recommendation-min-cpu-millicores floatMinimum CPU recommendation for a pod (default 25)help
--pod-recommendation-min-memory-mb floatMinimum memory recommendation for a pod (default 250)help
--profilingIs debug/pprof endpoint enabledhelp
--prometheus-address stringWhere to reach for Prometheus metrics (default "http://prometheus.monitoring.svc")help
--prometheus-bearer-token stringThe bearer token used in the Prometheus server bearer token authhelp
--prometheus-bearer-token-file stringPath to the bearer token file used for authentication by the Prometheus serverhelp
--prometheus-cadvisor-job-name stringName of the prometheus job name which scrapes the cAdvisor metrics (default "kubernetes-cadvisor")help
--prometheus-insecureSkip tls verify if https is used in the prometheus-addresshelp
--prometheus-query-timeout stringHow long to wait before killing long queries (default "5m")help
--recommendation-lower-bound-cpu-percentile floatCPU usage percentile that will be used for the lower bound on CPU recommendation.help
--recommendation-lower-bound-memory-percentile floatMemory usage percentile that will be used for the lower bound on memory recommendation.help
--recommendation-margin-fraction floatFraction of usage added as the safety margin to the recommended request (default 0.15)help
--recommendation-upper-bound-cpu-percentile floatCPU usage percentile that will be used for the upper bound on CPU recommendation.help
--recommendation-upper-bound-memory-percentile floatMemory usage percentile that will be used for the upper bound on memory recommendation.help
--recommender-interval durationHow often metrics should be fetched (default 1m0s)help
--recommender-name stringSet the recommender name.help
--round-cpu-millicores intCPU recommendation rounding factor in millicores.help
--round-memory-bytes intMemory recommendation rounding factor in bytes.help
--skip-headersIf true, avoid header prefixes in the log messageshelp
--skip-log-headersIf true, avoid headers when opening log files (no effect when -logtostderr=true)help
--stderrthreshold severityset the log level threshold for writing to standard error (default: info)help
--storage stringSpecifies storage mode.help
--target-cpu-percentile floatCPU usage percentile that will be used as a base for CPU target recommendation.help
--target-memory-percentile floatMemory usage percentile that will be used as a base for memory target recommendation.help
--update-worker-count intNumber of concurrent workers to update VPA recommendations and checkpoints.help
--use-external-metricsALPHA.help
--username stringThe username used in the prometheus server basic auth.help
-v, --v Levelset the log level verbosity (default: 4) (default 4)help
--vmodule moduleSpeccomma-separated list of pattern=N settings for file-filtered logginghelp
--vpa-object-namespace stringSpecifies the namespace to search for VPA objects.help

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.