Trying to Install Kubernetes 1.16.2 from the binaries and i see this issue when i try to check the component status.
The Response object shows all are Healthy but the table below shows unknown.
root@instance:/opt/configs# kubectl get cs -v=8
I1104 05:54:48.554768 25209 round_trippers.go:420] GET http://localhost:8080/api/v1/componentstatuses?limit=500
I1104 05:54:48.555186 25209 round_trippers.go:427] Request Headers:
I1104 05:54:48.555453 25209 round_trippers.go:431] Accept: application/json;as=Table;v=v1beta1;g=meta.k8s.io, application/json
I1104 05:54:48.555735 25209 round_trippers.go:431] User-Agent: kubectl/v1.16.2 (linux/amd64) kubernetes/c97fe50
I1104 05:54:48.567372 25209 round_trippers.go:446] Response Status: 200 OK in 11 milliseconds
I1104 05:54:48.567388 25209 round_trippers.go:449] Response Headers:
I1104 05:54:48.567392 25209 round_trippers.go:452] Cache-Control: no-cache, private
I1104 05:54:48.567395 25209 round_trippers.go:452] Content-Type: application/json
I1104 05:54:48.567397 25209 round_trippers.go:452] Date: Mon, 04 Nov 2019 05:54:48 GMT
I1104 05:54:48.567400 25209 round_trippers.go:452] Content-Length: 661
I1104 05:54:48.567442 25209 request.go:968] Response Body: {"kind":"ComponentStatusList","apiVersion":"v1","metadata":{"selfLink":"/api/v1/componentstatuses"},"items":[{"metadata":{"name":"etcd-0","selfLink":"/api/v1/componentstatuses/etcd-0","creationTimestamp":null},"conditions":[{"type":"Healthy","status":"True","message":"{\"health\":\"true\"}"}]},{"metadata":{"name":"controller-manager","selfLink":"/api/v1/componentstatuses/controller-manager","creationTimestamp":null},"conditions":[{"type":"Healthy","status":"True","message":"ok"}]},{"metadata":{"name":"scheduler","selfLink":"/api/v1/componentstatuses/scheduler","creationTimestamp":null},"conditions":[{"type":"Healthy","status":"True","message":"ok"}]}]}
I1104 05:54:48.567841 25209 table_printer.go:44] Unable to decode server response into a Table. Falling back to hardcoded types: attempt to decode non-Table object into a v1beta1.Table
I1104 05:54:48.567879 25209 table_printer.go:44] Unable to decode server response into a Table. Falling back to hardcoded types: attempt to decode non-Table object into a v1beta1.Table
I1104 05:54:48.567888 25209 table_printer.go:44] Unable to decode server response into a Table. Falling back to hardcoded types: attempt to decode non-Table object into a v1beta1.Table
NAME AGE
etcd-0 <unknown>
controller-manager <unknown>
scheduler <unknown>
Check your Client & Server versions. If they do not match you'll have the issue.
kubectl version --short
Client Version: v1.13.5
Server Version: v1.13.5
$ kubectl get cs
NAME STATUS MESSAGE ERROR
scheduler Healthy ok
controller-manager Healthy ok
etcd-2 Healthy {"health": "true"}
etcd-0 Healthy {"health": "true"}
etcd-1 Healthy {"health": "true"}
AND
$ kubectl version --short
Client Version: v1.16.0
Server Version: v1.13.5
$ kubectl get cs
NAME AGE
controller-manager <unknown>
scheduler <unknown>
etcd-2 <unknown>
etcd-0 <unknown>
etcd-1 <unknown>
By the way, it has been resolved in v1.17.0
There appears to be an issue with table converter for component status specifically with k8s version 1.16.2 Already there is a PR raised to address this issue. Follow and track the link