Open ledroide opened 1 year ago
Hey @ledroide,
How about using
tls:
enabled: true
autoGenerated: true
at the installation, and:
tls:
enabled: true
autoGenerated: false
for the upgrades?
It is true that it doesn't seem very fancy to regenerate the existing certs at the upgrades, but I'm not sure if this is a bug or a conception issue.
@aoterolorenzo : That's why I was writing :
(this values.yaml configuration) is not immutable, not even idempotent
If we apply twice the same values.yaml
, the first run works, the second run crashes the whole.
From the ops or c-i point of vue, it's clearly a bug regarding a common use case. There should be some check point before replacing existing certificates - automatically or triggered following a boolean variable, let's say tls.replaceTlsCertsIfExist: false
Yep, completely agree! Let me create an internal task for the team to take a deeper look and address the issue. We will reach you back here as soon as our workload allow us to work on it (no ETA could be provided I'm afraid).
Thanks for reporting!
Name and Version
bitnami/mariadb-galera 7.5.3
What steps will reproduce the bug?
Configuration :
How to reproduce :
helm install --upgrade --values myvalues.yaml database --namespace=galera bitnami/mariadb-galera
helm install --upgrade --values myvalues.yaml database --namespace=galera bitnami/mariadb-galera
A diff before upgrading shows that tls certificates are renewed even if existing already :
Problem : starting members are unable to communicate with other members, then raises for new pods an Error, then CrashLoopBackOff.
Here is what I can see for any starting pod in the logs when the StatefulSet is restarting the cluster pods :
That means that I need two different values files - one with autoGenerated=true, one with autoGenerated=false" - depending on an existing cluster or not -> so this is not immutable, not even idempotent.
The only workaround that I have found is to scale members to 0 and then scale up - and this causes downtime, unfortunately.
Is there an option I missed that would manage this case - and not replace existing certificates, but only generate them if they do not exist?
What architecture are you using?
amd64 Kubernetes 1.26.2 helm 3.11.1
Issues seen before
Maybe related to #7071 or #8424 issues