kubernetes pod перепланировал и будет работать на другом узле после развертывания в другом пространстве имен

У меня есть два пространства имен qa и dev. Модули qa и dev могут работать на одном узле. Когда я удаляю выпуск / поды для разработчиков, k8 просто перенастраивает некоторые из стручков qa на разных узлах. Аналогичные вещи происходят, когда я включаю автомасштабирование, то есть при уменьшении масштаба k8 будет перепланировать другие модули служб в том же / другом пространстве имен. 1) Как мне предотвратить перепланирование k82) Как мне справиться с этим в случае автомасштабирования?

1 ответ

Если вы хотите запланировать свой модуль на определенном узле, вы можете использовать селектор узлов.

# To set level on node run
$ kubectl label nodes <node-name> <label-key>=<label-value>

# On pod spec set

  nodeSelector:
    <label-key>=<label-value>

Если вы хотите предотвратить изменение расписания, используйте бюджет нарушения работы модуля и установитеmaxUnavailable: 0, он никогда не удалит ваши стручки

apiVersion: policy/v1beta1
kind: PodDisruptionBudget
metadata:
  name: pdb
spec:
  maxUnavailable: 0
  selector:
    matchLabels:
      app: demoapp
Другие вопросы по тегам