-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ingress-dns no longer works on MacOS in minikube 1.23 #12424
Comments
Also, downgrading to 1.22 resolves the issue for us. |
Seems to be a service account issue:
|
This is also happening under Linux (Fedora) with the Docker engine. Edit: with regular |
Arch Linux, not working |
The ingress-dns issue has to do with the source code of the docker image the addon is using. It's calling an old endpoint for ingresses that was fully deprecated in 1.22, which is causing the pod to crash anytime the nslookup is done. I'm building/pushing a new image with the proper endpoint here soon and the fix will be live in the 1.23.1 release happening this week. |
Hi @sharifelgamal I tried the initial steps to reproduce that issue. I also upgraded Minikube to version
I also tried to run I also tried also another Kubernetes version (which I normally use and need): And that's the content of my /private/etc/resolver/minikube file:
But tests against that domain are still failing. Why and how to bypass that?
Maybe out of scope: has Any suggestion could safe my weekend :-) here are my Click to expand!
|
Since this seems like a common problem, I'll go ahead and explain what's happening for MacOS M1 users the output of You can validate this as follows: $ docker ps | grep minikube # get the minikube container
4384aae94e95 kicbase/stable:v0.0.42 "/usr/local/bin/entrβ¦" 2 weeks ago Up About an hour 127.0.0.1:50144->22/tcp, 127.0.0.1:50145->2376/tcp, 127.0.0.1:50147->5000/tcp, 127.0.0.1:50143->8443/tcp, 127.0.0.1:50146->32443/tcp
$ minikube ip
192.168.49.2
$ docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' minikube
192.168.49.2 # sounds about right
$ curl -k https://192.168.49.2:8443 # does not work with internal ip
# timeout
$ curl -k https://127.0.0.1:50143/ # works with exposed port (scroll to the right for `docker ps` output)
{
"kind": "Status",
"apiVersion": "v1",
"metadata": {},
"status": "Failure",
"message": "forbidden: User \"system:anonymous\" cannot get path \"/\"",
"reason": "Forbidden",
"details": {},
"code": 403
} The solution would be to use a tool like docker-mac-net-connect. If you don't want to, you can just update your For more about DNS, see how docker implements their DNS resolution |
For me docker-mac-net-connect worked very well as @usersina said.
Just one thing to mention, I had to reinstall Docker for applying the solution. |
+1 |
Sorry, after installing docker-mac-net-connect, what are we gonna do next? I just installed and followed the official tutorial but still cannot use ingress-dns. |
This worked for me (using a ".test" domain on my local machine to resolve ingress resources): $ minikube addons enable ingress
$ minikube addons enable ingress-dns
$ brew install chipmk/tap/docker-mac-net-connect
$ sudo brew services start chipmk/tap/docker-mac-net-connect
$ cat <<EOF | sudo tee /etc/resolver/minikube-test
domain test
nameserver $(minikube ip)
search_order 1
timeout 5
EOF Check that the resolver shows up in the output of Then I set the output of
|
MacOS BigSur 11.5.2
Following the ingress-dns setup.
Steps to reproduce the issue:
minikube start --vm=true
tried with and without --vm=trueΒ
Β
Β
> kubectl apply -f https://raw.githubusercontent.com/kubernetes/minikube/master/deploy/addons/ingress-dns/example/example.yaml deployment.apps/hello-world-app created ingress.networking.k8s.io/example-ingress created service/hello-world-app created service/hello-world-app created
Then verification:
lsof
shows nothing is listening on port 53:logs.txt
The text was updated successfully, but these errors were encountered: