使用 helm 安装 kubernetes-dashboard 失败
Installing kubernetes-dashboard with helm fails
我刚刚创建了一个新的 kubernetes 集群。除了设置集群之外,我唯一做的就是使用 helm init
安装 Tiller 并通过 helm install stable/kubernetes-dashboard
.
安装 kubernetes 仪表板
helm install
命令似乎成功并且 helm ls
输出:
NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
exhaling-ladybug 1 Thu Oct 24 16:56:49 2019 DEPLOYED kubernetes-dashboard-1.10.0 1.10.1 default
然而,等待几分钟后,部署仍未准备就绪。
运行 kubectl get pods
显示 pod 的状态为 CrashLoopBackOff
.
NAME READY STATUS RESTARTS AGE
exhaling-ladybug-kubernetes-dashboard 0/1 CrashLoopBackOff 10 31m
广告连播的描述显示了以下事件:
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 31m default-scheduler Successfully assigned default/exhaling-ladybug-kubernetes-dashboard to nodes-1
Normal Pulling 31m kubelet, nodes-1 Pulling image "k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1"
Normal Pulled 31m kubelet, nodes-1 Successfully pulled image "k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1"
Normal Started 30m (x4 over 31m) kubelet, nodes-1 Started container kubernetes-dashboard
Normal Pulled 30m (x4 over 31m) kubelet, nodes-1 Container image "k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1" already present on machine
Normal Created 30m (x5 over 31m) kubelet, nodes-1 Created container kubernetes-dashboard
Warning BackOff 107s (x141 over 31m) kubelet, nodes-1 Back-off restarting failed container
并且日志显示以下紧急消息
panic: secrets is forbidden: User "system:serviceaccount:default:exhaling-ladybug-kubernetes-dashboard" cannot create resource "secrets" in API group "" in the namespace "kube-system"
我是不是做错了什么?为什么它试图在它不能的地方创建一个秘密?
是否可以在不授予仪表板帐户集群管理员权限的情况下进行设置?
尝试创建 clusterrole
kubectl create clusterrolebinding kubernetes-dashboard --clusterrole=cluster-admin --serviceaccount=kube-system:kubernetes-dashboard
默认情况下,我将命名空间设置为默认值,但如果是其他名称,您需要替换为您的
kubectl create serviceaccount exhaling-ladybug-kubernetes-dashboard
kubectl create clusterrolebinding kubernetes-dashboard --clusterrole=cluster-admin --serviceaccount=default:exhaling-ladybug-kubernetes-dashboard
看看这个伙计:
https://akomljen.com/installing-kubernetes-dashboard-per-namespace/
如果需要,您可以创建自己的角色。
根据您发布的错误,令人高兴的是:
1. helm 正在尝试安装仪表板,但默认情况下它会选择您提供的命名空间。
为了解决这个问题:
1.要么你根据你试图安装的命名空间创建角色,默认命名空间应该是:default
2. 只需将 helm chart 安装在 helm chart 所需的正确位置,在您的情况下,您可以这样做:
helm install stable/kubernetes-dashboard --name=kubernetes-dashboard --namespace=kube-system
我刚刚创建了一个新的 kubernetes 集群。除了设置集群之外,我唯一做的就是使用 helm init
安装 Tiller 并通过 helm install stable/kubernetes-dashboard
.
helm install
命令似乎成功并且 helm ls
输出:
NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
exhaling-ladybug 1 Thu Oct 24 16:56:49 2019 DEPLOYED kubernetes-dashboard-1.10.0 1.10.1 default
然而,等待几分钟后,部署仍未准备就绪。
运行 kubectl get pods
显示 pod 的状态为 CrashLoopBackOff
.
NAME READY STATUS RESTARTS AGE
exhaling-ladybug-kubernetes-dashboard 0/1 CrashLoopBackOff 10 31m
广告连播的描述显示了以下事件:
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 31m default-scheduler Successfully assigned default/exhaling-ladybug-kubernetes-dashboard to nodes-1
Normal Pulling 31m kubelet, nodes-1 Pulling image "k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1"
Normal Pulled 31m kubelet, nodes-1 Successfully pulled image "k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1"
Normal Started 30m (x4 over 31m) kubelet, nodes-1 Started container kubernetes-dashboard
Normal Pulled 30m (x4 over 31m) kubelet, nodes-1 Container image "k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1" already present on machine
Normal Created 30m (x5 over 31m) kubelet, nodes-1 Created container kubernetes-dashboard
Warning BackOff 107s (x141 over 31m) kubelet, nodes-1 Back-off restarting failed container
并且日志显示以下紧急消息
panic: secrets is forbidden: User "system:serviceaccount:default:exhaling-ladybug-kubernetes-dashboard" cannot create resource "secrets" in API group "" in the namespace "kube-system"
我是不是做错了什么?为什么它试图在它不能的地方创建一个秘密?
是否可以在不授予仪表板帐户集群管理员权限的情况下进行设置?
尝试创建 clusterrole
kubectl create clusterrolebinding kubernetes-dashboard --clusterrole=cluster-admin --serviceaccount=kube-system:kubernetes-dashboard
默认情况下,我将命名空间设置为默认值,但如果是其他名称,您需要替换为您的
kubectl create serviceaccount exhaling-ladybug-kubernetes-dashboard
kubectl create clusterrolebinding kubernetes-dashboard --clusterrole=cluster-admin --serviceaccount=default:exhaling-ladybug-kubernetes-dashboard
看看这个伙计:
https://akomljen.com/installing-kubernetes-dashboard-per-namespace/
如果需要,您可以创建自己的角色。
根据您发布的错误,令人高兴的是:
1. helm 正在尝试安装仪表板,但默认情况下它会选择您提供的命名空间。
为了解决这个问题:
1.要么你根据你试图安装的命名空间创建角色,默认命名空间应该是:default
2. 只需将 helm chart 安装在 helm chart 所需的正确位置,在您的情况下,您可以这样做:
helm install stable/kubernetes-dashboard --name=kubernetes-dashboard --namespace=kube-system