Helm ചാർട്ടിൽ പ്രോക്സി വേരിയബിളുകൾക്ക് നിലവിലുള്ള Secret ഉപയോഗിക്കുക
shell വേരിയബിൾ കണ്ടെയ്നർ പരിസ്ഥിതിയാകുമെന്ന് കരുതുന്നതിനുപകരം Helm 3 Deployment ടെംപ്ലേറ്റിൽ Secret-ൽ നിന്നുള്ള പൂർണ്ണ പ്രോക്സി URL-കൾ റഫർ ചെയ്യുക.
release namespace-ൽ ഇതിനകം app-outbound-proxy എന്ന Secret ഉണ്ടെന്ന് കരുതുക. അതിന്റെ http_proxy, https_proxy കീകളിൽ ആപ്ലിക്കേഷന് ആവശ്യമായ പൂർണ്ണ പ്രോക്സി URL-കൾ അടങ്ങിയിരിക്കുന്നു.
Helm 3 ചാർട്ടിന് values.yaml-ൽ ആ Secret-ന്റെ പേര് മാത്രം സൂക്ഷിക്കാം:
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-ന്റെ namespace-ൽ ഉണ്ടായിരിക്കണം, റഫർ ചെയ്ത രണ്ട് കീകളും അടങ്ങിയിരിക്കണം. അതിന്റെ മൂല്യങ്ങൾ യഥാർത്ഥ പ്രോക്സി ലിസണറുടെ പ്രോട്ടോക്കോൾ, ഹോസ്റ്റ്, പോർട്ട് എന്നിവ ഉപയോഗിക്കണം. ഓതന്റിക്കേഷനില്ലാത്ത പൊതു പ്രോക്സി ഉപയോഗിക്കാൻ അനുവാദമുള്ള പൊതു ആപ്ലിക്കേഷൻ അഭ്യർത്ഥനകൾക്ക്, ആ URL-കൾ സൗജന്യ പ്രോക്സി പട്ടികയിലെ അനുയോജ്യമായ സ്ഥാനാർത്ഥിയിൽ നിന്ന് നിർമ്മിക്കുക; ആവശ്യമായ നേരിട്ടുള്ള ഒഴിവുകൾ നിലനിർത്തുക.
ചാർട്ട് മൂല്യം ഒരു പേര് നൽകുന്നു; secretKeyRef കണ്ടെയ്നറിന്റെ പരിസ്ഥിതി മൂല്യങ്ങൾ നൽകുന്നു. helm പ്രവർത്തിപ്പിക്കുന്ന shell-ൽ HTTP_PROXY export ചെയ്യുന്നത് മാത്രം ഈ env വിഭാഗം Pod ടെംപ്ലേറ്റിലേക്ക് ചേർക്കില്ല.
Secret മാറ്റുന്നതും ജീവിതചക്ര മാറ്റമാണ്
Secret ഡാറ്റ മാറുമ്പോൾ കണ്ടെയ്നർ അതിന്റെ പരിസ്ഥിതി പുതുക്കുന്നില്ല. പുതുതായി ആരംഭിച്ച കണ്ടെയ്നറുകൾക്ക് പുതുക്കിയ മൂല്യങ്ങൾ ലഭിക്കാൻ ഉദ്ദേശിച്ച restart അല്ലെങ്കിൽ rollout ക്രമീകരിക്കുക. അതേ Secret പേരിന് കീഴിൽ ഡാറ്റ മാറ്റുന്നത് സ്വയം Deployment-ന്റെ Pod ടെംപ്ലേറ്റ് എഡിറ്റ് ചെയ്യുന്നില്ല.
ആപ്ലിക്കേഷൻ തിരഞ്ഞെടുത്ത പ്രോക്സി പരിസ്ഥിതി വേരിയബിളുകൾ പിന്തുണയ്ക്കണം. Helm ശേഖരത്തിലേക്കുള്ള പ്രവേശനവും നോഡിലെ image pull-ഉം ഈ കണ്ടെയ്നർ പരിസ്ഥിതി സഹായിക്കുന്നതിന് മുമ്പ് പ്രവർത്തിക്കുന്ന വേർതിരിഞ്ഞ ഉപഭോക്താക്കളാണ്.