Izmantot esošu Secret starpniekservera mainīgajiem Helm diagrammā
Helm 3 Deployment veidnē atsaucieties uz pilniem starpniekservera URL no Secret, nevis pieņemiet, ka shell mainīgais kļūs par konteinera vidi.
Pieņemsim, ka izlaiduma namespace jau ir Secret ar nosaukumu app-outbound-proxy. Tā atslēgas http_proxy un https_proxy satur pilnus starpniekservera URL, kas nepieciešami lietojumprogrammai.
Helm 3 diagramma values.yaml failā var glabāt tikai šī Secret nosaukumu:
outboundProxy:
existingSecret: app-outbound-proxy
Paredzētā konteinera Deployment veidnē atsaucieties uz atslēgām:
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
Šis ir konteinera specifikācijas fragments. Secret ir jāpastāv Pod namespace un jāsatur abas atsauktās atslēgas. Tā vērtībām jāizmanto īstā starpniekservera klausītāja protokols, resursdators un ports. Publiskiem lietojumprogrammas pieprasījumiem, kuriem atļauts izmantot publisku starpniekserveri bez autentifikācijas, veidojiet šos URL no atbilstoša kandidāta bezmaksas starpniekserveru sarakstā; saglabājiet visus nepieciešamos tiešos izņēmumus.
Diagrammas vērtība nodrošina nosaukumu; secretKeyRef nodrošina konteinera vides vērtības. Tikai HTTP_PROXY exportēšana čaulā, kas palaiž helm, nepievieno šo env sadaļu Pod veidnei.
Secret maiņa ir arī dzīves cikla maiņa
Konteiners neatjaunina savu vidi, kad mainās Secret dati. Sakārtojiet paredzēto restartu vai rollout, lai tikko palaisti konteineri saņemtu atjauninātās vērtības. Datu maiņa zem tā paša Secret nosaukuma pati par sevi neļauj rediģēt Deployment Pod veidni.
Lietojumprogrammai jāatbalsta izvēlētie starpniekservera vides mainīgie. Piekļuve Helm repozitorijam un attēla vilkšana mezglā ir atsevišķi patērētāji, kas darbojas pirms šī konteinera vide var palīdzēt.