我正在探索在开发人员环境(个人Mac M2笔记本电脑)上运行Kubernetes集群。有几种方法可以使用不同的技术(Minikube,Docker,Colima,Podman,Kind等)。
出于某种原因,我选择Colima作为Docker的容器运行时。Colima官方文档说Colima内置了Kubernetes,还说:
是的,您可以使用minikube(带Docker驱动程序),Kind或K3 d创建Kubernetes集群,而不是在Colima中启用Kubernetes。如果您需要多个集群,或者不需要Docker和Kubernetes共享相同的镜像和运行时,这些是更好的选择。带有Docker运行时的Colima与Minikube(带Docker驱动程序),Kind和K3 d完全兼容。
因此,至少有两种选择来实现我的目标:
- 通过 colima start --kubernetes 将内置Kubernetes用于Colima
- 运行Minikube,在引擎盖下使用Colima。
我成功地配置和运行了这两个。我有点困惑,想知道这两个设置的优点/缺点。我注意到只有不同的容器集,仅此而已。网上冲浪没有帮助很多。
Minikube和内置Kubernetes到Colima之间有什么区别?
1条答案
按热度按时间rkkpypqq1#
在您所要求的特定设置中,他们在选择引导Kubernetes集群的特定方式方面做出了略有不同的决定。
我自己对此进行了探讨,Colima似乎已经使用了K3S,因为它是旋转单个节点集群并为集群提供API的方法,而Minikube的Kubernetes在Docker方法中,AKA Kind。
从一个新的Minikube安装中获取以下输出:
字符串
对阵科利马:
型
在Minikube和Kind的情况下,我们看到Kubernetes API服务器,调度器和控制器管理器沿着ETCD等的Pod,而Colima则缺少这些Pod。其原因,解释K3S文档,K3S将这些封装到一个二进制文件中,并使用与ETCD不同的存储提供程序来为集群API提供服务。默认情况下,容器网络与Minikube也不同使用kindnet与K3S选择flannel。
这对你来说意味着什么简短的回答,这取决于。如果你想验证你的应用程序清单是正确的,两者都可能是好的。两者都可以让你快速开始。如果你需要安装某些东西,比如Ingress控制器或服务网格产品,你可能会从K3S或Kind中找到某些选择,使它更容易或更难。唯一真正要做的是尝试两者,看看哪一个能让你更快地到达你想要的地方。