Можно ли отключить обнаружение службы с переменными окружения в кубернетах?

Как известно, kubernetes поддерживает 2 основных режима поиска переменных среды службы и DNS, можно ли отключить первый способ и выбрать только путь DNS?

Ответы

Ответ 1

Как показано в этом PR, эта функция появится в Kubernetes 1.13. От PR (поскольку документы еще не доступны), я ожидаю, что это будет поле enableServiceLinks в спецификации модуля со значением true по умолчанию.

Редактировать: Как это было некоторое время, и пиар наконец приземлился. enableServiceLinks был добавлен в качестве дополнительного логического значения в KuSernetes PodSpec.

Для записи: использование DNS для обнаружения конечных точек службы является рекомендуемым подходом, и поведение docker link, из которого происходят переменные среды, долгое время устарело

Ответ 2

Согласно kubernetes v1.8 source, невозможно отключить обнаружение служб с помощью переменных среды.

EnvVars предоставляет только услугу, соответствующую какому-либо условию.

  • служба в том же пространстве имен, что и модуль;
  • Служба kubernetes в пространстве имен default;

Хотя эти переменные окружения могут быть перезаписаны env и envFrom, определенных в шаблоне модуля.

Мне интересно, каков ваш сценарий, может быть, мы можем найти какой-то обходной путь.