សន្មតថា namespace នៃការចេញផ្សាយមាន Secret ឈ្មោះ app-outbound-proxy រួចហើយ។ កូនសោ http_proxy និង https_proxy របស់វាមាន URL proxy ពេញលេញដែលកម្មវិធីត្រូវការ។

គំនូសតាង Helm 3 អាចរក្សាតែឈ្មោះ Secret នោះក្នុង values.yaml៖

outboundProxy:
  existingSecret: app-outbound-proxy

ក្នុងគំរូ Deployment នៃ container ដែលបានកំណត់ យោងទៅកូនសោ៖

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

នេះជាបំណែកនៃលក្ខណៈបច្ចេកទេស container។ Secret ត្រូវតែមានក្នុង namespace របស់ Pod និងមានកូនសោទាំងពីរដែលបានយោង។ តម្លៃរបស់វាត្រូវប្រើពិធីការ ម៉ាស៊ីន និងច្រករបស់អ្នកស្តាប់ proxy ពិតប្រាកដ។ សម្រាប់សំណើសាធារណៈរបស់កម្មវិធីដែលត្រូវបានអនុញ្ញាតឱ្យប្រើ proxy សាធារណៈដោយគ្មានការផ្ទៀងផ្ទាត់ សូមបង្កើត URL ទាំងនោះពីបេក្ខជនសមស្របក្នុងបញ្ជី proxy ឥតគិតថ្លៃ; រក្សាការលើកលែងផ្ទាល់ដែលចាំបាច់។

តម្លៃគំនូសតាងផ្តល់ឈ្មោះ; secretKeyRef ផ្តល់តម្លៃបរិស្ថាន container។ ការ export HTTP_PROXY ក្នុង shell ដែលដំណើរការ helm មិនបន្ថែមផ្នែក env នេះទៅគំរូ Pod ទេ។

ការផ្លាស់ប្តូរ Secret ក៏ជាការផ្លាស់ប្តូរវដ្តជីវិត

container មិនធ្វើបច្ចុប្បន្នភាពបរិស្ថានរបស់ខ្លួននៅពេលទិន្នន័យ Secret ផ្លាស់ប្តូរទេ។ រៀបចំការចាប់ផ្តើមឡើងវិញ ឬ rollout ដែលបានកំណត់ ដើម្បីឱ្យ container ដែលទើបចាប់ផ្តើមទទួលបានតម្លៃថ្មី។ ការផ្លាស់ប្តូរទិន្នន័យក្រោមឈ្មោះ Secret ដូចគ្នា ដោយខ្លួនវាមិនកែគំរូ Pod របស់ Deployment ទេ។

កម្មវិធីត្រូវតែគាំទ្រអថេរបរិស្ថាន proxy ដែលបានជ្រើសរើស។ ការចូលប្រើឃ្លាំង Helm និងការទាញ image នៅ node គឺជាអ្នកប្រើប្រាស់ដាច់ដោយឡែកដែលដំណើរការមុនពេលបរិស្ថាន container នេះអាចជួយបាន។

អត្ថបទពាក់ព័ន្ធ