【发布时间】:2019-08-06 14:43:29
【问题描述】:
我是 Kubernetes 的新手。
我无法使用 kubectl 获取部署,但我可以在 kubernetes 仪表板上查看所有部署。我该如何解决这个问题?
user@master:~$ kubectl get deployments
error: the server doesn't have a resource type "deployments"
kubernetes 版本: 1.12
kubectl 版本: 1.13
kubectl api 版本:
apiregistration.k8s.io/v1
apiregistration.k8s.io/v1beta1
v1
api 资源:
user@master:~$ kubectl api-resources
NAME SHORTNAMES APIGROUP NAMESPACED
KIND
bindings true
Binding
componentstatuses cs false
ComponentStatus
configmaps cm true
ConfigMap
endpoints ep true
Endpoints
events ev true
Event
limitranges limits true
LimitRange
namespaces ns false
Namespace
nodes no false
Node
persistentvolumeclaims pvc true
PersistentVolumeClaim
persistentvolumes pv false
PersistentVolume
pods po true
Pod
podtemplates true
PodTemplate
replicationcontrollers rc true
ReplicationController
resourcequotas quota true
ResourceQuota
secrets true
Secret
serviceaccounts sa true
ServiceAccount
services svc true
Service
apiservices apiregistration.k8s.io false
APIService
感谢您的帮助。
------------编辑 1------------
您好@EduardoBaitello,感谢您的快速回复。问题与权限无关。
user@master:~$ kubectl auth can-i get deployments
Warning: the server doesn't have a resource type 'deployments'
yes
user@master:~$ kubectl auth can-i get deployment
Warning: the server doesn't have a resource type 'deployment'
yes
user@master:~$ kubectl auth can-i get namespaces
yes
user@master:~$ kubectl auth can-i get pods
yes
所以我认为这不是一个重复的问题。
user@master:~$ kubectl get po --namespace=kube-system
NAME READY STATUS RESTARTS AGE
calico-kube-controllers-7c6b876df8-nk7nm 1/1 Running 2 118d
calico-node-8lt9f 1/1 Running 3 118d
calico-node-d9r9l 1/1 Running 2 118d
calico-node-ffqlj 1/1 Running 2 118d
dns-autoscaler-57ff59dd4c-c9tjv 1/1 Running 2 118d
kube-apiserver-node1 1/1 Running 3 118d
kube-controller-manager-node1 1/1 Running 6 118d
kube-dns-84467597f5-hf2fn 3/3 Running 6 118d
kube-dns-84467597f5-sttgx 3/3 Running 9 118d
kube-proxy-node1 1/1 Running 3 118d
kube-proxy-node2 1/1 Running 2 118d
kube-proxy-node3 1/1 Running 2 118d
kube-scheduler-node1 1/1 Running 6 118d
kubernetes-dashboard-5db4d9f45f-gkl6w 1/1 Running 3 118d
nginx-proxy-node2 1/1 Running 2 118d
nginx-proxy-node3 1/1 Running 2 118d
tiller-deploy-6f6fd74b68-27fqc 1/1 Running 0 16d
user@master:~$ kubectl get componentstatus
NAME STATUS MESSAGE
scheduler Healthy ok
controller-manager Healthy ok
etcd-2 Healthy {"health": "true"}
etcd-1 Healthy {"health": "true"}
etcd-0 Healthy {"health": "true"}
【问题讨论】:
-
看起来像duplicated question。也许您的问题是缺少获取 deployment api-resource 的 RBAC 权限。你能从 kube-system 命名空间检查 pod 吗? (
kubectl get po --namespace=kube-system)。崩溃的 etcd pod 可能会导致一些 api-resources 丢失...另外,请检查 kube-apiserver pod 的日志。 -
你能分享输出吗:
kubectl get deployments -v10?
标签: kubernetes kubernetes-deployment