Comment puis-je mettre à jour un secret sur Kubernetes lorsqu'il est généré à partir d'un fichier?
J'ai créé un secret à l'aide de kubectl create secret generic production-tls --from-file=./tls.key --from-file=./tls.crt
.
Si j'aimerais mettre à jour les valeurs - comment puis-je faire cela?
Vous devez vous connecter pour publier un commentaire.
Cela devrait fonctionner:
--from-literal
--save-config
à lakubectl create secret
afin d'éviter un CLI d'avertissement.Vous pouvez supprimer et recréer immédiatement le secret:
- Je mettre ces commandes dans un script, le premier appel, vous recevrez un avertissement à ce sujet (pas encore) existant secret, mais cela fonctionne.
apply
fait beaucoup plus de sens, merci!--namespace=kube-system
Alternativement, vous pouvez également utiliser
jq
's=
ou|=
opérateur de mettre à jour les secrets à la volée.Bien qu'il pourrait ne pas être élégant, ou la simple
kubectl create secret generic --dry-run
approche, techniquement, cette approche est véritablement mise à jour des valeurs plutôt que de les supprimer/recréer. Vous aurez également besoin dejq
etbase64
(ouopenssl enc -base64
) les commandes disponibles,tr
est un courant de Linux utilitaire pour la coupe de fuite des retours à la ligne.Voir ici pour plus de détails sur
jq
mise à jour opérateur|=
.jq
etc. Point mineur -tr
est un courant de commande de Linux, pas un shell construit-dans - voirtype tr
sortie en bash.