Support rotating certs in running pods instead of restarting them
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- kubernetes, rust
- Ambito
- infrastructure, security
Direzione di ricerca
Start by tracing the CSIDriver configuration and the NodePublishVolume implementation, then find where the replace time is computed for the restarter annotation. The issue proposes opt-in per-volume certificate renewal, safe replacement of files in mounted volumes, and retaining restart behavior as a fallback. Done would include renewal on republish without exposing partially written certificates; the issue names no files or tests.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description
Right now, when a cert from the secret-operator gets close to expiring, the restarter just kills the pod based on the annotation set by secret-op (I think). That works, but it’s annoying for things that are slow to come back up or don't handle restarts well (looking at you, NiFi!), and it means short cert lifetimes come with a lot of restarts.
Some products can already reload certs from disk on their own. For example NiFi does this with nifi.security.autoreload.enabled. For products like that, it’d be nice if we could swap the cert in the volume and let the product take it from there, without forcing an unneeded restart on the pod.
The CSI lifecyle in Kubernetes has a hook for this: if we set requiresRepublish: true on our CSIDriver, the kubelet keeps calling NodePublishVolume for volumes that are already mounted. We can use that to check whether the cert is past its replace time and, if so, issue a new one and write it into the existing volume. We already compute that time for the restarter annotation, so we’d mainly need to keep it somewhere cheap to check, for example in memory with a small file in the volume as a fallback after the driver restarts.
This would have to be opt-in per volume, since products that don’t reload would just keep using the old cert until it expires. We’d probably also keep the restarter annotation as a safety net in case reissuing fails.
Bit of file handling to investigate since we don't want half-written certs being read, so probably need to come up with some symlink or mv magic, but that should be doable.
- Lingua principale
- Rust
- Stelle
- 14
- Fork
- 8
- Merge medio
- 1g 12h
- PR unite (30g)
- 9
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di stackabletech/secret-operator
-
type/bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
stackabletech/secret-operator#754 ·
I maintainer di solito rispondono entro 1 giorno
-
autoTls: bound certificate lifetime by the CA that will actually sign it, not the configured caCertificateLifetimeForse già presa @xeniape l’ha presa 20 giorni fa. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
stackabletech/secret-operator#753 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
skip the PodListeners lookup when the served Pod is being deletedForse già presa @soenkeliebau l’ha presa 4 giorni fa. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 72/100
stackabletech/secret-operator#720 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
customer-request type/bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 38/100
stackabletech/secret-operator#666 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Allow certificates to contain subjects with allowed external namesForse di nuovo libera @NickLarsenNZ l’ha presa 446 giorni fa e non c’è nessuna pull request aperta. Apertacustomer-request type/feature-improvement
stackabletech/secret-operator#630 · 7 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di stackabletech/secret-operator
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
area:frontend kind:bug priority:p3 ready
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno
-
bug priority: medium ui
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
storytold/vectorcraft#6333 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug lexer
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
I maintainer di solito rispondono entro 1 giorno
-
yara-x fails to build with rsa 0.10.0: unresolved import rsa::Pkcs1v15SignForse già presa @CfirTsabari l’ha presa oggi. Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 87/100
VirusTotal/yara-x#865 ·
I maintainer di solito rispondono entro 1 giorno