50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

容器集群管理工具:四大金刚之对比

  • 2020-03-11
  • 本文字数:3063 字

    阅读完需:约 10 分钟

容器集群管理工具:四大金刚之对比

基于云的基础设施,容器,微服务和新编程平台在世界范围占据了一大块媒体领域,横扫 IT 界。Docker、容器的使用在这几个月内呈爆炸式增长,已经提交了 20 亿的镜像“pulls”;镜像数在 2015 年 11 月就已达 12 亿。从大型国际公司到小型创业公司,容器技术的使用都有明显增长。

集群管理工具总览

很明显,容器在创建和交付应用程序的过程中有着新发展。然而,大范围控制容器部署也会有一些并发症。容器肯定是跟资源相匹配的。故障肯定是越快解决越好。这些挑战会导致集群管理和编排的并发需求。


集群管理工具是一个通过图形界面或者通过命令行来帮助你管理一组集群的软件程序。有了这个工具,你就可以监控集群里的节点,配置 services,管理整个集群服务器。集群管理可以从像发送工作到集群的低投入活动,到像负载均衡和可得性的高介入工作。在这篇文章中,我们来看一下目前比较受欢迎的集群管理工具,并讨论一下他们的优点和面临的挑战。

1、Swarm-Docker

Docker Swarm 让你聚集一些 Docker 引擎到一个虚拟引擎。在一个分布式应用程序环境中,计算元素必须也是可以被分布的。Swarm 允许你在本地聚集 Docker 引擎。有了单个引擎,应用程序可以被扩展得更快,更有效率。Swarm 能够扩容到 50000 个容器,1000 个节点,同时当容器添加到集群的时候一点都不影响性能。


再加上,Swarm 的角色相当于 Docker API。任意可以操作 Docker Daemon 的工具都可以运用 Docker Swarm 的力量在很多主机上进行扩容。这些包括了像 Flynn,Compose,Jenkins 和 Drone 之类不同的主机。


Swarm 也可以在后端运行 Mesos 或者 Kubernetes 的时候,被用来作为前端 Docker 客户端。Swarm 在它的核心内部是一个简单的系统:每个主机运行一个 Swarm 代理与管理员。管理员处理容器的操作和调度。你可以在高可用状态下运行,它使用的是 Consul,ZooKeeper 或者 etcd 来发送容错 events 到后端系统。


Docker Swarm 的一个优点就是,它是一个本地解决办法——你可以用 Docker 命令来实施 Docker 网络,插件和数据卷。Swarm 管理员为 leader 选举创建一些 master 和特定的规定。这些条例实施在初级 master 故障的 event 里。Swarm 调度器以各种各样的过滤包为特色,也包括紧密性和节点标签。过滤包能够附加容器到底层节点,资源得到更好的利用,性能得到提升。

2、Fleet——Core OS

Core OS 被创建来允许弹性扩容,允许管理计算能力。与其通过 apt 或者 yum 安装包,Core OS 觉得倒不如利用 Linux 容器来处理更高抽象水平的 service,提供好处给虚拟机,但是重点是在应用程序上而不是在完成虚拟化主机上。



Fleet 能够在它分享个体初始系统的场景中将 Core OS 集群虚拟化。有了 Fleet,每个机器都有一个代理和一个引擎。虽然单个引擎在集群中的任意节点都是活跃的,但是整个引擎社区一直都是活跃的。Fleet 也可以处理套借口激活——容器可以被用来处理在特殊接口的连接。这就允许系统在需要的时候创建进程而不是等待需求的时候再去创建。


你们的开发运维人员将他们的时间重点花在管理作为 service 创建基础的容器上,同时不需要担心可能出现在单个机器上的潜在问题。Fleet 确保在集群中的容器在操作状态。在发生机器故障的时候,容器会自动转移到健康的机器上。

3、Kubernetes——Google

Kubernetes 由谷歌开发,允许你在许多不同的主机上管理容器化应用程序。它提供工具让你部署,弹性扩容和维护应用程序。Kubernetes 的开发者致力于保持它一直处于可访问、轻量级状态,并且易于使用。它可以在很多云环境中使用,包括私有云,公有云,多云端和混合云。Kubernetes 可以在 fly 上进行自我修复,它以自动复制,自动再启动,自动定位为特色。它可以被不断扩展,它的特点是 hookable,可插拔和模块化。它已经被完全开源,谷歌在 2014 年首次宣布开发它,第一版在 2015 夏天的时候发布。除了最近几年的收获,Kubernetes 本身也是基于谷歌内部十多年使用容器技术的经验。



Kubernetes 使用容器组 pod,并且在同时被调度和部署。调度的基础配置是 pods,因为相比于系统,单个容器会被当成是基础单元。大部分的 pods 最多有 5 个容器,这就组成了一个 service。Pods 会按照需求在现实生活中创建和删除,或许修改。


Kubernetes 是一系列宽松的、可以在很多不同的工作负载下操作的松散耦合原语。它很大程度上依赖于 Kubernetes API 的可扩展性。API 在内部使用,同样的,在外部被容器和拓展版本运行在系统中。目前,已经应用 Kubernetes 的项目和企业包括:Wikimedia Foundation 从本土设置转移到 Kubernetes;eBay 在 OpenStack 上运行 Kuberenetes 和容器;Viacom 用 Kubernetes 创建了一个先进的容器化基础设施。

4、Mesos——Apache

Apache Mesos 是一个集群管理工具,它着重于资源隔离,以及分布式网络或者在框架上分享应用程序,它的构想和开发源于加州大学伯克利分校。


一个开源系统,它会给管理员分享资源、提升集群利用率的功能。目前使用 Apache Mesos 的公司包括:Apple,Airbnb 和 Twitter。


Apache Mesos 对于像 CPU,Disk 和 RAM 之类的计算元件来说是一个抽象层。它运行在每台机器上,其中一台机器被设计来作为 master 来运行其它机器。任意 Linux 程序都可以运行在 Mesos 上面。Mesos 的一个优点就是应对故障,它会提供额外的安全层。



Mesos 被设计来处理成千上万的主机,支持各种各样主机上的工作负载。在一个 Mesos 配置上,你可能会发现 Docker 和 Hadoop 并排运行。几年前,当系统支持 Twitter 的快速扩张的时候 Mesos 做到了可视化。


Mesos 使用代理节点系统来运行任务。代理发送一张可得资源清单到 master。在任意时刻,都会有成千上万的代理节点在进行操作。同样,master 也会分布任务到代理上。

比较不同容器编排工具

Kubernetes 是一个全径且全面的容器管理平台,有动态调度、升级、自动伸缩和持续健康监测的功能。相较而言,Docker Swarm 只是从单个容器引擎提供一个集群系统的视角。


Mesos 和 Kubernetes 比较相似,因为他们都是被开发来解决在集群化环境中运行应用程序的问题。但 Mesos 在运行集群方面不如 Kubernetes,它重点放在它强大的调度功能和它被插在各种各样的调度器的性能上。Mesos 并不是为容器而生的,在容器流行之前就已经被开发出来,它的一些地方被修改来支持容器。


Fleet 利用 etcd,一个和 Core OS 一起做出来被系统化的键值对,对于 Linux 来说是一个系统和 service 管理员。系统化是为单个容器设计,但是 fleet 延展它的性能到一个集群的机器。Fleet 通过允许你运行 service 的一些实例,来帮助项目应对故障。它可以部署单个的容器到任意本地,运行容器在一个或者多个机器上,并且部署一个容器的多个实例。


从另一个方面来说,Fleet 并不适用于处理一些像服务注册,在调度基础上利用,服务发现或者容器间的交流这些在分布式微服务环境中发生的情况。Fleet 在这四个工具中属于比较低调的引擎,所以它最好处于一个像 Kubernetes 或者其它解决方案可以在上面操作的层次。

编排工具满足日益增长的需求

现今的企业需要能够满足他们需求不会出现故障的冗余系统。另外,大数据和数据挖掘需要很多资源来过滤海量信息。除非这些公司适应和修改他们的登录信息系统的方式,不然他们面对更快、更灵活的竞争对手会很快失去阵地。在现在这个高速网络规模的时代,修复单个机器不是一个有效的解决方法。分布式系统允许你快速调度出故障的机器到垃圾箱,并且重新分配资源到健康集群的节点上。这就是管理 Docker 和其它容器集群重要性。


本文转载自才云 Caicloud 公众号。


原文链接:https://mp.weixin.qq.com/s/S0kPNk01ocERJsKaBezn3g


2020-03-11 19:513699

评论

发布
暂无评论
发现更多内容

得物×火山引擎:Data Agent驱动财务管理智能升级

字节跳动数据平台

如何利用现有资源启动有效的境外社媒监控

沃观Wovision

沃观Wovision 舆情监测系统 海外舆情监测 社交媒体监控 海外社交媒体监控

区块链 Web3 开发的技术架构

北京木奇移动技术有限公司

区块链开发 软件外包公司 web3开发

音乐 NFT 的上链开发流程

北京木奇移动技术有限公司

区块链开发 软件外包公司 音乐NFT

MyEMS:赋能高效能源管理的核心工具

开源能源管理系统

开源 能源管理系统

开源能源管理系统 MyEMS:赋能企业降本增效,加速能源数字化转型

开源能源管理系统

开源 能源管理系统

怎样利用AI工具提升境外社交媒体监控软件的效率与深度?

沃观Wovision

沃观Wovision 舆情监测系统 海外舆情监测 社交媒体监控 海外社交媒体监控

破解境外市场洞察难题:社交媒体监控网站的实战应用场景

沃观Wovision

海外舆情监控 沃观Wovision 舆情监测系统 社交媒体监控 海外社交媒体监控

多模态数据湖技术深化,Data Agent新能力发布!“认知”将决定企业上限

字节跳动数据平台

文心快码3.5S实测插件开发,Architect模式令人惊艳

Comate编码助手

AI 编程 文心快码 文心快码3.5S AI编程助手

从埋点到用户行为分析:ClkLog 如何帮助企业读懂用户

ClkLog

开源 埋点 用户行为分析 用户画像

智源开源EditScore:为图像编辑解锁在线强化学习的无限可能

智源研究院

AI时代,境外社交媒体监控网站的三大变革与未来展望

沃观Wovision

沃观Wovision 舆情监测系统 海外舆情监测 社交媒体监控 海外社交媒体监控

官网焕新!安势信息以全新形象,解码软件供应链安全流畅体验!

安势信息

官网升级 安势信息 安势信息官网

报名开启|全球数据科学与 AI 线上直播会议邀您参会

Altair RapidMiner

人工智能 AI 数据科学 仿真 CAE

天猫双11AI助力商家经营,生意管家AI助理日均产出500万份开卖分析

新消费日报

从执行到管理:构建可量化的境外社媒监控软件体系指南

沃观Wovision

海外舆情监控 沃观Wovision 舆情监测系统 社交媒体监控 海外社交媒体监控

数字商品服务助力开发者降本增效,加速数字商品商业变现

HarmonyOS SDK

HarmonyOS NEXT HarmonyOS SDK应用服务

加速鸿蒙生态布局,APP 混合开发或成企业抢占增量红利的关键切口

xuyinyin

企业如何利用境外社交媒体监控服务整合营销体系

沃观Wovision

跨境电商 沃观Wovision 舆情监测系统 社交媒体监控 海外社交媒体监控

活动邀请丨2025 全球机器学习技术大会

阿里巴巴云原生

阿里云 RocketMQ 云原生

移动端性能监控探索:iOS RUM SDK 技术架构与实践

阿里巴巴云原生

阿里云 云原生 RUMSDK

Qoder 上线提示词增强功能,将开发者从“提示词”的负担中解放出来

阿里巴巴云原生

阿里云 云原生 Qoder

大数据-132 Flink SQL 实战入门 | 3 分钟跑通 Table API + SQL 含 toChangelogStream 新写法

武子康

Java 大数据 flink spark 分布式

开源隐私计算框架SecretFlow | 基于隐语的金融全链路场景介绍和应用实践

隐语SecretFlow

开源 数据 隐私计算 金融风控

别再手写过滤器!SpringCloud Gateway 内置30 个,少写 80% 重复代码

程序员小富

spring SpringCloud 网关

车间主任必须知道的十个公式

优秀

公式函数 车间管理

从原理到落地:重复文档比对算法的开发核心与实践

上海拔俗

如何通过TR技术评审管控IPD开发风险?

IPD产品研发管理

产品设计 IPD TR评审

区块链 U 卡 APP 的上线

北京木奇移动技术有限公司

区块链开发 软件外包公司 web3开发

陷入数据沼泽?利用境外社交媒体监控工具构建高效社媒监控工作流

沃观Wovision

沃观Wovision 舆情监测系统 海外舆情监测 社交媒体监控 海外社交媒体监控

容器集群管理工具:四大金刚之对比_容器_才云科技_InfoQ精选文章