@nedolzhanskylv
Middle Back-End

Как автоматически выдавать регион и id?

Добрый день! В проекте, над которым я работаю, есть около 12 микросервисов, включая авторизацию и отправку пуш-уведомлений на мобильные устройства. На этапе pre-alpha возник вопрос о настройке Kubernetes (k8s) для автоматического масштабирования проекта. Итак, вопрос заключается в том, как можно автоматически назначать идентификатор и регион для машины (планируется, что сам Pod будет знать свое местоположение, если это возможно).
  • Вопрос задан
  • 71 просмотр
Решения вопроса 1
@MadridianFox
Web-программист, многостаночник
Кубернетис нужен как раз для того чтобы приложения не знали ничего о машинах. Это платформа, которая скрывает детали реализации и даёт вам абстрактные рычаги управления.
Если вам важно запускать приложение на особенных машинах, то надо пометить машины тэгом и настроить правила выбора машины через affinity/tolerations/nodeSelector.
Например так можно настроить чтобы приложение запускалось только на машинах с gpu, или только на машинах в конкретном ДЦ.
Здесь важно что вы не выясняете подходит ли вам текущая машина, а требуете чтобы приложение было запущено на подходящей.

Есть, однако, и возможность передать в под информацию о нем самом в виде env переменных. Это называется downward api - при объявлении env переменной в манифесте пода можно указать что значением будет характеристика самого пода, например значение указанного лейбла, название неймспейса, или, как вариант, название ноды, на которой запущен под.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
SignFinder
@SignFinder
Wintel\Unix Engineer\DevOps
Вариантов много - наиболее стандартный https://kubernetes.io/docs/concepts/overview/worki...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы