Minikube Kubernetes 不允许进入 Mac 尽管 运行 作为虚拟机
Minikube Kubernetes won't allow ingress on Mac despite running as a VM
I 运行 minikube start --vm=true
输出:
minikube v1.12.2 on Darwin 10.15.5
✨ Using the docker driver based on existing profile
❗ Your system has 16384MB memory but Docker has only 1991MB. For a better performance increase to at least 3GB.
Docker for Desktop > Settings > Resources > Memory
Starting control plane node minikube in cluster minikube
Restarting existing docker container for "minikube" ...
Preparing Kubernetes v1.18.3 on Docker 19.03.8 ...
Verifying Kubernetes components...
Enabled addons: dashboard, default-storageclass, storage-provisioner
Done! kubectl is now configured to use "minikube"
然后这个 minikube addons enable ingress
给我带来了这个错误:
Due to docker networking limitations on darwin, ingress addon is not supported for this driver.
Alternatively to use this addon you can use a vm-based driver:
'minikube start --vm=true'
To track the update on this work in progress feature please check:
https://github.com/kubernetes/minikube/issues/7332
但是我 运行 带有那个特定标志的 minikube - 有什么建议吗?
看起来您的 Minikube 不是 运行ning 作为虚拟机。实际上它仍然使用 Docker 驱动程序。仔细看一下输出,其中 Docker
被提到了几次:
✨ Using the docker driver based on existing profile
❗ Your system has 16384MB memory but Docker has only 1991MB. For a better performance increase to at least 3GB.
Docker for Desktop > Settings > Resources > Memory
重点是“基于现有配置文件”
这里:
Restarting existing docker container for "minikube" ...
Preparing Kubernetes v1.18.3 on Docker 19.03.8 ...
虽然您尝试使用 --vm=true
选项启动您的 Minikube,但它显然被忽略并使用您的默认设置。
很可能是因为你第一次 运行 它带有 --driver=docker
选项(显式或隐式)并且它已保存在你的 Minikube轮廓。要解决此问题,您可能需要删除 Minikube 实例,然后使用 --vm=true
选项重新启动它。您可以更加具体,并通过提供 --driver=hyperkit
选项来选择确切的管理程序。
所以,只需尝试以这种方式启动您的 Minikube:
minikube start --vm=true --driver=hyperkit
如果这没有帮助,你会再次看到相同的输出,提到它一直在使用 docker
驱动程序,运行:
minikube stop && minikube delete && minikube start --vm=true --driver=hyperkit
这应该可以解决您的问题。一旦它开始使用 HyperKit 管理程序,您应该能够 运行 minikube addons enable ingress
而不会出现任何错误。
I 运行 minikube start --vm=true
输出:
minikube v1.12.2 on Darwin 10.15.5
✨ Using the docker driver based on existing profile
❗ Your system has 16384MB memory but Docker has only 1991MB. For a better performance increase to at least 3GB.
Docker for Desktop > Settings > Resources > Memory
Starting control plane node minikube in cluster minikube
Restarting existing docker container for "minikube" ...
Preparing Kubernetes v1.18.3 on Docker 19.03.8 ...
Verifying Kubernetes components...
Enabled addons: dashboard, default-storageclass, storage-provisioner
Done! kubectl is now configured to use "minikube"
然后这个 minikube addons enable ingress
给我带来了这个错误:
Due to docker networking limitations on darwin, ingress addon is not supported for this driver.
Alternatively to use this addon you can use a vm-based driver:
'minikube start --vm=true'
To track the update on this work in progress feature please check:
https://github.com/kubernetes/minikube/issues/7332
但是我 运行 带有那个特定标志的 minikube - 有什么建议吗?
看起来您的 Minikube 不是 运行ning 作为虚拟机。实际上它仍然使用 Docker 驱动程序。仔细看一下输出,其中 Docker
被提到了几次:
✨ Using the docker driver based on existing profile
❗ Your system has 16384MB memory but Docker has only 1991MB. For a better performance increase to at least 3GB.
Docker for Desktop > Settings > Resources > Memory
重点是“基于现有配置文件”
这里:
Restarting existing docker container for "minikube" ...
Preparing Kubernetes v1.18.3 on Docker 19.03.8 ...
虽然您尝试使用 --vm=true
选项启动您的 Minikube,但它显然被忽略并使用您的默认设置。
很可能是因为你第一次 运行 它带有 --driver=docker
选项(显式或隐式)并且它已保存在你的 Minikube轮廓。要解决此问题,您可能需要删除 Minikube 实例,然后使用 --vm=true
选项重新启动它。您可以更加具体,并通过提供 --driver=hyperkit
选项来选择确切的管理程序。
所以,只需尝试以这种方式启动您的 Minikube:
minikube start --vm=true --driver=hyperkit
如果这没有帮助,你会再次看到相同的输出,提到它一直在使用 docker
驱动程序,运行:
minikube stop && minikube delete && minikube start --vm=true --driver=hyperkit
这应该可以解决您的问题。一旦它开始使用 HyperKit 管理程序,您应该能够 运行 minikube addons enable ingress
而不会出现任何错误。