Kubernetes Pod ішінде прокси ортасының айнымалыларын орнату
Қолдау көрсетілетін HTTP прокси айнымалыларын Kubernetes контейнер спецификациясына қойып, кластердің тікелей маршруттарын image тарту конфигурациясынан бөлек ұстаңыз.
Kubernetes түйініндегі команда shell проксиін пайдалана алады, ал сол түйіндегі Pod-та прокси ортасы жоқ. Контейнер ортасы оның image және Pod конфигурациясымен анықталады.
Осы айнымалыларды қолдайтын қолданба үшін оның қолданыстағы контейнер жазбасына env тізімін қосыңыз:
env:
- name: HTTP_PROXY
value: http://proxy.example:8080
- name: HTTPS_PROXY
value: http://proxy.example:8080
- name: NO_PROXY
value: localhost,127.0.0.1,kubernetes.default.svc,.svc,.cluster.local
Deployment ішінде бұл spec.template.spec.containers ішіндегі тиісті контейнер астында орналасады. Жаңа Pods оны алуы үшін жұмыс жүктемесін әдеттегі rollout арқылы жаңартыңыз. Нақты клиент талап етсе, кіші әріпті атауларды да беріңіз.
Айналып өту тізімі — бастапқы мысал, кластердің әрбір маршрутының тізімі емес. Кластердің нақты DNS жұрнағын және ішкі тағайындалу орындарын пайдаланыңыз. Қызмет IP-лерін пайдаланатын қолданбаларға клиенті қолдайтын синтаксисте нақты қызмет диапазондары қажет болуы мүмкін.
Init контейнерлердің өз контейнер спецификациялары бар. Сыртқы жүктеу жасағанда көзделген конфигурацияны сол жерге қосыңыз. Ашық HTTP жүктеулері үшін HTTP прокси тізімінен алынған соңғы нүкте осы контейнер ортасының мәндеріне үміткер.
Image тарту қолданба іске қосылудан бұрын орындалады және оны түйіннің контейнер runtime-ы жасайды. Pod env бұл бұрынғы тіркелім қосылымын конфигурациялай алмайды.
Соңында, HTTP прокси айнымалылары тек оларды пайдаланатын клиенттерге әсер етеді. Олар Pod-тан келетін кез келген дерекқор, UDP немесе басқа сокет трафигін бағыттамайды.