Развертывание на конкретном узле кластера Kubernetes - PullRequest
0 голосов
/ 07 мая 2018

Я пытаюсь реализовать конвейер CI / CD, используя Kubernetes, Jenkins, с моим собственным SVN-репозиторием. И я планирую использовать кластер Kubernetes с 3 основными и 15 рабочими машинами / узлами. И Использование Jenkins для развертывания микросервиса, разработанного с использованием пружинной загрузки. Итак, когда я развертываю с использованием Jenkins, как я могу определить, какой микросервис нужно развернуть на каком узле в кластере kubernetes ?. Нужно ли указывать в Pod? Или любое другое определение?

Ответы [ 2 ]

0 голосов
/ 08 мая 2018

Как определить, какой микросервис необходимо развернуть, на каком узле в кластере kubernetes? Нужно ли указывать в Pod? Или любое другое определение?

  • Как уже говорилось в других ответах, вам не нужно , чтобы сделать это, но вы можете , если есть какая-либо причина сделать это с использованием устаревшего nodeSelector или предпочтительного сходства. Их стоит потратить время на чтение, поскольку вы можете иметь несколько модулей, относящихся к определенным группам служб / микросервисов, расположенных вместе или на расстоянии друг от друга через доступные узлы, чтобы обеспечить более гибкую и гибкую архитектуру и правильное распределение. Таким образом вы помогаете планировщику решить, где разместить то, что нужно для достижения желаемого макета. Для большинства основных потребностей ранее упомянутое распределение ресурсов может помочь, но для любого мелкого зерна у вас есть сродство (и анти-сродство) в вашем распоряжении. Подробная документация здесь: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
0 голосов
/ 07 мая 2018

Kubernetes выясняет, какие узлы должны запускать какие модули. Вам не нужно этого делать. Вы должны указать, сколько памяти и процессора нужно каждому модулю, k8s в первом приближении вычисляет остальное.

Тем не менее, вам нужно выяснить, как разбить полный набор рабочих нагрузок, которые вам нужно выполнить, скажем, по среде (dev / stage / prod) или по арендатору (team X / team Y / команда Z или клиент X / клиент Y / клиент Z) - в пространства имен, затем выясните, какой рабочий процесс имеет смысл для этого разделения, а затем настройте CI для удовлетворения этого рабочего процесса.

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