Τεκμηρίωση παραδείγματος: ConfigMap Reload
Στόχος
Παρατηρήστε τη διαφορά ανάμεσα στις τιμές ConfigMap που χρησιμοποιούνται ως environment variables και σε εκείνες που παρέχονται ως mounted files.
Τι γίνεται
Ένας container διαβάζει περιεχόμενο ConfigMap από environment variable και από αρχείο. Στη συνέχεια, η ConfigMap αλλάζει με Patch.
Συνήθεις εντολές
kubectl apply -f manifests/
kubectl logs -n config-reload-lab deploy/configmap-reload --tail=5
kubectl patch configmap app-config -n config-reload-lab --type=merge -p '{"data":{"APP_MODE":"patched","message":"file updated"}}'
Επιβεβαίωση επιτυχίας
- Το mounted file αλλάζει μετά από μικρή καθυστέρηση.
- Η environment variable μένει αμετάβλητη μέχρι να επανεκκινηθεί το Pod.
- Τα logs εμφανίζουν και τις δύο τιμές δίπλα δίπλα.
Συνηθισμένα λάθη
- Αναμένεται άμεση ενημέρωση του αρχείου, παρότι ο συγχρονισμός του kubelet έχει καθυστέρηση.
- Υποτίθεται λανθασμένα ότι οι εφαρμογές φορτώνουν ξανά αυτόματα αρχεία που άλλαξαν.
- Οι ενημερώσεις ConfigMap συγχέονται με το Secret rotation.