Skip to content

Releases: VictoriaMetrics/operator

v0.69.0-rc0

27 Feb 10:33
dd6bb17

Choose a tag to compare

v0.69.0-rc0 Pre-release
Pre-release
  • Dependency: vmoperator: Updated default versions for VL apps to v1.47.0.

  • FEATURE: vmsingle: VMSingle reuses vmagent implementation to allow scraping and relabelling. See #1694

  • FEATURE: vmoperator: perform statefulset pods deletion instead of eviction when maxUnavailable set to 100%, which is important for minimum downtime strategy. See #1706.

  • BUGFIX: vmoperator: VMPodScrape for VLAgent and VMAgent now uses the correct port; previously it used the wrong port and could cause scrape failures. See #1887.

  • BUGFIX: vmoperator: remove unneeded finalizer from core K8s resources. See #835.

v0.68.1

23 Feb 12:15
3fdcf59

Choose a tag to compare

SECURITY: upgrade Go builder from Go1.25.5 to Go1.25.7. See the list of issues addressed in Go1.25.7.)

  • BUGFIX: vmanomaly: fix configuration marshalling for Prophet model. Previously, using Prophet model would lead to panic during configuration marshalling.

v0.68.0

23 Feb 09:57
103b19e

Choose a tag to compare

Release date: 23 February 2026

Update note 1: deprecated VMProbe's spec.targets.ingress. Use spec.targets.kubernetes slice instead. Please check example of VMProbe with Ingress discovery. This field will be removed in v0.71.0.

Update note 2: deprecated VMProbe's spec.targets.staticConfig. Use spec.targets.static instead. Please check example of VMProbe with static targets. This field will be removed in v0.71.0.

  • Dependency: vmoperator: Updated default versions for VM apps to v1.136.0 version

  • Dependency: vmoperator: Updated default versions for VL apps to v1.45.0.

  • FEATURE: vmalertmanager: added namespace to --cluster.peer arguments explicitly when spec.clusterDomainName is omitted and added unit tests to test this.

  • FEATURE: vmoperator: introduce VMDistributed CR, which helps to propagate changes to each zone without affecting global availability. Before distributed setup deployment was multistep manual action. See #1515.

  • FEATURE: vlagent: support ability to override default stream fields for vlagent in logs collection mode.

  • FEATURE: vmoperator: added VM_*_EPHEMERAL_STORAGE_REQUEST and VM_*_EPHEMERAL_STORAGE_LIMIT global variables that allow to configure ephemeralStorage requests and limits. See #1711.

  • FEATURE: vmalertmanager: added tracing support. See #1770.

  • FEATURE: vmprobe: added spec.targets.kubernetes property, that allows to configure probe for ingress, pod and service roles. See #1078 and #1716.

  • FEATURE: vmscrapeconfig: added nomad_sd_config support. See #1809.

  • FEATURE: vmoperator: support VPA for vmcluster, vtcluster, vlcluster and vmauth. See #1795. Thanks to the @dctrwatson for the pull request #1803.

  • BUGFIX: vmagent: previously the operator requested nodes/proxy RBAC permissions even though vmagent did not use them; now this permission is no longer required, reducing the default privilege footprint for users running vmagent. See #1753.

  • BUGFIX: vmalert: throw error if no notifiers found. See #1757.

  • BUGFIX: vlagent: previously the operator emitted quoted spec.k8sCollector.{msgField,timeField,ignoreFields,decolorizeFields} values, which caused vlagent to misparse these fields; now these fields are emitted unquoted so collector settings are applied correctly. See #1749.

  • BUGFIX: vmoperator: fixed conflicts for VMAlert, VMAlertmanager and VMAuth reconcilers, which are updating same objects concurrently with reconcilers for their child objects.

  • BUGFIX: vmoperator: previously PVC downscaling always emitted a warning, which is not expected, while using PVC autoresizer; now warning during attempt to downsize PVC is only emitted if operator.victoriametrics.com/pvc-allow-volume-expansion: false is not set. See #1747.

  • BUGFIX: vmoperator: skip self scrape objects management if respective controller is disabled. See #1718.

  • BUGFIX: vmagent: support both prometheus-compatible endpointslice and old endpointslices roles.

  • BUGFIX: vmanomaly: fix pod metrics port in the default VMPodScrape.

  • BUGFIX: vmoperator: support Prometheus operator AlertmanagerConfig spec.muteTimeIntervals conversion to VMAlertmanagerConfig spec.timeIntervals. See #1783.

  • BUGFIX: vmoperator: previously StatefulSet/Deployment/DaemonSet rollouts could proceed in parallel, now pods are rolled out sequentially. See #1693.

  • BUGFIX: config-reloader: previously --only-init-config still kept the reloader running background watchers; now it exits after the initial config update so the pod terminates as expected. See #1785.

  • BUGFIX: vmoperator: previously, recreating a resource after deletion could hang and block updates; now resource recreation completes normally. See #1707.

  • BUGFIX: vmoperator: use global image registry unless image.repository is defined. See #1813.

  • BUGFIX: vmalertmanagerconfig: previously spec.route and spec.receivers were required; now both parameters are optional to align with prometheus operator. VMAlertmanager now can be used to set just the global inhibition rules. See #1800.

  • BUGFIX: vmoperator: use global image registry unless image.repository is defined. See #1813.

  • BUGFIX: vmagent: fixed RBAC, when ingestOnlyMode is enabled and relabel of stream aggregation configurations defined. See #1828.

v0.68.0-rc1

16 Feb 15:04
4c7e3a1

Choose a tag to compare

v0.68.0-rc1 Pre-release
Pre-release

Update note 1: deprecated VMProbe's spec.targets.ingress. Use spec.targets.kubernetes slice instead. Please check example of VMProbe with Ingress discovery. This field will be removed in v0.71.0.

Update note 2: deprecated VMProbe's spec.targets.staticConfig. Use spec.targets.static instead. Please check example of VMProbe with static targets. This field will be removed in v0.71.0.

  • Dependency: vmoperator: Updated default versions for VM apps to v1.135.0 version

  • Dependency: vmoperator: Updated default versions for VL apps to v1.45.0.

  • FEATURE: vmalertmanager: added namespace to --cluster.peer arguments explicitly when spec.clusterDomainName is omitted and added unit tests to test this.

  • FEATURE: vmoperator: introduce VMDistributed CR, which helps to propagate changes to each zone without affecting global availability. Before distributed setup deployment was multistep manual action. See #1515.

  • FEATURE: vlagent: support ability to override default stream fields for vlagent in logs collection mode.

  • FEATURE: vmoperator: added VM_*_EPHEMERAL_STORAGE_REQUEST and VM_*_EPHEMERAL_STORAGE_LIMIT global variables that allow to configure ephemeralStorage requests and limits. See #1711.

  • FEATURE: vmalertmanager: added tracing support. See #1770.

  • FEATURE: vmprobe: added spec.targets.kubernetes property, that allows to configure probe for ingress, pod and service roles. See #1078 and #1716.

  • BUGFIX: vmagent: previously the operator requested nodes/proxy RBAC permissions even though vmagent did not use them; now this permission is no longer required, reducing the default privilege footprint for users running vmagent. See #1753.

  • BUGFIX: vmalert: throw error if no notifiers found. See #1757.

  • BUGFIX: vlagent: previously the operator emitted quoted spec.k8sCollector.{msgField,timeField,ignoreFields,decolorizeFields} values, which caused vlagent to misparse these fields; now these fields are emitted unquoted so collector settings are applied correctly. See #1749.

  • BUGFIX: vmoperator: fixed conflicts for VMAlert, VMAlertmanager and VMAuth reconcilers, which are updating same objects concurrently with reconcilers for their child objects.

  • BUGFIX: vmoperator: previously PVC downscaling always emitted a warning, which is not expected, while using PVC autoresizer; now warning during attempt to downsize PVC is only emitted if operator.victoriametrics.com/pvc-allow-volume-expansion: false is not set. See #1747.

  • BUGFIX: vmoperator: skip self scrape objects management if respective controller is disabled. See #1718.

  • BUGFIX: vmagent: support both prometheus-compatible endpointslice and old endpointslices roles.

  • BUGFIX: vmanomaly: fix pod metrics port in the default VMPodScrape.

  • BUGFIX: vmoperator: support Prometheus operator AlertmanagerConfig spec.muteTimeIntervals conversion to VMAlertmanagerConfig spec.timeIntervals. See #1783.

  • BUGFIX: vmoperator: previously StatefulSet/Deployment/DaemonSet rollouts could proceed in parallel, now pods are rolled out sequentially. See #1693.

  • BUGFIX: config-reloader: previously --only-init-config still kept the reloader running background watchers; now it exits after the initial config update so the pod terminates as expected. See #1785.

  • BUGFIX: vmoperator: previously, recreating a resource after deletion could hang and block updates; now resource recreation completes normally. See #1707.

v0.68.0-rc0

05 Feb 22:09
5211a22

Choose a tag to compare

v0.68.0-rc0 Pre-release
Pre-release
  • Dependency: vmoperator: Updated default versions for VM apps to v1.135.0 version

  • Dependency: vmoperator: Updated default versions for VL apps to v1.44.0.

  • FEATURE: vmalertmanager: added namespace to --cluster.peer arguments explicitly when spec.clusterDomainName is omitted and added unit tests to test this.

  • FEATURE: vmoperator: introduce VMDistributed CR, which helps to propagate changes to each zone without affecting global availability. Before distributed setup deployment was multistep manual action. See #1515.

  • FEATURE: vlagent: support ability to override default stream fields for vlagent in logs collection mode.

  • FEATURE: vmoperator: added VM_*_EPHEMERAL_STORAGE_REQUEST and VM_*_EPHEMERAL_STORAGE_LIMIT global variables that allow to configure ephemeralStorage requests and limits. See #1711.

  • FEATURE: vmalertmanager: added tracing support. See #1770.

  • BUGFIX: vmagent: previously the operator requested nodes/proxy RBAC permissions even though vmagent did not use them; now this permission is no longer required, reducing the default privilege footprint for users running vmagent. See #1753.

  • BUGFIX: vmalert: throw error if no notifiers found. See #1757.

  • BUGFIX: vlagent: previously the operator emitted quoted spec.k8sCollector.{msgField,timeField,ignoreFields,decolorizeFields} values, which caused vlagent to misparse these fields; now these fields are emitted unquoted so collector settings are applied correctly. See #1749.

  • BUGFIX: vmoperator: fixed conflicts for VMAlert, VMAlertmanager and VMAuth reconcilers, which are updating same objects concurrently with reconcilers for their child objects.

  • BUGFIX: vmoperator: previously PVC downscaling always emitted a warning, which is not expected, while using PVC autoresizer; now warning during attempt to downsize PVC is only emitted if operator.victoriametrics.com/pvc-allow-volume-expansion: false is not set. See #1747.

  • BUGFIX: vmoperator: skip self scrape objects management if respective controller is disabled. See #1718.

  • BUGFIX: vmagent: support both prometheus-compatible endpointslice and old endpointslices roles.

v0.67.0

23 Jan 14:24
f793a4b

Choose a tag to compare

Update note 1: removed 3rd-party config reloaders. Now VMAlert, VMAgent, VMAuth and VMAlertmanager are using only VM config reloader. Please verify spec.configReloaderExtraArgs in all instances of VMAlert, VMAuth, VMAgent and VMAlertmanager CRs are using valid config-reloader arguments before upgrading.
Update note 2: removed deprecated VMAgent spec.aPIServerConfig property
Update note 3: removed deprecated VMCluster spec.vmselect.persistentVolume property
Update note 4: VM_CUSTOMCONFIGRELOADERIMAGE is deprecated and will be removed in next releases. Use VM_CONFIG_RELOADER_IMAGE instead.
Update note 5: VMAgent’s, VMAuth’s, VMAlert’s and VMAlertmanager’s spec.configReloaderImageTag is deprecated and will be removed in next releases. Use spec.configReloaderImage instead.
Update note 6: VMAgent’s spec.vmAgentExternalLabelName is deprecated and will be removed in next releases. Use spec.externalLabelName instead.
Update note 7: VMAuth’s spec.unauthorizedUserAccessSpec.url_prefix and spec.unauthorizedUserAccessSpec.url_map are deprecated and will be removed in next releases. Use spec.unauthorizedUserAccessSpec.targetRef instead.
Update note 8: VMServiceScrape’s endpointslices role is deprecated and will be removed in 0.70.0. Use endpointslice instead.

  • Dependency: vmoperator: Updated default versions for VM apps to v1.134.0 version

  • Dependency: vmoperator: Updated default versions for VL apps to v1.43.1.

  • Dependency: vmoperator: Updated default versions for VT apps to v0.7.0 version.

  • Dependency: vmoperator: Updated default versions for VMAnomaly to v1.28.5 version

  • FEATURE: vmagent: support namespace parameter in attach_metadata section for all scrape configurations. See #1654.

  • FEATURE: vlagent: support logs collection. See #1501.

  • FEATURE: vmoperator: use operator_bad_objects_total metric with object_namespace and crd labels to track invalid objects managed by VMAgent, VMAuth, VMAlert and VMAlertmanager. Old operator_alertmanager_bad_objects_count and operator_vmalert_bad_objects_count are deprecated and will be removed in next releases.

  • FEATURE: vmoperator: added HPA support for all cluster CR storage. See #1678.

  • FEATURE: vlagent, vlsingle and vlcluster: support license options. See #2649.

  • FEATURE: vmanomaly: add support of spec.server configuration.

  • FEATURE: vlagent: add collector extraFilter, includePodLabels, includePodAnnotations, includeNodeLabels and includeNodeAnnotations support for more flexible Kubernetes logs by metadata selection.

  • FEATURE: vlagent: use a single volume for all VLAgent data by default instead of separate volumes/paths for checkpoints and remote write data.

  • FEATURE: vmagent: global sample limit per scrape target is supported via sampleLimit option in scrape config. See #10168.

  • BUGFIX: vmoperator: fixed HPA cleanup logic for all cluster resources, before it was constantly recreated. Bug introduced in this commit.

  • BUGFIX: VMCluster, VLCluster and VTCluster: prevent cluster load balancer secret from infinite reconcile.

  • BUGFIX: vmsingle, vlsingle and vtsingle: do not mount emptydir if storage data volume is already present in volumes list. Before it was impossible to mount external PVC without overriding default storageDataPath using spec.extraArgs and without having unneeded emptydir listed among pod volumes. Related issues #1477.

  • BUGFIX: vmoperator: use Service labels instead of selector in VMServiceScrape selector. See #1709.

  • BUGFIX: vmoperator: update Alertmanager dependency to fix config validation for Incident.io. See #1730.

  • BUGFIX: vmoperator: do not add -enterprise suffix to image, if tag contains @ symbol. See #1723.

  • BUGFIX: vmoperator: use 127.0.0.1 instead of localhost in reload and snapshot url for setups without IPV6 enabled.

  • BUGFIX: vmscrapeconfig: properly convert prometheus ScrapeConfig's role into VMScrapeConfig. See #1735.

  • BUGFIX: vmagent: make vmagent container default. See #1740.

  • BUGFIX: vmoperator: use 127.0.0.1 instead of localhost in reload url for setups without IPV6 enabled.

  • BUGFIX: VLAgent: update strict security mode configuration to work correctly with K8sCollector.

v0.66.1

06 Dec 14:42
84a49bc

Choose a tag to compare

v0.66.1

Release date: 06 December 2025

SECURITY: upgrade Go builder from Go1.25.4 to Go1.25.5. See the list of issues addressed in Go1.25.5.

  • BUGFIX: vmoperator: remove orphaned ServiceAccount and RBAC resources. See #1665.
  • BUGFIX: vmanomaly: properly handle configuration which is missing reader.queries in either configRawYaml or configSecret. Previously, it would lead to panic.
  • BUGFIX: vmanomaly: fix configuration parsing when running in UI mode. Previously, configuration required to use preset: ui:version instead of preset: ui.

v0.66.0

03 Dec 21:25
b58687c

Choose a tag to compare

v0.66.0

Release date: 03 December 2025

Update note 1: labels and annotations inheritance is removed. It was deprecated in v0.51.0. Consider moving all needed labels and annotations to the spec.managedMetadata fields.

Update node 2: removed VMCluster's status.clusterStatus and VMSingle's status.singleStatus, that were deprecated in v0.51.0.

  • Dependency: vmoperator: Updated default versions for VM apps to v1.131.0 version

  • Dependency: vmoperator: Updated default versions for VT apps to v0.5.0 version.

  • FEATURE: config-reloader: set default config reloader image version equal to current operator version. See #2562.

  • FEATURE: vmagent: do not set promscrape.cluster.membersCount and promscrape.cluster.memberNum flags in ingestOnly mode. See #1594.

  • FEATURE: vmalertmanagerconfig: support incident.io receiver. See #1637.

  • FEATURE: vmauth: Add httproute support for vmauth. See#1625

  • FEATURE: vmauth: allow overriding default path for embedded ingress. See #1617.

  • FEATURE: vmoperator: add VM_ENABLETCP6 variable that runs all operator CRs in IPv6 mode. See #1581.

  • FEATURE: vmuser: introduce spec.managedMetadata for custom labels and annotations that should be attached to a Secret.

  • FEATURE: vmuser: introduce query_args parameter that allows to append query arguments for backend url generation

  • BUGFIX: converter: properly convert Prometheus ScrapeConfig scrapeInterval into VM ScrapeConfig scrape_interval. Before it was ignored. See #1645.

  • BUGFIX: vmalertmanager: check mute_time_intervals in subroutes: See #1618.

  • BUGFIX: vmoperator: remove incorrect key argument in structured log for when the actual PVC storage size is larger than the currently configured size and properly indicate which is the new and which is the existing size: See PR #1636 for details.

  • BUGFIX: vtcluster: properly print status replicas for insert, select and storage components.

v0.66.0-rc2

03 Dec 16:37
226da52

Choose a tag to compare

v0.66.0-rc2 Pre-release
Pre-release
api/{VMAuth,VMAlert}: fixes status.replicaCount typo

 Previously there was mention of Alertmanagers instead of actual VMAlert
 and VMAuth CRD name.

v0.66.0-rc1

03 Dec 09:15
05d23da

Choose a tag to compare

v0.66.0-rc1 Pre-release
Pre-release

v0.66.0

Release date: 03 December 2025

Update note 1: labels and annotations inheritance is removed. It was deprecated in v0.51.0. Consider moving all needed labels and annotations to the spec.managedMetadata fields.

Update node 2: removed VMCluster's status.clusterStatus and VMSingle's status.singleStatus, that were deprecated in v0.51.0.

  • Dependency: vmoperator: Updated default versions for VM apps to v1.130.0 version

  • Dependency: vmoperator: Updated default versions for VM apps to v1.131.0 version

  • FEATURE: vmoperator: add VM_ENABLETCP6 variable that runs all operator CRs in IPv6 mode. See #1581.

  • FEATURE: config-reloader: set default config reloader image version equal to current operator version. See #2562.

  • FEATURE: vmagent: do not set promscrape.cluster.membersCount and promscrape.cluster.memberNum flags in ingestOnly mode. See #1594.

  • FEATURE: vmauth: Add httproute support for vmauth. See#1625

  • FEATURE: vmauth: allow overriding default path for embedded ingress. See #1617.

  • FEATURE: vmalertmanagerconfig: support incident.io receiver. See #1637.

  • FEATURE: vmuser: introduce spec.managedMetadata for custom labels and annotations that should be attached to a Secret.

  • FEATURE: vmuser: introduce query_args parameter that allows to append query arguments for backend url generation

  • BUGFIX: vmalertmanager: check mute_time_intervals in subroutes: See #1618.

  • BUGFIX: vmoperator: remove incorrect key argument in structured log for when the actual PVC storage size is larger than the currently configured size and properly indicate which is the new and which is the existing size: See PR #1636 for details.

  • BUGFIX: converter: properly convert Prometheus ScrapeConfig scrapeInterval into VM ScrapeConfig scrape_interval. Before it was ignored. See #1645.

  • Dependency: vmoperator: Updated default versions for VT apps to v0.5.0 version.