Czym jest Taint w Kubernetes?¶
Jest to mechanizm pozwalający oznaczyć Kubernetes Schedulerowi dany węzęł na taki, że pody nie mogą być uruchamiane jeśli nie posiadają przypisanych tolerancji (tolerances).
Taint jest to etykieta odstraszająca Pody.
Istnieją trzy rodzaje Taint na Node w Kubernetes:
- NoSchedule - pod nie może być umieszczony na tym węźle
- PreferNoSchedule - scheduler będzie unikał, ale nie zakaże
- NoExecute - pod nie zostanie uruchomiony na tym Node, ale także zostanie usunięty jeśli już tam jest!! (np. po dodaniu Taint na node)
Info
Pod z Toleration do danego Taint może być uruchomiony na oznaczonym węźle z danym Taint, ale nie musi! Może działać na innych węzłach, które nie mają Taint.
Czym jest Toleration w Kubernetes?¶
Jest to sposób oznaczania, że dany Pod bądź zasób może zostać uruchomiony na oznaczonym Nodzie (Tainted Node).
Toleration jest to zgoda dla Poda na umieszczenie na Tainted Nodzie.