我是集群容器管理的新手,这个问题是这里所有新人的基础。
我读了一些文档,但是,我的理解还不太清楚,所以任何线索......都有助于理解?
我认为这4-5集将帮助我更好。
假设您的目标是在多个不同的基于Raspberry Pi的节点上运行一组容器:
如果你想要一个非常简单的多节点容器集群,我会说Docker swarm是一个合理的选择。如果您明确想要尝试Kubernetes,我会说kubeadm在这里是个不错的选择。 Kubernetes通常比Docker Swarm有更高的资源要求,所以它可能不太适合它,虽然我知道人们已经成功地在Raspberry Pis上运行Kubernetes集群。
我得到的印象是你主要是在寻找确认,如果可以,我很乐意帮助你。
Docker Compose一个实用程序,用于使用单个docker-compose up
在单个主机上启动多个docker容器。这使得更容易一次启动多个容器,而不是执行多个docker run
命令。
Docker swarm Docker的本机容器编排器。 Docker swarm允许您创建在多台计算机上运行的docker容器集群。它提供了诸如复制,缩放,自我修复等功能,即当一个人死亡时启动一个新容器......
Kubernetes也是一个容器协调者。 Kubernetes和Docker swarm可以被视为彼此的替代品。他们都试图处理从集群开始的容器管理
Minikube创建一个真正的kubernetes集群需要在内部或云平台上拥有多台计算机。如果有人刚接触Kubernetes并试图通过玩Kubernetes来学习,这并不总是方便的。要解决这个问题,你可以启动一个非常基本的Kubernetes集群,它由你机器上的一个虚拟机组成,你可以用它来玩Kubernetes。
Minikube不适用于生产或多节点群集。有许多工具可用于创建多节点Kubernetes集群,例如kubeadm
对于Pi,您可以在一个或多个Pi上使用Docker Swarm模式。您甚至可以运行ARM仿真来测试Docker for Windows / Mac,然后再尝试将其全部直接在Pi上运行。 Kubernetes也是如此,因为它现在内置于Docker for Windows / Mac(不需要minikube)。
亚历克斯埃利斯有一个good blog on Pi和Docker and this post may help too。
容器是应用程序部署的未来。容器是docker中最小的部署单位。 docker中有三个组件作为docker engine
运行单个容器,docker-compose
在单个主机上运行多容器应用程序,docker-swarm
在主机上运行多容器应用程序,这也是一个编排工具。
在kubernetes中,最小的部署单位是Pod(由多个容器组成)。 Minikube
是一个单节点集群,您可以在本地安装它,并在本地尝试,测试和感受kubernetes功能。但是,您无法将其扩展到多台计算机。 Kubernetes
是一个像Docker Swarm这样的编排工具,但在功能,扩展,弹性和安全性方面比Docker Swarm更为突出。
您可以进行分析并考虑哪种工具适合您的要求。每个人都有自己的优点或缺点,如docker swarm,很好,很容易管理小群集,而kubernetes更适合更大的一次。还有另一个编排工具Mesos,它也很受欢迎,并用于最大规模的集群。 看看这个,Choose your own Adventure但是,这只是一个通用的类比,只有理解,因为这三种技术都在快速发展。