作者:鲁有军_644 | 来源:互联网 | 2022-12-08 16:40
Kubernetes几乎是从一个干净的平台开发出来的,用于将Docker容器内核扩展为平台。Kubernetes开发已经采取了自下而上的方法。它在指定每个容器/容器的资源要求方面有很好的优化,但是它缺乏有效的全局调度程序,无法将资源划分为逻辑分组。Kubernetes设计允许在集群中运行多个调度程序。每个调度程序都在其自己的Pod中管理资源。但是,当应用程序需要的资源比物理系统可以处理的资源更多时,Kubernetes群集可能会遭受不稳定的困扰。它在超出应用程序需求的基础架构容量方面表现最佳。Kubernetes调度程序将尝试使用传入的应用程序请求填充空闲节点,并终止低优先级和饥饿容器以提高资源利用率。Kubernetes容器可以与S3之类的外部存储系统集成,以提供数据弹性。Kubernetes框架使用etcd存储集群数据。Etcd集群节点和Hadoop Namenode都是Kubernetes或Hadoop平台中的单点故障。Etcd可以比Namenode具有更多的副本,因此,从可靠性的角度看,从理论上讲,它似乎更倾向于Kubernetes。但是,除非使用细粒度角色绑定定义RBAC,否则Kubernetes的安全性默认为开放状态。为Pod正确设置了安全上下文。如果省略,则pod的主要组将默认为root,这对于试图保护基础结构的系统管理员可能会造成问题。Etcd集群节点和Hadoop Namenode都是Kubernetes或Hadoop平台中的单点故障。Etcd可以比Namenode具有更多的副本,因此,从可靠性的角度看,从理论上讲,它似乎更倾向于Kubernetes。但是,除非使用细粒度角色绑定定义RBAC,否则Kubernetes的安全性默认为开放状态。为Pod正确设置了安全上下文。如果省略,则pod的主要组将默认为root,这对于试图保护基础结构的系统管理员可能会造成问题。Etcd集群节点和Hadoop Namenode都是Kubernetes或Hadoop平台中的单点故障。Etcd可以比Namenode具有更多的副本,因此,从可靠性的角度看,从理论上讲,它似乎更倾向于Kubernetes。但是,除非使用细粒度角色绑定定义RBAC,否则Kubernetes的安全性默认为开放状态。为Pod正确设置了安全上下文。如果省略,则pod的主要组将默认为root,这对于试图保护基础结构的系统管理员可能会造成问题。为Pod正确设置了安全上下文。如果省略,则pod的主要组将默认为root,这对于试图保护基础结构的系统管理员可能会造成问题。为Pod正确设置了安全上下文。如果省略,则pod的主要组将默认为root,这对于试图保护基础结构的系统管理员可能会造成问题。
Apache Hadoop YARN开发为运行隔离的Java流程来处理大数据工作负载,然后进行了改进以支持Docker容器。YARN提供全局级别的资源管理(如容量队列),用于将物理资源划分为逻辑单元。可以为每个业务部门分配集群资源的百分比。容量资源共享系统旨在支持企业优先级的保证资源可用性,而不是压缩每个可用的物理资源。YARN在安全性上得分更高。Kerberos中有更多安全性功能,特权/非特权容器的访问控制,受信任的Docker映像以及放置策略约束。大多数与Docker相关的安全性默认情况下都关闭,并且系统管理员需要手动打开标志以向容器授予更多权限。大型企业往往比kubernetes运行Hadoop更多,因为保护系统成本更低。在YARN之上构建了更多的分布式SQL引擎,包括Hive,Impala,SparkSQL和IBM BigSQL。数据库选项使YARN成为吸引人的选项,因为能够在容器中运行在线事务处理,以及使用批处理工作负载进行在线分析处理。Hadoop Developer工具链可能不堪重负。Mapreduce,Hive,Pig,Spark等都有各自的发展风格。用户体验不一致,需要花费一些时间来学习它们。相比之下,Kubernetes的阻塞感较小,因为它仅部署Docker容器。通过引入YARN服务来运行Docker容器工作负载,YARN的感觉比Kubernetes少了。在YARN之上构建了更多的分布式SQL引擎,包括Hive,Impala,SparkSQL和IBM BigSQL。数据库选项使YARN成为吸引人的选项,因为能够在容器中运行在线事务处理,以及使用批处理工作负载进行在线分析处理。Hadoop Developer工具链可能不堪重负。Mapreduce,Hive,Pig,Spark等都有各自的发展风格。用户体验不一致,需要花费一些时间来学习它们。相比之下,Kubernetes的阻塞感较小,因为它仅部署Docker容器。通过引入YARN服务来运行Docker容器工作负载,YARN的感觉比Kubernetes少了。在YARN之上构建了更多的分布式SQL引擎,包括Hive,Impala,SparkSQL和IBM BigSQL。数据库选项使YARN成为吸引人的选项,因为能够在容器中运行在线事务处理,以及使用批处理工作负载进行在线分析处理。Hadoop Developer工具链可能不堪重负。Mapreduce,Hive,Pig,Spark等都有各自的发展风格。用户体验不一致,需要花费一些时间来学习它们。相比之下,Kubernetes的阻塞感较小,因为它仅部署Docker容器。通过引入YARN服务来运行Docker容器工作负载,YARN的感觉比Kubernetes少了。数据库选项使YARN成为吸引人的选项,因为能够在容器中运行在线事务处理,以及使用批处理工作负载进行在线分析处理。Hadoop Developer工具链可能不堪重负。Mapreduce,Hive,Pig,Spark等都有各自的发展风格。用户体验不一致,需要花费一些时间来学习它们。相比之下,Kubernetes的阻塞感较小,因为它仅部署Docker容器。通过引入YARN服务来运行Docker容器工作负载,YARN的感觉比Kubernetes少了。数据库选项使YARN成为吸引人的选项,因为能够在容器中运行在线事务处理,以及使用批处理工作负载进行在线分析处理。Hadoop Developer工具链可能不堪重负。Mapreduce,Hive,Pig,Spark等都有各自的发展风格。用户体验不一致,需要花费一些时间来学习它们。相比之下,Kubernetes的阻塞感较小,因为它仅部署Docker容器。通过引入YARN服务来运行Docker容器工作负载,YARN的感觉比Kubernetes少了。相比之下,Kubernetes的阻塞感较小,因为它仅部署Docker容器。通过引入YARN服务来运行Docker容器工作负载,YARN的感觉比Kubernetes少了。相比之下,Kubernetes的阻塞感较小,因为它仅部署Docker容器。通过引入YARN服务来运行Docker容器工作负载,YARN的感觉比Kubernetes少了。
如果您计划将IT运营外包给公共云,请选择Kubernetes。如果您打算构建私有/混合/多云,请选择Apache YARN。
1> 小智..:
Kubernetes几乎是从一个干净的平台开发出来的,用于将Docker容器内核扩展为平台。Kubernetes开发已经采取了自下而上的方法。它在指定每个容器/容器的资源要求方面有很好的优化,但是它缺乏有效的全局调度程序,无法将资源划分为逻辑分组。Kubernetes设计允许在集群中运行多个调度程序。每个调度程序都在其自己的Pod中管理资源。但是,当应用程序需要的资源比物理系统可以处理的资源更多时,Kubernetes群集可能会遭受不稳定的困扰。它在超出应用程序需求的基础架构容量方面表现最佳。Kubernetes调度程序将尝试使用传入的应用程序请求填充空闲节点,并终止低优先级和饥饿容器以提高资源利用率。Kubernetes容器可以与S3之类的外部存储系统集成,以提供数据弹性。Kubernetes框架使用etcd存储集群数据。Etcd集群节点和Hadoop Namenode都是Kubernetes或Hadoop平台中的单点故障。Etcd可以比Namenode具有更多的副本,因此,从可靠性的角度看,从理论上讲,它似乎更倾向于Kubernetes。但是,除非使用细粒度角色绑定定义RBAC,否则Kubernetes的安全性默认为开放状态。为Pod正确设置了安全上下文。如果省略,则pod的主要组将默认为root,这对于试图保护基础结构的系统管理员可能会造成问题。Etcd集群节点和Hadoop Namenode都是Kubernetes或Hadoop平台中的单点故障。Etcd可以比Namenode具有更多的副本,因此,从可靠性的角度看,从理论上讲,它似乎更倾向于Kubernetes。但是,除非使用细粒度角色绑定定义RBAC,否则Kubernetes的安全性默认为开放状态。为Pod正确设置了安全上下文。如果省略,则pod的主要组将默认为root,这对于试图保护基础结构的系统管理员可能会造成问题。Etcd集群节点和Hadoop Namenode都是Kubernetes或Hadoop平台中的单点故障。Etcd可以比Namenode具有更多的副本,因此,从可靠性的角度看,从理论上讲,它似乎更倾向于Kubernetes。但是,除非使用细粒度角色绑定定义RBAC,否则Kubernetes的安全性默认为开放状态。为Pod正确设置了安全上下文。如果省略,则pod的主要组将默认为root,这对于试图保护基础结构的系统管理员可能会造成问题。为Pod正确设置了安全上下文。如果省略,则pod的主要组将默认为root,这对于试图保护基础结构的系统管理员可能会造成问题。为Pod正确设置了安全上下文。如果省略,则pod的主要组将默认为root,这对于试图保护基础结构的系统管理员可能会造成问题。
Apache Hadoop YARN开发为运行隔离的Java流程来处理大数据工作负载,然后进行了改进以支持Docker容器。YARN提供全局级别的资源管理(如容量队列),用于将物理资源划分为逻辑单元。可以为每个业务部门分配集群资源的百分比。容量资源共享系统旨在支持企业优先级的保证资源可用性,而不是压缩每个可用的物理资源。YARN在安全性上得分更高。Kerberos中有更多安全性功能,特权/非特权容器的访问控制,受信任的Docker映像以及放置策略约束。大多数与Docker相关的安全性默认情况下都关闭,并且系统管理员需要手动打开标志以向容器授予更多权限。大型企业往往比kubernetes运行Hadoop更多,因为保护系统成本更低。在YARN之上构建了更多的分布式SQL引擎,包括Hive,Impala,SparkSQL和IBM BigSQL。数据库选项使YARN成为吸引人的选项,因为能够在容器中运行在线事务处理,以及使用批处理工作负载进行在线分析处理。Hadoop Developer工具链可能不堪重负。Mapreduce,Hive,Pig,Spark等都有各自的发展风格。用户体验不一致,需要花费一些时间来学习它们。相比之下,Kubernetes的阻塞感较小,因为它仅部署Docker容器。通过引入YARN服务来运行Docker容器工作负载,YARN的感觉比Kubernetes少了。在YARN之上构建了更多的分布式SQL引擎,包括Hive,Impala,SparkSQL和IBM BigSQL。数据库选项使YARN成为吸引人的选项,因为能够在容器中运行在线事务处理,以及使用批处理工作负载进行在线分析处理。Hadoop Developer工具链可能不堪重负。Mapreduce,Hive,Pig,Spark等都有各自的发展风格。用户体验不一致,需要花费一些时间来学习它们。相比之下,Kubernetes的阻塞感较小,因为它仅部署Docker容器。通过引入YARN服务来运行Docker容器工作负载,YARN的感觉比Kubernetes少了。在YARN之上构建了更多的分布式SQL引擎,包括Hive,Impala,SparkSQL和IBM BigSQL。数据库选项使YARN成为吸引人的选项,因为能够在容器中运行在线事务处理,以及使用批处理工作负载进行在线分析处理。Hadoop Developer工具链可能不堪重负。Mapreduce,Hive,Pig,Spark等都有各自的发展风格。用户体验不一致,需要花费一些时间来学习它们。相比之下,Kubernetes的阻塞感较小,因为它仅部署Docker容器。通过引入YARN服务来运行Docker容器工作负载,YARN的感觉比Kubernetes少了。数据库选项使YARN成为吸引人的选项,因为能够在容器中运行在线事务处理,以及使用批处理工作负载进行在线分析处理。Hadoop Developer工具链可能不堪重负。Mapreduce,Hive,Pig,Spark等都有各自的发展风格。用户体验不一致,需要花费一些时间来学习它们。相比之下,Kubernetes的阻塞感较小,因为它仅部署Docker容器。通过引入YARN服务来运行Docker容器工作负载,YARN的感觉比Kubernetes少了。数据库选项使YARN成为吸引人的选项,因为能够在容器中运行在线事务处理,以及使用批处理工作负载进行在线分析处理。Hadoop Developer工具链可能不堪重负。Mapreduce,Hive,Pig,Spark等都有各自的发展风格。用户体验不一致,需要花费一些时间来学习它们。相比之下,Kubernetes的阻塞感较小,因为它仅部署Docker容器。通过引入YARN服务来运行Docker容器工作负载,YARN的感觉比Kubernetes少了。相比之下,Kubernetes的阻塞感较小,因为它仅部署Docker容器。通过引入YARN服务来运行Docker容器工作负载,YARN的感觉比Kubernetes少了。相比之下,Kubernetes的阻塞感较小,因为它仅部署Docker容器。通过引入YARN服务来运行Docker容器工作负载,YARN的感觉比Kubernetes少了。
如果您计划将IT运营外包给公共云,请选择Kubernetes。如果您打算构建私有/混合/多云,请选择Apache YARN。
2> mdaniel..:
尽管此问题和答案与您的要求不完全相同,但确实有很多相同之处。
最后我看到,Yarn只是一种资源共享机制,而Kubernetes是一个完整的平台,包含ConfigMaps,声明性环境管理,秘密管理,Volume Mounts,一种设计精良的API,用于与所有这些东西进行交互,基于角色的访问控制, Kubernetes被广泛使用,这意味着人们可以很容易地找到要招聘的候选人和要购买的工具。
一个博客帖子,我发现引用了硕士论文,描述了世界的不同调度的视图之间的迷人的权衡。这个词很多,因此,如果您正在寻找tl; dr的答案,则可能不是该链接,但是,如果您正在寻找有关该主题的实际研究,则听起来不错。
我觉得这个答案是从Kubernetes的角度出发的。docker的Yarn也可以做卷挂载,服务配置,环境管理和其他配置。加有合理的API https://hadoop.apache.org/docs/r3.1.0/hadoop-yarn/hadoop-yarn-site/yarn-service/YarnServiceAPI.html