我正在学习 Kubernetes 课程,课程的一部分是尝试 minikube。我在 Windows 11 上的 Ubuntu 20.04 WSL 上安装了 minikube 和 kubectl。当我在 Ubuntu 终端中运行
minikube dashboard
时,进程挂在 Verifying proxy health...
上。我尝试在另一个终端窗口中运行 kubectl proxy
,然后运行 minikube dashboard
。
我转到仪表板 URL 并使用 kubectl proxy 命令指示的代理端口号,但我只得到这个:
{
"kind": "Status",
"apiVersion": "v1",
"metadata": {},
"status": "Failure",
"message": "no endpoints available for service \"kubernetes-dashboard\"",
"reason": "ServiceUnavailable",
"code": 503
}
我还尝试使用
minikube start --vm-driver=docker
运行 minikube,如本 GitHub 问题 中所述,但它仍然挂起。如何让仪表板运行?总的来说,我对 Kubernetes 完全陌生。
对我来说,重新启动 minikube 后解决了同样的问题。
minikube stop
<close previously opened dashboard process> - for me ctrl+c in separate terminal, but maybe you'd have to kill it
minikube start
minikube dashboard
禁用指标服务器后,它对我有用
minikube addons disable metrics-server
禁用后,重新启用即可继续工作。
minikube addons enable metrics-server
首先,当我尝试启动仪表板时,出现以下错误:
仪表板:ClusterRoleBinding“kubernetes-dashboard”无效: 无法更改角色参考
使用终端中提供的链接我按照答案中的步骤操作,然后仪表板陷入以下错误:
验证代理运行状况...
重启minikube并没有解决问题。
以下步骤解决了该问题:
FWIW 我遇到了这个问题,这是由于 docker 没有足够的空间。很容易错过警告信息:
🧯 Docker is nearly out of disk space, which may cause deployments to fail! (94% of capacity). You can pass '--force' to skip this check.
清理我的 docker 资源(我最近进行了一些非常大的实验构建),重新启动 minikube 允许
minikube dashabord
成功启动。 YMMV;您可以为 docker 分配更多空间(如果您正在使用的话)
minikube ssh
确保 Minikube 可以与互联网通信。
简单的ping google.com
就可以了。
我必须切换 docker 上下文才能让它为我工作:
docker context use default
我必须这样做才能让它发挥作用:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta8/aio/deploy/recommended.yaml
# Replace ClusterIP with NodePort (case sensitive)
kubectl edit svc kubernetes-dashboard -n kubernetes-dashboard
尝试在互联网连接缓慢且不稳定的情况下启动 minikube 集群和仪表板时,仪表板也遇到同样的问题。从良好的互联网开始,它成功了。我对 kubernetes 也很陌生,但它似乎需要稳定的互联网才能工作或至少检查代理的运行状况。
对我来说,它正在更新 docker 桌面。有一个非常旧的版本,并且总是推迟更新提示。从来没有用过那么多。 更新后,就可以正常使用了。