我使用Virtual Box在Windows机器上设置了一个kubernetes集群。我有4个来宾CentOS 7系统在运行。我已经使用https://kubernetes.io/docs/getting-started-guides/centos/centos_manual_config/指南设置了集群。部署kubernetes仪表板时出现错误
Error from server (AlreadyExists): error when creating "kubernetes-dashboard.yaml": serviceaccounts "kubernetes-dashboard" already exists
Error from server (BadRequest): error when creating "kubernetes-dashboard.yaml": ClusterRoleBinding in version "v1beta1" cannot be handled as a ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
error validating "kubernetes-dashboard.yaml": error validating data: found invalid field tolerations for v1.PodSpec; if you choose to ignore these errors, turn validation off with --validate=false
然后,我使用-validate=false选项再次执行该命令。这一次我得到了以下错误
Error from server (AlreadyExists): error when creating "kubernetes-dashboard.yaml": serviceaccounts "kubernetes-dashboard" already exists
Error from server (BadRequest): error when creating "kubernetes-dashboard.yaml": ClusterRoleBinding in version "v1beta1" cannot be handled as a ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Error from server (AlreadyExists): error when creating "kubernetes-dashboard.yaml": deployments.extensions "kubernetes-dashboard" already exists
Error from server (AlreadyExists): error when creating "kubernetes-dashboard.yaml": services "kubernetes-dashboard" already exists
我看到很多人都有类似的错误,但在任何地方都找不到解决方案。一些命令的输出
$kubectl get pods -a -o wide --all-namespaces
Name: kubernetes-dashboard
Namespace: kube-system
Labels: k8s-app=kubernetes-dashboard
Selector: k8s-app=kubernetes-dashboard
Type: ClusterIP
IP: 10.254.25.191
Port: <unset> 80/TCP
Endpoints: <none>
Session Affinity: None
No events.
$kubectl get pods -a -o wide --all-namespaces
No resources found.
$kubectl cluster-info
Kubernetes master is running at http://localhost:8080
$kubectl get nodes
NAME STATUS AGE
centos-minion-1 Ready 2d
centos-minion-2 Ready 2d
centos-minion-3 Ready 2d
如果我遗漏了什么,请告诉我
谢谢,阿莫尔
发布于 2017-10-02 13:51:36
检查您的kubectl版本
我在最新的版本中也遇到了同样的问题,然后安装了旧版本的dashboard。
kubectl创建-f https://raw.githubusercontent.com/kubernetes/dashboard/v1.5.1/src/deploy/kubernetes-dashboard.yaml
发布于 2017-07-13 17:56:10
我将逐一检查错误。
Error from server (AlreadyExists): error when creating "kubernetes-dashboard.yaml": serviceaccounts "kubernetes-dashboard" already exists
出现上述情况是因为您之前部署了名为kubernetes-dashboard
的服务。同样的道理适用于services
和deployments.extensions
Error from server (BadRequest): error when creating "kubernetes-dashboard.yaml": ClusterRoleBinding in version "v1beta1" cannot be handled as a ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
出现上述情况的原因是RBAC版本不匹配。RBAC仅从1.6版开始处于测试阶段。参见this。您的集群中kubernetes的版本是什么?如果是1.6版之前的版本,你必须使用v1alpha1
。事实上,如果您的k8s版本很旧,那么RBAC就不是必需的。别管这事了。
error validating "kubernetes-dashboard.yaml": error validating data: found invalid field tolerations for v1.PodSpec; if you choose to ignore these errors, turn validation off with --validate=false
容忍度是1.4或1.5中出现的一个相当新的特性。我想不起来了。您的k8s版本可能不支持它。
此外,tutorial you're using是针对k8s v1.1的,已被弃用,如页面顶部所示。您部署的版本可能已过期。根据您遇到的错误,情况似乎就是这样。
我的建议是拆卸集群,并遵循较新的教程。
https://stackoverflow.com/questions/45075240
复制相似问题