我已经熟悉了docker/swarm,但发现有一个“新”项目:docker/swarmkit.但不幸的是,在阅读了README后,我仍然无法弄清楚docker / swarmkit的功能是什么.任何人都可以帮助阐述docker / swarm和docker / swarmkit之间的关系吗?为什么docker / swarmkit诞生了?
>允许您指定发现服务(领事等…)
>一些控制容器放置的位置(使用过滤器/约束/分配策略等…)
>暴露与Docker引擎本身相同的API,允许第三方工具无缝交互
Swarmkit是Docker团队开发的一种新的(2016)工具(大多数是我认为的SocketPlane收购),它提供了运行集群和将任务(注意:不一定是Docker容器)分配给集群中的机器的功能. . Swarmkit的自述文件非常好,以下是宣传的主要功能:
>分布式:SwarmKit使用筏共识算法来协调并且不依赖单点故障来执行决策.
>安全:Swarm中的节点通信和成员资格是开箱即用的. SwarmKit使用相互TLS进行节点身份验证,角色授权和传输加密,自动执行证书颁发和轮换.
>简单:SwarmKit操作简单,可最大限度地减少基础架构依赖性.它不需要外部数据库来运行.
Docker Swarm模式(版本1.12>)使用Swarmkit库&功能,以便在多个主机(群集)上进行容器编排非常简单&安全操作.有一组新的功能(主要是docker swarm),它们现在内置在Docker中,允许你启动一个新的Swarm并部署任务(在这种情况下是Docker容器,但不一定是,请参阅上面的Swarmkit)到该集群.
正如Docker Swarm页面上所提到的,它并没有被弃用,并且仍然是Docker多主机编排的可行方法,但是Docker Swarm模式(它使用了引擎盖下的Swarmkit库)是开始新Docker的推荐方法需要在多个主机上进行编排的项目.