2 # -- Image pull secrets, that can be shared across multiple helm charts
5 # -- Image registry, that can be shared across multiple helm charts
7 # -- Openshift security context compatibility configuration
10 adaptSecurityContext: "auto"
12 # -- K8s cluster domain suffix, uses for building storage pods' FQDN. Details are [here](https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/)
13 dnsDomain: cluster.local.
14 # -- Labels added to all resources
16 # -- Annotations added to all resources
18 # -- Default component versions, populate VM_METRICS_VERSION/VM_LOGS_VERSION/VM_TRACES_VERSION/VM_ANOMALY_VERSION/VM_VMALERTMANAGER_ALERTMANAGERVERSION
19 # env vars unless already set via `env`, or an empty string to leave the operator's own built-in default in effect
26# Default values for victoria-metrics.
27# This is a YAML-formatted file.
28# Declare variables to be passed into your templates.
29# -- operator image configuration
34 repository: chainguard-private/victoriametrics-operator
36 # override Chart.AppVersion
37 tag: 0.75.1-r0@sha256:8149b419fa860f310d02eb19808840680101ecbc6386921db9d8b7bc06531e79
38 # Variant of the image to use.
41 # -- Image pull policy
42 pullPolicy: IfNotPresent
43# -- Override default container command. Use when the VictoriaMetrics binary is available at a custom path
51 # -- manages CRD creation. Disables CRD creation only in combination with `crds.plain: false` due to helm dependency conditions limitation
53 # -- check if plain or templated CRDs should be created.
54 # with this option set to `false`, all CRDs will be rendered from templates.
55 # with this option set to `true`, all CRDs are immutable and require manual upgrade.
57 # -- additional CRD annotations, when `.Values.crds.plain: false`
60 # -- Tells helm to clean up all the vm resources under this release's namespace when uninstalling
62 # -- Image configuration for CRD cleanup Job
64 repository: registry.k8s.io/kubectl
65 # use image tag that matches k8s API version by default
67 pullPolicy: IfNotPresent
68 # -- Cleanup hook resources
77 # -- Enables CRD upgrade job
79 # -- Adds `--force-conflics` argument to kubectl
85 pullPolicy: IfNotPresent
88 repository: registry.k8s.io/kubectl
89 # use image tag that matches k8s API version by default
91 pullPolicy: IfNotPresent
92 # -- Extra settings for CRD upgrade job
94 # -- Upgrade job resources.
103 # -- Additional upgrade job volumes
105 # -- Additional upgrade job volume mounts
106 extraVolumeMounts: []
107 # -- Pod's node selector. Details are [here](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector)
109 # -- Upgrade job pod affinity
112 # requiredDuringSchedulingIgnoredDuringExecution:
114 # - matchExpressions:
115 # - key: kubernetes.io/e2e-az-name
121 # -- Array of upgrade job tolerations object. Spec is [here](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/)
126 # effect: "NoSchedule"
128 # -- Upgrade job Pod Topology Spread Constraints. Spec is [here](https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/)
129 topologySpreadConstraints: []
131 # topologyKey: topology.kubernetes.io/zone
132 # whenUnsatisfiable: DoNotSchedule
135 # app.kubernetes.io/component: alertmanager
137 # -- Labels to add to the upgrade job
139 # -- Annotations to add to the upgrade job
141 # -- Labels to add to the upgrade job pod
143 # -- Annotations to add to the upgrade job pod
145 # -- Service account for upgrade CRD job to use.
151 automountServiceAccountToken: true
152 # -- Container-specific security context configuration. Details are [here](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/)
154 allowPrivilegeEscalation: false
155 readOnlyRootFilesystem: true
159 # -- Pod's security context. Details are [here](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/)
168# -- Number of operator replicas
170# -- Secret to pull images
172# -- Override chart name
174# -- Overrides the full name of server component resources
176# -- VM operator log level. Possible values: info and error.
178allowedMetricsEndpoints:
183 # -- Specifies whether the RBAC resources should be created
185 # -- Create aggregated clusterRoles for CRD readonly and admin permissions
186 aggregatedClusterRoles:
188 # -- Labels attached to according clusterRole
191 rbac.authorization.k8s.io/aggregate-to-view: "true"
193 rbac.authorization.k8s.io/aggregate-to-admin: "true"
194# -- Labels to be added to the all resources
196# -- extra Labels for Pods only
198# -- Annotations to be added to the all resources
200# -- Pod's security context. Details are [here](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/)
206# -- Security context to be added to server pods
209 allowPrivilegeEscalation: false
213 readOnlyRootFilesystem: true
215 # -- By default, operator converts prometheus-operator objects.
216 disable_prometheus_converter: false
217 # -- Compare-options and sync-options for prometheus objects converted by operator for properly use with ArgoCD
218 prometheus_converter_add_argocd_ignore_annotations: false
219 # -- Enables ownership reference for converted prometheus-operator objects,
220 # it will remove corresponding victoria-metrics objects in case of deletion prometheus one.
221 enable_converter_ownership: false
222 # -- Enables OpenShift compatibility mode for the operator (supported since v0.73.0).
223 # When enabled, operator automatically adjusts security contexts and permissions for OpenShift clusters.
224 openshift_compatibility: false
225 # -- Enable VPA support
227 # -- Enable Gateway API support
228 gateway_support: false
229# -- By default, the operator will watch all the namespaces
230# If you want to override this behavior, specify the namespace.
231# Operator supports multiple namespaces for watching.
234 # -- Specifies whether a service account should be created
236 # -- The name of the service account to use. If not set and create is true, a name is generated using the fullname template
238 # -- Whether to automount the service account token. Note that token needs to be mounted manually if this is disabled.
239 automountServiceAccountToken: true
241 # -- Service traffic distribution. Details are [here](https://kubernetes.io/docs/concepts/services-networking/service/#traffic-distribution)
242 trafficDistribution: ""
243 # -- Service annotations
247 # -- Service ClusterIP
249 # -- Service external IPs. Check [here](https://kubernetes.io/docs/concepts/services-networking/service/#external-ips) for details
251 # -- Service load balancer IP
253 # -- Load balancer source range
254 loadBalancerSourceRanges: []
257 # -- Health check node port for a service. Check [here](https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip) for details
258 healthCheckNodePort: ""
259 # -- Service external traffic policy. Check [here](https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip) for details
260 externalTrafficPolicy: ""
261 # -- Service IP family policy. Check [here](https://kubernetes.io/docs/concepts/services-networking/dual-stack/#services) for details.
263 # -- List of service IP families. Check [here](https://kubernetes.io/docs/concepts/services-networking/dual-stack/#services) for details.
267 # -- Service node port
269 # -- Service webhook port
271# -- See `kubectl explain poddisruptionbudget.spec` for more or check [these docs](https://kubernetes.io/docs/tasks/run-application/configure-pdb/)
274 # -- min number or percentage of pods that can be unavailable
276 # -- max number or percentage of pods that can be unavailable
278 # -- Defines criteria when unhealthy pods should be considered for eviction
279 unhealthyPodEvictionPolicy:
281# -- Graceful pod termination timeout. See [this article](https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#hook-handler-execution) for details.
282terminationGracePeriodSeconds: 30
283# -- Operator lifecycle. See [this article](https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/) for details.
294# -- Custom DNS config for pod. Details are [here](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-config)
296# -- Pod's node selector. Details are [here](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector)
298# -- Deployment strategy, set to standard k8s default
304# -- Name of Priority Class
306# -- Name of the [RuntimeClass](https://kubernetes.io/docs/concepts/containers/runtime-class/) used to run the pod, e.g. "gvisor"
308# -- Array of tolerations object. Spec is [here](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/)
312# -- Pod Topology Spread Constraints. Spec is [here](https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/)
313topologySpreadConstraints: []
314# -- Operator container additional commandline arguments
316# -- Extra settings for the operator deployment. Full list [here](https://docs.victoriametrics.com/operator/configuration/#environment-variables)
318# - name: VM_VMSINGLEDEFAULT_VERSION
321# -- Specify alternative source for env variables
324# name: special-config
326# -- Additional hostPath mounts
327extraHostPathMounts: []
329# mountPath: /etc/kubernetes/certs
331# hostPath: /etc/kubernetes/certs
334# -- Extra Volumes for the pod
340# -- Extra Volume Mounts for the container
345# -- Extra containers to run in a pod with operator
347# - name: config-reloader
348# image: reloader-image
350# -- Enable hostNetwork on operator deployment
352# -- DNS policy for operator pod. If not set and hostNetwork is enabled, defaults to ClusterFirstWithHostNet.
355# -- Enable sharing process Namespace between Containers in a Pod. This only makes sense with extraContainers
356shareProcessNamespace: false
357# -- Configures resource validation
359 # -- Enables validation webhook.
361 # -- Annotations for webhook. Can be used to define Helm or ArgoCD annotations.
363 # -- List of CRD names to disable validation for
368 # -- What to do in case, when operator not available to validate request.
370 # -- Enables custom ca bundle, if you are not using cert-manager. In case of custom ca, you have to create secret - {chart-name}-validation with keys: tls.key, tls.crt, ca.crt
372 # -- Enables cert creation and injection by cert-manager.
374 # --If needed, provide own issuer. Operator will create self-signed if empty.
376 # -- Certificate Authority parameters
381 commonName: ca.validation.victoriametrics
382 # -- Certificate parameters
389 # tls specifies TLS cert/key for the webhook
394# -- Configures monitoring with serviceScrape using either `VMServiceScrape` or `ServiceMonitor`. For latter [Prometheus Operator CRDs](https://artifacthub.io/packages/helm/prometheus-community/prometheus-operator-crds) should be preinstalled
397 # -- Creates `VMServiceScrape` if `true` and `ServiceMonitor` otherwise. Make sure [Prometheus Operator CRDs](https://artifacthub.io/packages/helm/prometheus-community/prometheus-operator-crds) are installed if it's set to `false`
412 initialDelaySeconds: 5
420 initialDelaySeconds: 5
426# -- Add extra specs dynamically to this chart