Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker Swarm和Kubernetes有何不同?_Docker_Kubernetes_Docker Swarm - Fatal编程技术网

Docker Swarm和Kubernetes有何不同?

Docker Swarm和Kubernetes有何不同?,docker,kubernetes,docker-swarm,Docker,Kubernetes,Docker Swarm,我发现docker swarm和kubernetes非常相似,还有docker,这是一家公司,上面两个是docker集群工具。那么这些工具到底是什么以及它们之间的区别呢?有很多文章将解释这些区别。简言之: 两者都试图解决相同的问题——在大量主机上进行容器编排。基本上,这些问题可以这样分解: 跨多台主机调度容器(考虑资源利用率等) 将容器分组为逻辑单元 容器的缩放 这些容器部署后的负载平衡/访问 将存储连接到容器,无论是否共享 容器/分组容器之间的通信/联网 容器的服务发现(即X服务在哪里)

我发现docker swarm和kubernetes非常相似,还有docker,这是一家公司,上面两个是docker集群工具。那么这些工具到底是什么以及它们之间的区别呢?

有很多文章将解释这些区别。简言之:

  • 两者都试图解决相同的问题——在大量主机上进行容器编排。基本上,这些问题可以这样分解:
    • 跨多台主机调度容器(考虑资源利用率等)
    • 将容器分组为逻辑单元
    • 容器的缩放
    • 这些容器部署后的负载平衡/访问
    • 将存储连接到容器,无论是否共享
    • 容器/分组容器之间的通信/联网
    • 容器的服务发现(即X服务在哪里)
Kubernetes和Docker Swarm都可以为您解决这些问题,但它们在如何解决这些问题上有不同的命名约定和想法。这些差异是相对概念上的。有些文章对此进行了很好的分析:

本质上,它们是同一空间中的相似产品。不过,有几点需要注意:

  • Kubernetes是以容器不可知论的心态开发的(目前它支持Docker,并对Docker有一些支持,而Docker swarm仅支持Docker)
  • Kubernetes是“云原生”的,因为它可以在不同的环境中运行,而且-我目前不知道这是Docker Swarm的一个功能,尽管您可以自己配置它
  • Kubernetes是一个完全开源的产品。如果您需要商业支持,您需要向第三方寻求支持。Docker为Swarm提供企业支持
  • 如果您熟悉docker compose工作流,docker Swarm将利用此工作流,以便您熟悉并更容易开始。Kubernetes需要学习pod/服务/部署定义,虽然这些定义纯粹是yaml,但却是一种调整

    • 这是docker swarm和Kubernetes的一对一映射

      字幕:janakiram MSV和观看完整视频


      这一比较归功于@asynchio:完整演示的链接:嗨,这是我与Kubernetes的经验,以及我为什么选择docker 1.13中的Swarm