operator
operator copied to clipboard
Deleting VMAgent CR with statefulMode enabled doesn't delete the StatefulSet
Operator Version: Tried with both 0.25.1 and 0.26.3. Observed the same issue on both versions.
Minimal example:
apiVersion: operator.victoriametrics.com/v1beta1
kind: VMAgent
metadata:
name: test-vmagent
namespace: testing
spec:
externalLabels:
cluster: kind-cluster
image:
pullPolicy: IfNotPresent
repository: victoriametrics/vmagent
tag: v1.79.0
remoteWrite:
- url: http://test-vminsert:8480/insert/0/prometheus
statefulMode: true
statefulStorage:
volumeClaimTemplate:
spec:
resources:
requests:
storage: 2Gi
Once the statefulset is up, delete vmagent:
$ kubectl delete vmagent -n testing test-vmagent
vmagent.operator.victoriametrics.com "test-vmagent" deleted
Observed logs on victoriametrics operator:
01:10:45.000 INFO Reconciling logger="controllers.VMAgent" vmagent="testing/test-vmagent"
01:10:45.000 INFO Reconciling logger="controllers.VMAgent" vmagent="testing/test-vmagent"
01:10:45.000 INFO Reconciling logger="controllers.VMAgent" vmagent="testing/test-vmagent"
01:10:45.000 INFO Reconciling logger="controllers.VMAgent" vmagent="testing/test-vmagent"
01:10:45.000 INFO Reconciling VMServiceScrape logger="controllers.VMServiceScrape" vmservicescrape="testing/vmagent-test-vmagent"
01:10:45.000 INFO reconciled serviceScrape logger="controllers.VMServiceScrape" vmservicescrape="testing/vmagent-test-vmagent"
01:10:45.000 INFO Reconciling logger="controllers.VMAgent" vmagent="testing/test-vmagent"
Observed that statefulset is not deleted. Once the finalizer was removed, it got deleted.
$ kubectl get sts -n testing
NAME READY AGE
vmagent-test-vmagent 1/1 9m46s
Will be fixed soon at patch release. Thanks for spotting an issue.
Was fixed at v0.27 release, feel free to re-open if issue wasn't solved.