Kubernetes DaemonSet только на мастер-узлах - PullRequest
0 голосов
/ 26 февраля 2020

Есть ли способ запустить Kubernetes DaemonSet только на главных узлах? Я знаю, что это возможно при развертывании, но можно ли повторить это поведение с помощью DaemonSets?

Ответы [ 4 ]

1 голос
/ 26 февраля 2020

Вы можете использовать допуски и сходство узлов в файлах манифеста DaemonSet.

 Ex:
 ......
 tolerations:
 - key: "node-role.kubernetes.io/master"
   operator: Exists
 affinity:
   nodeAffinity:
      requiredDuringSchedulingIgnoredDuringExecution:
        nodeSelectorTerms:
        - matchExpressions:
          - key: "node-role.kubernetes.io/master"
            operator: Exists
   .....
0 голосов
/ 26 февраля 2020

Я использовал сочетание nodeSelector и допусков для достижения этой цели. Вот код -

  tolerations:
  - key: node-role.kubernetes.io/master
    operator: Exists
    effect: NoSchedule

  nodeSelector:
    kubernetes.io/role: master
0 голосов
/ 26 февраля 2020

Вы можете добавить nodeSelector (аналогично развертываниям), который выбирает только главные узлы в наборе демонов.

0 голосов
/ 26 февраля 2020

Да, это называется стати c стручок.

https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/

Поместите связанный файл yaml kubernetes в значение Master StaticPath (обычно это / etc / kubernetes / manifest)

, когда мастер запущен, эти модули будут запускаться автоматически как daemonSet

...