taints.tpl:
{{printf "%-50s %-12s\n" "Node" "Taint"}}
{{- range .items}}
{{- if $taint := (index .spec "taints") }}
{{- .metadata.name }}{{ "\t" }}
{{- range $taint }}
{{- .key }}={{ .value }}:{{ .effect }}{{ "\t" }}
{{- end }}
{{- "\n" }}
{{- end}}
{{- end}}
$ kubectl get nodes -o go-template-file=taints.tpl
Node Taint
bus00evo node-role.kubernetes.io/master=<no value>:NoSchedule
or
$ kubectl describe nodes bus00evo
Name: bus00evo
...
Taints: node-role.kubernetes.io/master:NoSchedule
...
Use the key name with a -
suffix.
$ kubectl taint nodes bus00evo node-role.kubernetes.io/master-
node "bus00evo" untainted
$ kubectl get nodes -o go-template-file=taints.tpl
Node Taint
Good.
See also:
$ kubectl get nodes --show-labels
NAME STATUS AGE VERSION LABELS
bus00epb Ready 17h v1.8.1 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=bus00epb
bus00evo Ready 17h v1.8.1 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=bus00evo,node-role.kubernetes.io/master=
$ kubectl label nodes bus00epb storage-zone=1
node "bus00epb" labeled
Verify:
$ kubectl get nodes --show-labels
NAME STATUS AGE VERSION LABELS
bus00epb Ready 17h v1.8.1 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=bus00epb,storage-zone=1
bus00evo Ready 17h v1.8.1 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=bus00evo,node-role.kubernetes.io/master=
Good.
Same command as adding a label, with the addition of a -
suffix on the key (instead of a value).
$ kubectl label nodes bus00epb storage-zone-
node "bus00evo" labeled
Verify:
$ kubectl get nodes --show-labels
NAME STATUS AGE VERSION LABELS
bus00epb Ready 17h v1.8.1 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=bus00epb
bus00evo Ready 17h v1.8.1 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=bus00evo,node-role.kubernetes.io/master=
Good.
See also:
With numbered lines:
$ helm install --debug --dry-run . 2>&1 | awk '{printf "%d\t%s\n", NR, $0}' | less
1 [debug] Created tunnel using local port: '39538'
2
3 [debug] SERVER: "localhost:39538"
4
5 [debug] Original chart version: ""
6 [debug] CHART PATH: ...
7
8 Error: YAML parse error on CHART-NAME: error converting YAML to JSON: yaml: line 35: did not find expected '-' indicator
9
10 ---
11 # Source: file.yaml
12 apiVersion: apps/v1beta1
13 kind: Deployment
...
$ cd /path/to/chart/directory
$ helm install -f values.yaml .