Можно ли выставить порты на initContainers в Кубернетесе? - PullRequest
0 голосов
/ 25 августа 2018

Я хотел бы выставить порт на initContainer в Kubernetes Job, над которым я работаю.До сих пор мне не удавалось это сделать, и при чтении через документы он говорит:

Порты в контейнере инициализации не агрегируются под службой.

Что означает агрегирование в этом контексте?

На данный момент я думаю, что ответ «нет», поскольку проводимый мной эксперимент не позволит мне выставить порт.Тем не менее, я довольно новичок в Kubernetes, поэтому я не знаю, делаю ли я ошибку где-то еще.Я решил спросить здесь, возможно ли то, что я делаю, еще до того, как я попытаюсь продолжить отладку.

1 Ответ

0 голосов
/ 25 августа 2018

Это неоднозначный выбор слов, но в результате вы не можете получить доступ к initContainer через Сервис.

Сервисы Kubernetes предоставляют доступ к набору модулей, соответствующих их меткам. В этом смысле сервис является агрегатором. Я думаю, что это подразумеваемый смысл.

В модуле также может быть несколько контейнеров, каждый из которых использует свой порт. Если Pod сопоставлен с какой-либо службой, эту службу можно настроить для предоставления доступа к обоим портам. Таким образом, служба также может сделать доступными несколько портов, хотя я бы не назвал это объединением.

Модули не открываются Сервисом, пока не пройдут проверки готовности, и состояние Модуля не будет готово. InitContainer запускается перед зондами при инициализации статуса Pod. Так что логично, что это не может быть достигнуто Сервисом. Также было бы странно хотеть выставить initContainer внешне, поскольку он является временным по своей природе.

Ваша цель - отладка (https://unofficial -kubernetes.readthedocs.io / en / latest / tasks / debug-application-cluster / debug-init-container / ) или разрешить другим Стручки / Контейнеры для доступа? Я полагаю, что при инициализации у модуля Pod был бы IP-адрес, но не тот, который гарантированно был бы стабильным, поэтому я не знаю, сможете ли вы перенаправить порт для отладки https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/

Я заметил, что вы говорите, что хотите раскрыть initContainer в Job. Обслуживание трафика на работе было бы необычной целью. Если целью является мониторинг задания, см. Мониторинг задания kubernetes

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...