Согласна с @ 4c74356b41.
Как дополнение. Неважно, где находятся ваши модули, у вас может быть несколько реплик вашего приложения, разделенных, скажем, на 50 узлов, они могут по-прежнему взаимодействовать друг с другом (службы, обнаружение служб, сетевой CNI ) и совместно использовать ресурсы и т. Д.
И да, это поведение по умолчанию для Kubernetes, на которое вы можете влиять порками, толерантностью, ресурсами, ограничивающими сродство Node и анти-сродством (вы можете найти много информации о каждом из них в документации или просто погуглить) ). Кроме того, то, где запланированы блоки, зависит от узла емкость . Ваш модуль был настроен на определенный узел, потому что планировщик рассчитал, что он имеет лучший результат, сначала с учетом упомянутых условий. Вы можете найти подробную информацию о процессе здесь .
Опять же, как упоминает @ 4c74356b41, если вы хотите разделить кластер на несколько сред, скажем, для разных команд или, как вы упомянули для сред dev и qa, вы можете использовать для этого пространства имен . Они в основном создают меньшие кластеры в вашем кластере (обратите внимание, что это скорее логическое разделение, а не разделение с точки зрения безопасности, пока вы не добавите другие компоненты, такие как
например роли)
Вы можете просто добавить поле namespace
в YAML своего развертывания, чтобы указать, в каком пространстве имен вы хотите развернуть свои модули - все равно не имеет значения, на каких узлах они находятся. В зависимости от вашего варианта использования.
Обратите внимание, что то, что я написал, упрощено, и я не упомянул много промежуточных вещей, которые вы можете легко найти в большинстве учебных пособий по Kubernetes.