Ας υποθέσουμε ότι ο χώρος ονομάτων της έκδοσης έχει ήδη ένα Secret με όνομα app-outbound-proxy. Τα κλειδιά του http_proxy και https_proxy περιέχουν τις πλήρεις διευθύνσεις URL διαμεσολαβητή που χρειάζεται η εφαρμογή.

Ένα διάγραμμα Helm 3 μπορεί να κρατή μόνο το όνομα αυτού του Secret στο values.yaml:

outboundProxy:
  existingSecret: app-outbound-proxy

Στο πρότυπο Deployment του προβλεπόμενου κοντέινερ, ανατρέξτε στα κλειδιά:

env:
  - name: HTTP_PROXY
    valueFrom:
      secretKeyRef:
        name: {{ .Values.outboundProxy.existingSecret | quote }}
        key: http_proxy
  - name: HTTPS_PROXY
    valueFrom:
      secretKeyRef:
        name: {{ .Values.outboundProxy.existingSecret | quote }}
        key: https_proxy

Αυτό είναι θραύσμα της προδιαγραφής κοντέινερ. Το Secret πρέπει να υπάρχει στον χώρο ονομάτων του Pod και να περιέχει και τα δύο κλειδιά που αναφέρονται. Οι τιμές του πρέπει να χρησιμοποιούν το πρωτόκολλο, τον κεντρικό υπολογιστή και τη θύρα του πραγματικού ακροατή διαμεσολαβητή. Για δημόσια αιτήματα της εφαρμογής που επιτρέπεται να χρησιμοποιούν δημόσιο διαμεσολαβητή χωρίς έλεγχο ταυτότητας, χτίστε αυτές τις διευθύνσεις από αντίστοιχο υποψήφιο στη λίστα δωρεάν διαμεσολαβητών· διατηρήστε τυχόν απαιτούμενες άμεσες εξαιρέσεις.

Η τιμή του διαγράμματος παρέχει όνομα· το secretKeyRef παρέχει τις τιμές περιβάλλοντος του κοντέινερ. Η απλή εξαγωγή HTTP_PROXY στο κέλυφος που εκτελεί το helm δεν προσθέτει αυτή την ενότητα env σε πρότυπο Pod.

Η αλλαγή του Secret είναι και αλλαγή κύκλου ζωής

Ένα κοντέινερ δεν ανανεώνει το περιβάλλον του όταν αλλάζουν τα δεδομένα του Secret. Οργανώστε την προβλεπόμενη επανεκκίνηση ή το rollout ώστε τα νεοεκκινημένα κοντέινερ να λαμβάνουν ενημερωμένες τιμές. Η αλλαγή δεδομένων κάτω από το ίδιο όνομα Secret δεν επεξεργάζεται από μόνη της το πρότυπο Pod του Deployment.

Η εφαρμογή πρέπει να υποστηρίζει τις επιλεγμένες μεταβλητές περιβάλλοντος διαμεσολαβητή. Η πρόσβαση στο αποθετήριο Helm και η λήψη εικόνας στον κόμβο είναι ξεχωριστοί καταναλωτές που εκτελούνται πριν μπορέσει να βοηθήσει αυτό το περιβάλλον κοντέινερ.

Σχετικά άρθρα