Minikube on Windows and HyperV: Stuck on prompt “m

2019-05-21 01:44发布

I'm "extremely" new to Kubernetes, and I wanted to try it out on my local machine, which is running Windows 10 along with HyperV. I saw that minikube is used for local development, and I was able to find in on Chocolatey, so I installed it using that:

choco install minikube -y

(I think this also installs kubectl)

The problem I have is that I'm not able to start it; I'm running the following command:

minikube start --vm-driver=hyperv

I have an external switch configured in HyperV (I found it as a suggestion somewhere), but when I run the command, it's stuck in Creating VM ...

I thought maybe it would give me a clue if I look at the VM created in HyperV, and when I open that, I see the following: enter image description here

So, it seems that it's waiting for input, and that's why it's stuck! I tried searching for the problem, but to no avail.

I would appreciate any help

PS: It seems to me that if I wait long enough, the following message appears on the console:

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

2条回答
虎瘦雄心在
2楼-- · 2019-05-21 02:02

Farzad, what resources have you used for setting up the minikube? Can you please clarify what do you mean by "unable to start". Are the regular kubectl commands working? For example kubectl get nodes? That is of course if below steps won't help you.

The screenshot you shared shows a running VM:

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.

You mentioned that you've created the vSwitch, you should be using a flag that is pointing minikube to use that external vSwitch: minikube start --vm-driver hyperv --hyperv-virtual-switch "vSwitch name"

You also mentioned choco, did you install kubernetes-cli (as you did not mention it in the question)? It might be the reason why your commands do not work (seems like the new version downloads kubectl with choco install minikube):

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

At this moment I recommend stoping the minikube VM: minikub stop Delete the cluster minikube delete

Sometimes regular minikube stop, minikube delete does not work so you might have to manually turn off the minikubeVM in Hyper-V, then I recommend to go to c:\users\%username%\ and delete .kube and .minikube.

Use cuninst minikube

Restart and install again as specified in the minikube documentation:

choco install minikube

choco install kubernetes-cli

As for the error you mentioned, let's try to run the cluster properly, and if this persists, we will take care of it.

查看更多
Animai°情兽
3楼-- · 2019-05-21 02:16

So, somehow by chance, I think I found how to resolve the issue.

First thing is that: the fact the VM is displaying that prompt (minikube login) seems to be normal, and it does NOT prevent the minikube start from succeeding.

To resolve the issue, this is what I did:

  • Delete ~/.kube directory
  • Delete ~/.minikube directory (in case it exists)
  • The MOST IMPORTANT step: stop/start the Hyper-V Virtual Machine Management Windows service

These steps seem to have solved the issue for me

PS: I used this command to start minikube and enable verbose logging:

minikube start --vm-driver hyperv -v 7 --alsologtostderr
查看更多
登录 后发表回答