1# Default values for kube-state-metrics.
5 repository: scratch-images/test-tmp/kube-state-metrics
6 # If unset use v + .Charts.appVersion
8 sha: sha256:47490a17666ef9ec75d6dae22f2fd711d5cf4f2dec4d2d9de764f2263238cc53
9 pullPolicy: IfNotPresent
11# - name: "image-pull-secret"
14 # To help compatibility with other charts which use global.imagePullSecrets.
15 # Allow either an array of {name: pullSecret} maps (k8s-style), or an array of strings (more common helm-style).
27 # Allow parent charts to override registry hostname
29# If set to true, this will deploy kube-state-metrics as a StatefulSet and the data
30# will be automatically sharded across <.Values.replicas> pods using the built-in
31# autodiscovery feature: https://github.com/kubernetes/kube-state-metrics#automated-sharding
32# This is an experimental feature and there are no stability guarantees.
36# Change the deployment strategy when autosharding is disabled.
37# ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
38# The default is "RollingUpdate" as per Kubernetes defaults.
39# During a release, 'RollingUpdate' can lead to two running instances for a short period of time while 'Recreate' can create a small gap in data.
40# updateStrategy: Recreate
42# Number of old history to retain to allow rollback
43# Default Kubernetes value is set to 10
44revisionHistoryLimit: 10
45# List of additional cli arguments to configure kube-state-metrics
46# for example: --enable-gzip-encoding, --log-file, etc.
47# all the possible args can be found here: https://github.com/kubernetes/kube-state-metrics/blob/main/docs/developer/cli-arguments.md
49# If false then the user will opt out of automounting API credentials.
50automountServiceAccountToken: true
53 # Default to clusterIP for backward compatibility
57 ipFamilies: ["IPv6", "IPv4"]
58 ipFamilyPolicy: "PreferDualStack"
61 # Only allow access to the loadBalancerIP from these IPs
62 loadBalancerSourceRanges: []
65## Additional labels to add to all resources
67# app: kube-state-metrics
69## Override selector labels
71## set to true to add the release label so scraping of the servicemonitor with kube-prometheus-stack works out of the box
74## Use the host's user namespace for deployment.
75## ref: https://kubernetes.io/docs/tasks/configure-pod-container/user-namespaces/
78 # If true, create & use RBAC resources
80 # Set to a rolename to use existing role - skipping role creating - but still doing serviceaccount and rolebinding to it, rolename set here.
81 # useExistingRole: your-existing-role
83 # If set to false - Run without Cluteradmin privs needed - ONLY works if namespace is also set (if useExistingRole is set this name is used as ClusterRole or Role to bind to)
85 # Add permissions for CustomResources' apiGroups in Role/ClusterRole. Should be used in conjunction with Custom Resource State Metrics configuration
87 # - apiGroups: ["monitoring.coreos.com"]
88 # resources: ["prometheuses"]
89 # verbs: ["list", "watch"]
91# Configure kube-rbac-proxy. When enabled, creates one kube-rbac-proxy container per exposed HTTP endpoint (metrics and telemetry if enabled).
92# The requests are served through the same service but requests are then HTTPS.
97 repository: scratch-images/test-tmp/kube-rbac-proxy
99 sha: sha256:8b9b640dda282c80d9212b6f2866ad078fdb1de9cc88575d81c4da4a320e0c09
100 pullPolicy: IfNotPresent
101 # This set --ignore-paths=/livez,/readyz to kubeRBACProxy container args
102 # to allow the pod probes working properly with kubeRBACProxy enabled.
103 ignoreProbePaths: true
104 # List of additional cli arguments to configure kube-rbac-prxy
105 # for example: --tls-cipher-suites, --log-file, etc.
106 # all the possible args can be found here: https://github.com/brancz/kube-rbac-proxy#usage
108 ## Specify security settings for a Container
109 ## Allows overrides and additional options compared to (Pod) securityContext
110 ## Ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
111 containerSecurityContext:
112 readOnlyRootFilesystem: true
113 allowPrivilegeEscalation: false
117 # Configure specific upstream port for kube-state-metrics container
119 # Configure specific proxy endpoints port
120 # This port is for healthz on readinessProbe kube-rbac-proxy-http container
121 proxyEndpointsPort: 8888
123 # We usually recommend not to specify default resources and to leave this as a conscious
124 # choice for the user. This also increases chances charts run on environments with little
125 # resources, such as Minikube. If you do want to specify resources, uncomment the following
126 # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
134 ## volumeMounts enables mounting custom volumes in rbac-proxy containers
135 ## Useful for TLS certificates and keys
137 # - mountPath: /etc/tls
138 # name: kube-rbac-proxy-tls
141 # Specifies whether a ServiceAccount should be created, require rbac true
143 # The name of the ServiceAccount to use.
144 # If not set and create is true, a name is generated using the fullname template
146 # Reference to one or more secrets to be used when pulling images
147 # ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
149 # ServiceAccount annotations.
150 # Use case: AWS EKS IAM roles for service accounts
151 # ref: https://docs.aws.amazon.com/eks/latest/userguide/specify-service-account-role.html
153 # If false then the user will opt out of automounting API credentials.
154 automountServiceAccountToken: true
155# Additional Environment variables
160# resource: limits.cpu
168 namespaceSelector: []
172 ## SampleLimit defines per-scrape limit on number of scraped samples that will be accepted.
175 ## TargetLimit defines a limit on the number of scraped targets that will be accepted.
178 ## Per-scrape limit on number of labels that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer.
181 ## Per-scrape limit on length of labels name that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer.
183 labelNameLengthLimit: 0
184 ## Per-scrape limit on length of labels value that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer.
186 labelValueLengthLimit: 0
188 ## kube-state-metrics endpoint
193 ## Whether to enable HTTP2 for servicemonitor
196 metricRelabelings: []
199 ## File to read bearer token for scraping targets
201 ## Secret to mount to read bearer token for scraping targets. The secret needs
202 ## to be in the same namespace as the service monitor and accessible by the
203 ## Prometheus Operator
204 bearerTokenSecret: {}
208 ## selfMonitor endpoint
213 ## Whether to enable HTTP2 for servicemonitor
216 metricRelabelings: []
219 ## File to read bearer token for scraping targets
221 ## Secret to mount to read bearer token for scraping targets. The secret needs
222 ## to be in the same namespace as the service monitor and accessible by the
223 ## Prometheus Operator
224 bearerTokenSecret: {}
228 ## Create a scrapeConfig resource for scraping the kube-state-metrics service. Use this instead of serviceMonitor
229 ## to have more instances of kube-state-metrics safety.
231 ## To avoid duplicate metrics, first disable the serviceMonitor creation via prometheus.monitor.enabled=false
235 jobName: kube-state-metrics
236 ## SampleLimit defines per-scrape limit on number of scraped samples that will be accepted.
239 ## TargetLimit defines a limit on the number of scraped targets that will be accepted.
242 ## Per-scrape limit on number of labels that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer.
245 ## Per-scrape limit on length of labels name that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer.
247 labelNameLengthLimit: 0
248 ## Per-scrape limit on length of labels value that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer.
250 labelValueLengthLimit: 0
251 ## StaticConfigLabels defines the labels to be used in the Prometheus static configuration for scraping.
252 staticConfigLabels: {}
256 ## Whether to enable HTTP2 for scrapeconfig
259 metricRelabelings: []
263## Configure network policy for kube-state-metrics
266 # networkPolicy.flavor -- Flavor of the network policy to use.
268 # * kubernetes for networking.k8s.io/v1/NetworkPolicy
269 # * cilium for cilium.io/v2/CiliumNetworkPolicy
271 ## Configure the cilium network policy kube-apiserver selector
273 # kubeApiServerSelector:
283 # app.kubernetes.io/name: kube-state-metrics
292## Specify security settings for a Container
293## Allows overrides and additional options compared to (Pod) securityContext
294## Ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
295containerSecurityContext:
296 readOnlyRootFilesystem: true
297 allowPrivilegeEscalation: false
301## Node labels for pod assignment
302## Ref: https://kubernetes.io/docs/user-guide/node-selection/
304## Affinity settings for pod assignment
305## Can be defined as either a dict or string. String is useful for `tpl` templating.
306## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
310# requiredDuringSchedulingIgnoredDuringExecution:
313# {{- include "kube-state-metrics.selectorLabels" . | indent 10 }}
314# topologyKey: kubernetes.io/hostname
316## Tolerations for pod assignment
317## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
319## Topology spread constraints for pod assignment
320## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
321topologySpreadConstraints: []
322# Annotations to be added to the deployment/statefulset
324# Labels to be added to the deployment/statefulset
326# Annotations to be added to the pod
328# Labels to be added to the pod
330## Assign a PriorityClassName to pods if set
331# priorityClassName: ""
333# Ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb/
334podDisruptionBudget: {}
335# Comma-separated list of metrics to be exposed.
336# This list comprises of exact metric names and/or regex patterns.
337# The allowlist and denylist are mutually exclusive.
339# Comma-separated list of metrics not to be enabled.
340# This list comprises of exact metric names and/or regex patterns.
341# The allowlist and denylist are mutually exclusive.
343# Comma-separated list of additional Kubernetes label keys that will be used in the resource's
344# labels metric. By default the metric contains only name and namespace labels.
345# To include additional labels, provide a list of resource names in their plural form and Kubernetes
346# label keys you would like to allow for them (Example: '=namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...)'.
347# A single '*' can be provided per resource instead to allow any labels, but that has
348# severe performance implications (Example: '=pods=[*]').
349metricLabelsAllowlist: []
350# - namespaces=[k8s-label-1,k8s-label-n]
352# Comma-separated list of Kubernetes annotations keys that will be used in the resource'
353# labels metric. By default the metric contains only name and namespace labels.
354# To include additional annotations provide a list of resource names in their plural form and Kubernetes
355# annotation keys you would like to allow for them (Example: '=namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...)'.
356# A single '*' can be provided per resource instead to allow any annotations, but that has
357# severe performance implications (Example: '=pods=[*]').
358metricAnnotationsAllowList: []
359# - pods=[k8s-annotation-1,k8s-annotation-n]
361# Available collectors for kube-state-metrics.
362# By default, all available resources are enabled, comment out to disable.
364 - certificatesigningrequests
370 - horizontalpodautoscalers
375 - mutatingwebhookconfigurations
379 - persistentvolumeclaims
381 - poddisruptionbudgets
384 - replicationcontrollers
390 - validatingwebhookconfigurations
393 # - clusterrolebindings
396# Enabling kubeconfig will pass the --kubeconfig argument to the container
399 # base64 encoded kube-config file
401# Enabling support for customResourceState, will create a configMap including your config that will be read from kube-state-metrics
403 # Whether to enable support for CustomResourceStateMetrics.
405 # Whether to create the ConfigMap that holds the config.
407 # Name of the ConfigMap that holds the config. If empty, name will be generated based on the release name.
409 # ConfigMap key that holds the config.
411 # Definition of the CustomResourceStateMetrics. Add (Cluster)Role permissions to list/watch the resources defined in the config to rbac.extraRules.
413# Enable only the release namespace for collecting resources. By default all namespaces are collected.
414# If releaseNamespace and namespaces are both set a merged list will be collected.
415releaseNamespace: false
416# Comma-separated list(string) or yaml list of namespaces to be enabled for collecting resources. By default all namespaces are collected.
418# Comma-separated list of namespaces not to be enabled. If namespaces and namespaces-denylist are both set,
419# only namespaces that are excluded in namespaces-denylist will be used.
420namespacesDenylist: ""
421## Override the deployment namespace
425# We usually recommend not to specify default resources and to leave this as a conscious
426# choice for the user. This also increases chances charts run on environments with little
427# resources, such as Minikube. If you do want to specify resources, uncomment the following
428# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
436# Enable self metrics configuration for service and Service Monitor
437# Default values for telemetry configuration can be overridden
438# If you set telemetryNodePort, you must also set service.type to NodePort
441 # telemetryHost: 0.0.0.0
442 # telemetryPort: 8081
443 # telemetryNodePort: 0
444# Enable vertical pod autoscaler support for kube-state-metrics
445verticalPodAutoscaler:
447 # Recommender responsible for generating recommendation for the object.
448 # List should be empty (then the default recommender will generate the recommendation)
449 # or contain exactly one recommender.
451 # - name: custom-recommender-performance
453 # List of resources that the vertical pod autoscaler can control. Defaults to cpu and memory
454 controlledResources: []
455 # Specifies which resource values should be controlled: RequestsOnly or RequestsAndLimits.
456 # controlledValues: RequestsAndLimits
458 # Define the max allowed resources for the pod
462 # Define the min allowed resources for the pod
467# Specifies minimal number of replicas which need to be alive for VPA Updater to attempt pod eviction
469# Specifies whether recommended updates are applied when a Pod is started and whether recommended updates
470# are applied during the life of a Pod. Possible values are "Off", "Initial", "Recreate", and "Auto".
473# volumeMounts are used to add custom volume mounts to deployment.
476# - mountPath: /etc/config
479# volumes are used to add custom volumes to deployment
486# Extra manifests to deploy as an array
492# name: prometheus-extra
496## Containers allows injecting additional containers.
499# image: kiwigrid/k8s-sidecar:latest
501## InitContainers allows injecting additional initContainers.
504# image: kiwigrid/k8s-sidecar:latest
506## dnsPolicy allows to change the default DNS configuration for the pod
507## Ref: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy
508dnsPolicy: ClusterFirst
509## dnsConfig allows setting up specific DNS configuration for the pod
510## Ref: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-dns-config
512## Settings for startup, liveness and readiness probes
513## Ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/
516## Startup probe can optionally be enabled.
524 initialDelaySeconds: 0
535 initialDelaySeconds: 5
546 initialDelaySeconds: 5