Выделенные стручки на автомодельных рабочих узлах Kubernetes - PullRequest
0 голосов
/ 04 октября 2018

Я создал автомасштабирующий кластер Kubernetes на Google Cloud Platform.У меня есть сценарий использования, когда я хочу запускать выделенные модули на каждом узле. То есть на каждом рабочем узле может быть только один такой модуль, и я хочу, чтобы эти выделенные модули запускались на вновь созданных узлах, которые были сформированы в результате автоматического масштабирования.Есть ли способ, которым я могу достичь этого.Например, если у меня 3 рабочих узла, я укажу количество реплик равным 3 вместе с podAntiAffinity в моем файле развертывания, чтобы каждый из этих модулей запускался на 3 разных узлах.Но если мой кластер автоматически масштабируется и добавляется 4-й узел, как я могу гарантировать, что этот Pod будет добавлен на 4-й узел?

1 Ответ

0 голосов
/ 04 октября 2018

Если вам нужен один модуль на каждом узле, DaemonSet - это инструмент, который вы ищете.Если вы добавляете узлы, контроллер DaemonSet автоматически запускает новые копии модуля.

Это хороший подход для таких инструментов, как службы мониторинга и сетки служб, где сам хост является важной сущностью, а вы действительно делаете это.нужен один на хост (для сбора дискового ввода-вывода на хост, для прозрачного шифрования сетевого трафика между хостами).Вам следует придерживаться обычного развертывания для более типичных серверных рабочих нагрузок, в которых количество реплик должно масштабироваться независимо от количества хостов (у вас может быть 20 хостов и 4 реплики с pod; или вы можете запланировать 20 реплик с pod на 4 8-ядерных ядрах).системы).

...