taint

Update node ‘foo’ with a taint with key ‘dedicated’ and value ‘special-user’ and effect ‘NoSchedule’ # If a taint with that key and effect already exists, its value is replaced as specified

  1. kubectl taint nodes foo dedicated=special-user:NoSchedule

Remove from node ‘foo’ the taint with key ‘dedicated’ and effect ‘NoSchedule’ if one exists

  1. kubectl taint nodes foo dedicated:NoSchedule-

Remove from node ‘foo’ all the taints with key ‘dedicated’

  1. kubectl taint nodes foo dedicated-

Add a taint with key ‘dedicated’ on nodes having label mylabel=X

  1. kubectl taint node -l myLabel=X dedicated=foo:PreferNoSchedule

Add to node ‘foo’ a taint with key ‘bar’ and no value

  1. kubectl taint nodes foo bar:NoSchedule

Update the taints on one or more nodes.

  • A taint consists of a key, value, and effect. As an argument here, it is expressed as key=value:effect.
  • The key must begin with a letter or number, and may contain letters, numbers, hyphens, dots, and underscores, up to 253 characters.
  • Optionally, the key can begin with a DNS subdomain prefix and a single ‘/‘, like example.com/my-app.
  • The value is optional. If given, it must begin with a letter or number, and may contain letters, numbers, hyphens, dots, and underscores, up to 63 characters.
  • The effect must be NoSchedule, PreferNoSchedule or NoExecute.
  • Currently taint can only apply to node.

Usage

$ kubectl taint NODE NAME KEY_1=VAL_1:TAINT_EFFECT_1 ... KEY_N=VAL_N:TAINT_EFFECT_N

Flags

NameShorthandDefaultUsage
allfalseSelect all nodes in the cluster
allow-missing-template-keystrueIf true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.
dry-runnoneMust be “none”, “server”, or “client”. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.
field-managerkubectl-taintName of the manager used to track field ownership.
outputoOutput format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.
overwritefalseIf true, allow taints to be overwritten, otherwise reject taint updates that overwrite existing taints.
selectorlSelector (label query) to filter on, supports ‘=’, ‘==’, and ‘!=’.(e.g. -l key1=value1,key2=value2)
show-managed-fieldsfalseIf true, keep the managedFields when printing objects in JSON or YAML format.
templateTemplate string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].
validatetrueIf true, use a schema to validate the input before sending it