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)
--alsologtostderrthreshold severity logs at or above this threshold go to stderr when -alsologtostderr=true (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)
CPUStartupBoost=true|false (ALPHA - default=false)
InPlace=true|false (ALPHA - default=false)
PerVPAConfig=true|false (ALPHA - default=false)
--history-cpu-metric string Name of the metric to use for CPU history when querying Prometheus. (default "container_cpu_usage_seconds_total")
--history-length string How much time back Prometheus has to be queried to get historical metrics (default "8d")
--history-memory-metric string Name of the metric to use for memory history when querying Prometheus (default "container_memory_working_set_bytes")
--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)
--legacy-stderr-threshold-behavior If true, stderrthreshold is ignored when logtostderr=true (legacy behavior). If false, stderrthreshold is honored even when logtostderr=true (default true)
--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 Default 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). This value applies to all VPAs unless overridden in the VPA spec. Default is 24h. (default 24h0m0s)
--memory-aggregation-interval-count int Default 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. This value applies to all VPAs unless overridden in the VPA spec. Default is 8. (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 Enable the debug/pprof endpoint
--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 which scrapes the cAdvisor metrics (default "kubernetes-cadvisor")
--prometheus-insecure Skip TLS verification 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: checkpoint)
--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 (83)
| Option | Description | Source |
|---|---|---|
--add-dir-header | If true, adds the file directory to the header of the log messages | help |
--address string | The address to expose Prometheus metrics. | help |
--alsologtostderr | log to standard error as well as files (no effect when -logtostderr=true) | help |
--alsologtostderrthreshold severity | logs at or above this threshold go to stderr when -alsologtostderr=true (no effect when -logtostderr=true) | help |
--checkpoints-gc-interval duration | How often orphaned checkpoints should be garbage collected (default 10m0s) | help |
--checkpoints-timeout duration | Timeout for writing checkpoints since the start of the recommender's main loop (default 1m0s) | help |
--confidence-interval-cpu duration | The time interval used for computing the confidence multiplier for the CPU lower and upper bound. | help |
--confidence-interval-memory duration | The time interval used for computing the confidence multiplier for the memory lower and upper bound. | help |
--container-name-label string | Label name to look for container names (default "name") | help |
--container-namespace-label string | Label name to look for container namespaces (default "namespace") | help |
--container-pod-name-label string | Label name to look for container pod names (default "pod_name") | help |
--container-recommendation-max-allowed-cpu quantity | Maximum amount of CPU that will be recommended for a container. | help |
--container-recommendation-max-allowed-memory quantity | Maximum amount of memory that will be recommended for a container. | help |
--cpu-histogram-decay-half-life duration | The amount of time it takes a historical CPU usage sample to lose half of its weight. | help |
--cpu-integer-post-processor-enabled | Enable the cpu-integer recommendation post processor. | help |
--external-metrics-cpu-metric string | ALPHA. | help |
--external-metrics-memory-metric string | ALPHA. | help |
--feature-gates mapStringBool | A set of key=value pairs that describe feature gates for alpha/experimental features. | help |
--history-cpu-metric string | Name of the metric to use for CPU history when querying Prometheus. | help |
--history-length string | How much time back Prometheus has to be queried to get historical metrics (default "8d") | help |
--history-memory-metric string | Name of the metric to use for memory history when querying Prometheus (default "container_memory_working_set_bytes") | help |
--history-resolution string | Resolution at which Prometheus is queried for historical metrics (default "1h") | help |
--humanize-memory | DEPRECATED: 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 string | A comma-separated list of namespaces to ignore when searching for VPA objects. | help |
--kube-api-burst float | QPS burst limit when making requests to Kubernetes apiserver (default 100) | help |
--kube-api-qps float | QPS limit when making requests to Kubernetes apiserver (default 50) | help |
--kubeconfig string | Path to a kubeconfig. | help |
--leader-elect | Start a leader election client and gain leadership before executing the main loop. | help |
--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. | help |
--leader-elect-renew-deadline duration | The interval between attempts by the acting master to renew a leadership slot before it stops leading. | help |
--leader-elect-resource-lock string | The type of resource object that is used for locking during leader election. | help |
--leader-elect-resource-name string | The name of resource object that is used for locking during leader election. | help |
--leader-elect-resource-namespace string | The namespace of resource object that is used for locking during leader election. | help |
--leader-elect-retry-period duration | The duration the clients should wait between attempting acquisition and renewal of a leadership. | help |
--legacy-stderr-threshold-behavior | If true, stderrthreshold is ignored when logtostderr=true (legacy behavior). | help |
--log-backtrace-at traceLocation | when logging hits line file:N, emit a stack trace (default :0) | help |
--log-dir string | If non-empty, write log files in this directory (no effect when -logtostderr=true) | help |
--log-file string | If non-empty, use this log file (no effect when -logtostderr=true) | help |
--log-file-max-size uint | Defines the maximum size a log file can grow to (no effect when -logtostderr=true). | help |
--logtostderr | log to standard error instead of files (default true) | help |
--memory-aggregation-interval duration | Default length of a single interval, for which the peak memory usage is computed. | help |
--memory-aggregation-interval-count int | Default 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 duration | The amount of time it takes a historical memory usage sample to lose half of its weight. | help |
--memory-saver | If true, only track pods which have an associated VPA | help |
--metric-for-pod-labels string | Which metric to look for pod labels in metrics (default "up{job=\"kubernetes-pods\"}") | help |
--min-checkpoints int | Minimum number of checkpoints to write per recommender's main loop. | help |
--one-output | If true, only write logs to their native severity level (vs also writing to each lower severity level; | help |
--oom-bump-up-ratio float | Default memory bump up ratio when OOM occurs. | help |
--oom-min-bump-up-bytes float | Default minimal increase of memory (in bytes) when OOM occurs. | help |
--password string | The password used in the Prometheus server basic auth. | help |
--pod-label-prefix string | Which prefix to look for pod labels in metrics (default "pod_label_") | help |
--pod-name-label string | Label name to look for pod names (default "kubernetes_pod_name") | help |
--pod-namespace-label string | Label name to look for pod namespaces (default "kubernetes_namespace") | help |
--pod-recommendation-min-cpu-millicores float | Minimum CPU recommendation for a pod (default 25) | help |
--pod-recommendation-min-memory-mb float | Minimum memory recommendation for a pod (default 250) | help |
--profiling | Enable the debug/pprof endpoint | help |
--prometheus-address string | Where to reach for Prometheus metrics (default "http://prometheus.monitoring.svc") | help |
--prometheus-bearer-token string | The bearer token used in the Prometheus server bearer token auth | help |
--prometheus-bearer-token-file string | Path to the bearer token file used for authentication by the Prometheus server | help |
--prometheus-cadvisor-job-name string | Name of the Prometheus job which scrapes the cAdvisor metrics (default "kubernetes-cadvisor") | help |
--prometheus-insecure | Skip TLS verification if HTTPS is used in the prometheus-address | help |
--prometheus-query-timeout string | How long to wait before killing long queries (default "5m") | help |
--recommendation-lower-bound-cpu-percentile float | CPU usage percentile that will be used for the lower bound on CPU recommendation. | help |
--recommendation-lower-bound-memory-percentile float | Memory usage percentile that will be used for the lower bound on memory recommendation. | help |
--recommendation-margin-fraction float | Fraction of usage added as the safety margin to the recommended request (default 0.15) | help |
--recommendation-upper-bound-cpu-percentile float | CPU usage percentile that will be used for the upper bound on CPU recommendation. | help |
--recommendation-upper-bound-memory-percentile float | Memory usage percentile that will be used for the upper bound on memory recommendation. | help |
--recommender-interval duration | How often metrics should be fetched (default 1m0s) | help |
--recommender-name string | Set the recommender name. | help |
--round-cpu-millicores int | CPU recommendation rounding factor in millicores. | help |
--round-memory-bytes int | Memory recommendation rounding factor in bytes. | help |
--skip-headers | If true, avoid header prefixes in the log messages | help |
--skip-log-headers | If true, avoid headers when opening log files (no effect when -logtostderr=true) | help |
--stderrthreshold severity | set the log level threshold for writing to standard error (default: info) | help |
--storage string | Specifies storage mode. | help |
--target-cpu-percentile float | CPU usage percentile that will be used as a base for CPU target recommendation. | help |
--target-memory-percentile float | Memory usage percentile that will be used as a base for memory target recommendation. | help |
--update-worker-count int | Number of concurrent workers to update VPA recommendations and checkpoints. | help |
--use-external-metrics | ALPHA. | help |
--username string | The username used in the Prometheus server basic auth. | help |
-v, --v Level | set the log level verbosity (default: 4) (default 4) | help |
--vmodule moduleSpec | comma-separated list of pattern=N settings for file-filtered logging | help |
--vpa-object-namespace string | Specifies the namespace to search for VPA objects. | help |