我正在尝试通过this article在Ubuntu 18.04上设置Kubernetes。

一切正常,但是当我尝试访问本地Kubernetes仪表板时,它显示为空,并且看不到Pod,服务和部署等内容。

但是,当我运行$> kubectl get pods,svc,deployments时,它将显示以下输出。如果命令行显示了所有详细信息,为什么我会看到空的Kubernetes仪表板?

我已经跑了以下命令

$> kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta8/aio/deploy/recommended.yaml

$> kubectl proxy

我在这里缺少任何配置吗?有任何解决此问题的建议吗?
$> kubectl get pods --all-namespaces
NAMESPACE              NAME                                         READY   STATUS    RESTARTS   AGE

kubernetes-dashboard   dashboard-metrics-scraper-76585494d8-4rrdp   1/1     Running   3          46h
kubernetes-dashboard   kubernetes-dashboard-5996555fd8-sxgxf        1/1     Running   16         46h

查看通知部分后,发现这些错误



更新1:

应用RBAC kubectl apply -f filename.yml后,它现在可以正常工作
apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin-user
  namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
  name: admin-user
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: admin-user
  namespace: kube-system

最佳答案

您可能需要将仪表板服务帐户绑定(bind)到集群管理员角色:
kubectl create clusterrolebinding dashboard-admin-sa--clusterrole=cluster-admin --serviceaccount=default:dashboard-admin-sa
否则,仪表板服务帐户将无权访问将填充仪表板的数据。

关于docker - 禁止pods:用户 “system:serviceaccount:kubernetes-dashboard:admin-user”无法在 namespace “pods”的API组 “”中列出资源 “default”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59605085/

10-13 07:45