Windows 和 HyperV 上的 Minikube:卡在提示 "minikube login" 上

Minikube on Windows and HyperV: Stuck on prompt "minikube login"

我是 "extremely" Kubernetes 的新手,我想在我的本地机器上试用它,即 运行ning Windows 10 和 HyperV。我看到 minikube 用于本地开发,并且我能够在 Chocolatey 上找到它,所以我使用它安装它:

choco install minikube -y

(我认为这也安装 kubectl

我遇到的问题是我无法启动它;我正在 运行 执行以下命令:

minikube start --vm-driver=hyperv

我在 HyperV 中配置了 一个 外部开关(我在某处发现这是一个建议),但是当我 运行 命令时,它卡在 Creating VM ...

我想如果我查看在 HyperV 中创建的 VM 可能会给我一些线索,当我打开它时,我看到以下内容:

看来是在等待输入,所以卡住了!我尝试搜索问题,但无济于事。

如有任何帮助,我将不胜感激

PS:在我看来,如果我等待的时间足够长,控制台上会出现以下消息:

Temporary Error: provisioning: error getting ssh client: Error dialing
    tcp via ssh client: ssh: handshake failed: ssh: unable to authenticate, 
    attempted methods [none publickey], no supported methods remain

Farzad,您使用了哪些资源来设置 minikube?你能澄清一下你所说的 "unable to start" 是什么意思吗?常规 kubectl 命令是否有效? 例如kubectl get nodes?如果以下步骤对您没有帮助,那当然是这样。

您分享的屏幕截图显示 运行ning 虚拟机:

Minikube runs a single-node Kubernetes cluster inside a VM on your laptop for users looking to try out Kubernetes or develop with it day-to-day.

您提到您已经创建了 vSwitch,您应该使用指向 minikube 的标志来使用该外部 vSwitch: minikube start --vm-driver hyperv --hyperv-virtual-switch "vSwitch name"

你也提到了choco,你有没有安装kubernetes-cli(因为你在问题中没有提到)?这可能是您的命令不起作用的原因(似乎新版本使用 choco install minikube 下载 kubectl):

kubectl is a command line interface for running commands against Kubernetes clusters

此时我建议停止 minikube VM: minikub stop 删除集群 minikube delete

有时常规 minikube stopminikube delete 不起作用,因此您可能必须在 Hyper-V 中手动关闭 minikubeVM,然后我建议转到 c:\users\%username% \ 并删除 .kube 和 .minikube。

使用cuninst minikube

重新启动并按照 minikube 文档中的说明再次安装:

choco install minikube

choco install kubernetes-cli

关于您提到的错误,让我们尝试运行正常集群,如果仍然存在,我们会处理它。

所以,不知何故,我想我找到了解决问题的方法。

首先是:VM 显示该提示 (minikube login) 的事实似乎是正常的,并且不会阻止 minikube start 成功。

为了解决这个问题,我是这样做的:

  • 删除~/.kube目录
  • 删除 ~/.minikube 目录(如果存在)
  • 最重要步骤:stop/startHyper-V虚拟机管理Windows服务

这些步骤似乎已经解决了我的问题

PS:我使用此命令启动 minikube 并启用详细日志记录:

minikube start --vm-driver hyperv -v 7 --alsologtostderr

试试这个:

kubectl 配置使用上下文 minikube

我遇到了同样的问题。原因是我在 Virtual Box 中创建虚拟机后选择了错误的磁盘文件来启动它。