Kubernetes ds не будет запускать модуль на главном узле

Я запускаю кластер с 1 мастером и 1 узлом. Теперь, когда я запускаю набор демонов, он показывает только 1 нужный узел, хотя должно быть 2. В описаниях/журналах я не нашел ошибок, но набор демонов выбирает только 1 узел для запуска. Я использую кубернет 1.9.1.

Любая идея, что я могу делать неправильно? Или как отлаживать? ТИА.


person Pensu    schedule 11.02.2018    source источник
comment
Обычно мастер не помечается как узел, на котором вы можете запланировать запуск своего приложения. Есть ли причина, по которой вы ожидаете, что он будет работать на мастере?   -  person Graham Dumpleton    schedule 11.02.2018


Ответы (2)


Это происходит, если главный узел k8s имеет только node-role.kubernetes.io/master: NoSchedule taint без терпимости к нему.

Допуск the node-role.kubernetes.io/master: NoSchedule необходим в k8s 1.6 или более поздних версиях для планирования наборов демонов на главных узлах.

Добавьте следующий допуск для набора демонов в файле YAML, чтобы k8s также планировал наборы демонов на главном узле:

...
kind: DaemonSet
spec:
  ...
  template:
   ...
    spec:
      tolerations:
      - key: node-role.kubernetes.io/master
        effect: NoSchedule

Повреждения главного узла можно проверить следующим образом:

kubectl describe node <master node>

Допуски стручка можно проверить:

kubectl describe pod <pod name>

Дополнительные сведения о наборах демонов см. в https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/.

person Vikram Hosakote    schedule 11.02.2018

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

kubectl taint nodes --all node-role.kubernetes.io/master-

person Ahab    schedule 11.02.2018
comment
Хотя это будет работать, это будет иметь дополнительный эффект: все модули будут иметь право на планирование на узле с удаленным основным заражением. - person Brian Topping; 03.05.2020