I've looked at How does one install the kube-dns addon for minikube? but the issue is that in that question, the addon is installed. However when I write
minikube addons list
I get the following:
- addon-manager: enabled - dashboard: enabled - default-storageclass: enabled - efk: disabled - freshpod: disabled - gvisor: disabled - heapster: disabled - ingress: disabled - logviewer: disabled - metrics-server: disabled - nvidia-driver-installer: disabled - nvidia-gpu-device-plugin: disabled - registry: disabled - registry-creds: disabled - storage-provisioner: enabled - storage-provisioner-gluster: disabled
none of which is kube-dns. Can't find instructions anywhere as it's supposed to be there by default, so what have I missed?
EDIT This is minikube v1.0.1 running on Ubuntu 18.04.
The StackOverflow case which you are referring to was in 2017 so it's bit outdated.
According to documentation CoreDNS is recommended DNS server which replaced kube-dns. There was a transitional period when both KubeDNS and CoreDNS were deployed parallel, however in latest version only CoreDNS is deployed.
As default Minikube
is creating 2 pods with CoreDNS. To verify execute:
$ kubectl get pods -n kube-system
NAME READY STATUS RESTARTS AGE
coredns-5c98db65d4-g4vs2 1/1 Running 1 20m
coredns-5c98db65d4-k4s7v 1/1 Running 1 20m
etcd-minikube 1/1 Running 0 19m
kube-addon-manager-minikube 1/1 Running 0 20m
kube-apiserver-minikube 1/1 Running 0 19m
kube-controller-manager-minikube 1/1 Running 0 19m
kube-proxy-thbv5 1/1 Running 0 20m
kube-scheduler-minikube 1/1 Running 0 19m
storage-provisioner 1/1 Running 0 20m
You can also see that there is CoreDNS deployment.
$ kubectl get deployments coredns -n kube-system
NAME READY UP-TO-DATE AVAILABLE AGE
coredns 2/2 2 2 37m
Here you can find comparison between both DNS.
So in short, you did not miss anything. CoreDNS is deployed as default during minikube start
.