Minikube Kubernetes kubectl MacOS Error

7/7/2017

I just followed the instructions to install Minikube on my Mac using brew:

https://github.com/kubernetes/minikube

brew cask install minikube

And then I just followed the instructions to test it:

minikube start

Gave me the following:

MacBook-Pro:~ joe$ minikube start
Starting local Kubernetes v1.6.4 cluster...
Starting VM...
Moving files into cluster...
Setting up certs...
Starting cluster components...
Connecting to cluster...
Setting up kubeconfig...
Kubectl is now configured to use the cluster

I then tried to ask for the kubectl version as:

MacBook-Pro:~ joe$ kubectl version
Client Version: version.Info{Major:"1", Minor:"4", GitVersion:"v1.4.5", GitCommit:"5a0a696437ad35c133c0c8493f7e9d22b0f9b81b", GitTreeState:"clean", BuildDate:"2016-10-29T01:38:40Z", GoVersion:"go1.7.1", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"6", GitVersion:"v1.6.4", GitCommit:"d6f433224538d4f9ca2f7ae19b252e6fcb66a3ae", GitTreeState:"dirty", BuildDate:"2017-06-22T04:31:09Z", GoVersion:"go1.7.5", Compiler:"gc", Platform:"linux/amd64"}

And I then tried the usual hello world example as below, which resulted in the error (also shown below):

MacBook-Pro:~ joe$ kubectl run hello-minikube --image=gcr.io/google_containers/echoserver:1.4 --port=8080
error: group map[extensions:0xc4204c6000 policy:0xc4204c6070 rbac.authorization.k8s.io:0xc4200ea070 storage.k8s.io:0xc4200ea150 federation:0xc4203ba0e0 apps:0xc4203ba620 authentication.k8s.io:0xc4203ba690 batch:0xc4203baa10 certificates.k8s.io:0xc4203baa80 componentconfig:0xc4203baaf0 :0xc4203ba5b0 authorization.k8s.io:0xc4203ba7e0 autoscaling:0xc4203ba850] is already registered

I could not find any suitable answers. I guess my kubectl client should be updated. But how do I do this on my Mac? I guess it was all installed using brew. So any ideas how I could get this fixed?

EDIT: Tried what the post from Sebastien Goasguen

Hers is what I get:

MacBook-Pro:~ joe$ brew upgrade kubectl
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 2 taps (caskroom/cask, homebrew/core).
==> Updated Formulae
bacula-fd           etcd                fio                 gx-go               kibana              metricbeat          packetbeat          subversion          webpack
certbot             exa                 gnumeric            heroku              libuv               mikutter            paket               tippecanoe          you-get
dos2unix            exploitdb           goffice             hugo                llnode              neovim              pyenv               vagrant-completion
elasticsearch       filebeat            gx                  irssi               logstash            numpy               remarshal           vim

Error: kubectl 1.7.0 already installed
MacBook-Pro:~ joe$ kubectl config use-context minikube
switched to context "minikube".
MacBook-Pro:~ joe$ kubectl run hello-minikube --image=gcr.io/google_containers/echoserver:1.4 --port=8080
Unable to connect to the server: dial tcp 192.168.99.101:8443: i/o timeout
MacBook-Pro:~ joe$ minikube delete
Deleting local Kubernetes cluster...
Machine deleted.
MacBook-Pro:~ joe$
-- sparkr
kubectl
kubernetes
minikube

1 Answer

7/7/2017

So first update kubectl. If you installed it with brew:

brew upgrade kubectl

Otherwise, check the kubectl installation docs here: https://kubernetes.io/docs/tasks/tools/install-kubectl/

Then make sure you are targeting your minikube:

kubectl config use-context minikube

If that still fails, stop and delete minikube and re-install by downloading the release from the GitHub release page:

https://github.com/kubernetes/minikube/releases

-- Sebastien Goasguen
Source: StackOverflow