Steps to reproduce the issue:
minikube start --driver=dockerkubectl apply -f https://projectcontour.io/quickstart/contour.yamlminikube tunnel! The service envoy requires privileged ports to be exposed: [80 443]
* sudo permission will be asked for it.
* Starting tunnel for service envoy.
E0825 08:21:37.881647 14188 ssh_tunnel.go:113] error starting ssh tunnel: exec: "sudo": executable file not found in %PATH%
Full output of failed command:
I0825 08:21:34.195504 14188 mustload.go:64] Loading cluster: minikube
I0825 08:21:34.252507 14188 cli_runner.go:109] Run: docker container inspect minikube --format={{.State.Status}}
I0825 08:21:34.376524 14188 host.go:65] Checking if "minikube" exists ...
I0825 08:21:34.401504 14188 cli_runner.go:109] Run: docker container inspect -f "'{{(index (index .NetworkSettings.Ports "8443/tcp") 0).HostPort}}'" minikube
I0825 08:21:34.532508 14188 api_server.go:146] Checking apiserver status ...
I0825 08:21:34.576508 14188 ssh_runner.go:148] Run: sudo pgrep -xnf kube-apiserver.*minikube.*
I0825 08:21:34.657504 14188 cli_runner.go:109] Run: docker container inspect -f "'{{(index (index .NetworkSettings.Ports "22/tcp") 0).HostPort}}'" minikube
I0825 08:21:34.814523 14188 sshutil.go:44] new ssh client: &{IP:127.0.0.1 Port:32783 SSHKeyPath:C:\Users\smacd\.minikube\machines\minikube\id_rsa Username:docker}
I0825 08:21:35.914761 14188 ssh_runner.go:188] Completed: sudo pgrep -xnf kube-apiserver.*minikube.*: (1.3052279s)
I0825 08:21:35.944767 14188 ssh_runner.go:148] Run: sudo egrep ^[0-9]+:freezer: /proc/2111/cgroup
I0825 08:21:36.794713 14188 api_server.go:162] apiserver freezer: "20:freezer:/docker/686dfdac2f84b49e8b35d29de4306b63f276d8dc79237b1b87b216abfb467578/kubepods/burstable/pod6ff2e3bf96dbdcdd33879625130d5ccc/404c01b15f4715329080a176ded5e49382f1b081f85714bcf570f2086ffa2f18"
I0825 08:21:36.821731 14188 ssh_runner.go:148] Run: sudo cat /sys/fs/cgroup/freezer/docker/686dfdac2f84b49e8b35d29de4306b63f276d8dc79237b1b87b216abfb467578/kubepods/burstable/pod6ff2e3bf96dbdcdd33879625130d5ccc/404c01b15f4715329080a176ded5e49382f1b081f85714bcf570f2086ffa2f18/freezer.state
I0825 08:21:37.660470 14188 api_server.go:184] freezer state: "THAWED"
I0825 08:21:37.661468 14188 api_server.go:221] Checking apiserver healthz at https://127.0.0.1:32780/healthz ...
I0825 08:21:37.672472 14188 api_server.go:241] https://127.0.0.1:32780/healthz returned 200:
ok
I0825 08:21:37.672472 14188 tunnel.go:56] Checking for tunnels to cleanup...
I0825 08:21:37.714501 14188 cli_runner.go:109] Run: docker container inspect -f "'{{(index (index .NetworkSettings.Ports "22/tcp") 0).HostPort}}'" minikube
! The service envoy requires privileged ports to be exposed: [80 443]
* sudo permission will be asked for it.
* Starting tunnel for service envoy.
E0825 08:21:37.881647 14188 ssh_tunnel.go:113] error starting ssh tunnel: exec: "sudo": executable file not found in %PATH%
I0825 08:21:37.896677 14188 loadbalancer_patcher.go:121] Patched envoy with IP 127.0.0.1
Full output of minikube start command used, if not already included:
C:\Users\smacd>minikube start --driver=docker
* minikube v1.12.2 on Microsoft Windows 10 Pro 10.0.19041 Build 19041
* Using the docker driver based on user configuration
* Starting control plane node minikube in cluster minikube
* Creating docker container (CPUs=2, Memory=4000MB) ...
* Preparing Kubernetes v1.18.3 on Docker 19.03.8 ...
* Verifying Kubernetes components...
* Enabled addons: default-storageclass, storage-provisioner
* Done! kubectl is now configured to use "minikube"
! C:\Program Files\Docker\Docker\resources\bin\kubectl.exe is version 1.16.6-beta.0, which may be incompatible with Kubernetes 1.18.3.
* You can also use 'minikube kubectl -- get pods' to invoke a matching version
Optional: Full output of minikube logs command:
Hey @smacdav thanks for opening this issue. I"m just curious, does this work if you don't enable contour?
I'd also suggest upgrading to the latest version of minikube, v1.13.0.
It does work if I don't enable contour. Interesting. Not useful to me, but interesting.
I went ahead and upgraded the system I was doing this on to v1.13.0. I have another system, however, on which v1.13.0 doesn't seem to work: it fails to connect to the controller-manager and scheduler, so they fail their health-checks. I rolled that system back to 1.12.2. It would be nice to be able to upgrade, though.
The problem I had with 1.13.0 appears to only be an issue if I start "fresh" and therefore run kubernetes v1.19.0. Then I get
$ minikube start
๐ minikube v1.13.0 on Microsoft Windows 10 Pro 10.0.19041 Build 19041
โจ Automatically selected the docker driver
๐ Starting control plane node minikube in cluster minikube
๐ Pulling base image ...
๐พ Downloading Kubernetes v1.19.0 preload ...
> preloaded-images-k8s-v6-v1.19.0-docker-overlay2-amd64.tar.lz4: 486.28 MiB
๐ฅ Creating docker container (CPUs=2, Memory=4000MB) ...
๐ณ Preparing Kubernetes v1.19.0 on Docker 19.03.8 ...
๐ Verifying Kubernetes components...
๐ Enabled addons: default-storageclass, storage-provisioner
โ C:\Program Files\Docker\Docker\resources\bin\kubectl.exe is version 1.16.6-beta.0, which may have incompatibilites wi
th Kubernetes 1.19.0.
๐ก Want kubectl v1.19.0? Try 'minikube kubectl -- get pods -A'
๐ Done! kubectl is now configured to use "minikube" by default
$ kubectl get componentstatuses
NAME STATUS MESSAGE
ERROR
controller-manager Unhealthy Get "http://127.0.0.1:10252/healthz": dial tcp 127.0.0.1:10252: connect: connection ref
used
scheduler Unhealthy Get "http://127.0.0.1:10251/healthz": dial tcp 127.0.0.1:10251: connect: connection ref
used
etcd-0 Healthy {"health":"true"}
If I run an existing kubernetes v1.18.3 image then it runs just fine. I should probably file a separate ticket for that, huh?
Same issue on v1.13.0
Running on Windows using gitbash.
$ minikube start
* minikube v1.13.0 on Microsoft Windows 10 Pro 10.0.20190 Build 20190
- KUBECONFIG=C:\Users\EricObermuhlner\Kube\admin.conf
* Using the docker driver based on existing profile
* Starting control plane node minikube in cluster minikube
* Restarting existing docker container for "minikube" ...
* Preparing Kubernetes v1.19.0 on Docker 19.03.8 ...
* Verifying Kubernetes components...
* Enabled addons: dashboard, default-storageclass, storage-provisioner
* Done! kubectl is now configured to use "minikube" by default
$ minikube tunnel
! The service istio-ingressgateway requires privileged ports to be exposed: [80 443]
* sudo permission will be asked for it.
* Starting tunnel for service istio-ingressgateway.
E0909 08:46:43.683722 12972 ssh_tunnel.go:113] error starting ssh tunnel: exec: "sudo": executable file not found in %PATH%
Yeah, I'd say we really screwed this up for Windows users when we added this forwarding feature. "sudo" isn't necessary there for binding to ports <1024.
I suspected https://github.com/kubernetes/minikube/pull/6833 at first - but that was merged already back in February.
hi, any solution for this error?
ssh_tunnel.go:113] error starting ssh tunnel: exec: "sudo": executable file not found in %PATH%
I will pick this up.
/assign
I am facing the same issue on windows. with WSL 2.
ssh_tunnel.go:113] error starting ssh tunnel: exec: "sudo": executable file not found in %PATH%
hi, any solution for this error yet?
I am also looking for a solution. Please suggest if there is any solution.
I am still working on this :)
On Tue 3 Nov, 2020, 11:14 PM anuanju89, notifications@github.com wrote:
I am also looking for a solution. Please suggest if there is any solution.
โ
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/kubernetes/minikube/issues/9078#issuecomment-721279663,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABVJQI5UYS32H733ZXEHA2LSOA6O5ANCNFSM4QKZJO2A
.
Same issue here. Painful flaw as it makes minikube useless on a Windows machine.
The same problem, any solution?
Not from me. I use my own AKS cluster and not minikube, docker compose and docker desktop (has also k8) might be other options?
Most helpful comment
Same issue on v1.13.0
Running on Windows using gitbash.