当前位置: 首页 > 面试题库 >

Docker Swarm与Kubernetes有何不同?

赏航
2023-03-14
问题内容

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


问题答案:

有很多文章可以解释这些差异。简而言之:

  • 两者都试图解决相同的问题-在大量主机上进行容器编排。本质上,这些问题可以按如下方式分解:
    • 在多个主机之间调度容器(考虑资源利用率等)
    • 将容器分组为逻辑单元
    • 缩放容器
    • 部署后对这些容器进行负载平衡/访问
    • 将存储附加到容器,无论是否共享
    • 容器/分组容器之间的通信/网络
    • 容器的服务发现(即X服务在哪里)

Kubernetes和Docker Swarm都可以为您解决这些问题,但是它们有不同的命名约定和解决方案。差异是相对概念上的。有一些文章很好地解释了这一点:

https://platform9.com/blog/compare-kubernetes-vs-docker-swarm/


https://torusware.com/blog/2016/09/hands-on-orchestration-docker-1-12-swarm-
vs- kubernetes /
http://containerjournal.com/2016/04/07/kubernetes-vs-swarm-container-
orchestrator-best/

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

  • Kubernetes是用容器不可知的思维方式开发的(目前它支持Docker,rkt并对hyper提供了一些支持,而docker swarm仅适用于docker)
  • Kubernetes是“云原生”的,因为它可以在Azure,Google Container Engine和AWS上同样良好地运行-我目前还不知道这是Docker Swarm的功能,尽管您可以自己配置
  • Kubernetes是一个完全开源的产品。如果需要商业支持,则需要联系第三方。Docker为Swarm提供企业支持
  • 如果您熟悉docker-compose工作流程,则Docker Swarm会利用它,因此您可能会熟悉它并更容易上手。Kubernetes要求学习Pod /服务/部署定义,虽然这是纯Yaml,但这是一种调整。


 类似资料:
  • 问题内容: 我只知道一个js库,那就是jQuery。 但是我小组中的其他编码人员正在将AngularJS更改为新项目中的默认库。 我对此一无所知。与jQuery有何不同? 我已经为jQuery中的类似任务完​​成了一组功能。我还能在AngularJS中使用jQuery吗? 问题答案: Angular 1是一个框架,而Angular 2是一个 平台 。(参考) 对于开发人员,Angular2提供了一

  • 我正在阅读GRPC的解释,这张图很有趣: 传输层是如何工作的?如果是通过网络...为什么叫RPC?更重要的是,这与为服务层实现API的REST(客户机中具有发出http请求的方法的类)有何不同?

  • 一篇关于设置幽灵博客的文章说,使用从本地计算机复制到远程服务器:

  • 我试图擦洗GCC手册页,但仍然没有得到它,真的。 和 有什么区别? 什么时候只用< code>-march,而不是两个都用?有没有可能只是< code>-mtune?

  • 我发现docker swarm,kubernetes很相似,然后有docker这是一个公司,上面两个都是docker集群工具。那么这些工具到底是什么,它们之间的区别呢?

  • 我通过玩迷你库贝来学习库伯内特。 如何与Minikube一起使用ingress?或者如何将minikube ip与ingress服务绑定--这样就可以在不使用nodeport的情况下将应用程序公开到外部