博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
译 | 像使用一台主机一样管理集群
阅读量:5980 次
发布时间:2019-06-20

本文共 1811 字,大约阅读时间需要 6 分钟。

hot3.png

【编者的话】不论是 YARN、Mesos 还是 Omega,都是某种意义上为集群设计的操作系统,让用户像使用一台单机一样来使用整个集群。向下集中管理所有物理资源,向上承载各种集群化的应用; 同时, docker 的出现也为云操作系统提供了更有力的支撑。

输入图片说明

1984年,SUN 的 John Gage 说出了那句家喻户晓的名言 “网络就是计算机”

三十年后,Gage 的梦想“几乎”成为的现实。特别是随着 web 2.0 和云计算时代的到来,人们可以使用任何设备从任何地方通过互联网访问任何云端的资源。

输入图片说明

不过即使在“云端”,实际上还是一堆物理服务器。每一台服务器的 CPU 和内存资源都是有限的,但是组合成集群就像云一样无穷无尽。套用 Gage 的名言,可以说**“集群就是计算机”**。

当单机的 ****逐渐碰到了天花板,通过 Hadoop 这样的集群化技术来突破单机性能瓶颈就越来越流行。当然在 Hadoop 出现之前,集群方案早就应用于高性能的生产系统,例如 Weblogic 或者集群化的 WEB 服务器(复杂均衡按照 round-robin 算法将流量发送到集群中的 Web 服务器上)。这些集群方案都针对特定场景设计,无法像通用的计算机一样用来运行各种不同的软件。

Hadoop 是第一个具有通用的集群化计算平台特征的技术,而且目前已经发展地相当成熟。随着新的集群化计算技术层出不穷,例如 Spark、Storm 和 Cassandra,运维人员希望能够隔离它们以便更好的管理,同时,从节约成本的角度讲, 大家又希望公司内部各个团队能够共用这些昂贵的计算资源。

目前解决这个问题的两大法宝是 Hadoop YARN 和 Apache Mesos。Mesos 的设计受到了 Google 的 Omega 平台启发,而后者则来自 Google 内部久经实验的Borg任务管理平台。同样的事情当初也发声在 Hadoop 之上,它就是受到了 Google 的 GFS 和 Big-Table 启发。不论是 YARN、Mesos 还是 Omega,都是某种意义上为集群设计的操作系统,让用户像使用一台单机一样来使用整个集群。向下集中管理所有物理资源,向上承载各种集群化的应用。

因为 YARN 本身与 Hadoop/Map Reduce v2 绑定,对于使用早期 Hadoop 版本的开发者,升级到 YARN 也许是一个比较容易的决定。理论上可以将 YARN 跑在 Mesos 上,不过有些人担心随之而来的两层资源分配问题。

可以支持大量的框架(插件),逐步在构建一个快速增长的生态环境。例如 Twitter的 就是用来在 Mesos 管理的集群上进行任务调度,已经成为了 Apache 的孵化器项目。此外 则用来在 Mesos 上快速运行 Cassandra 和 Spark。

相当于 Mesos 之上的 crontable, 则相当于 ,让大家用熟悉的方式来调度任务。

最激动人心的还是 的整合,几乎让 Mesos 可以运行任何语言编写的软件。

输入图片说明

的崛起本身和集群技术倒没有直接关系,它首先被用来代替传统的 VM(虚拟机)。容器分享了底层操作系统,远比传统 VM 更加轻量。类似技术在2000年就出现了,那就是“jail”命令。Wiki 有关词条描述了 35 年来 如何发展到 jails,最后的 Docker 和容器成为了集大成者。

Docker 化的应用像一个 tar 压缩包,在一台普通的物理机上,你可以轻松地运行数十个独立的 Docker。对于一个由 Mesos 管理的集群,而且恰好你的应用某种程度上使用了分布式的架构,那么瞬间你的集群变成了一台强大的大型机。其实 tar 本身意思是 “tape archive”,就是过去大型机磁带系统的文件格式。

使用 Docker 容器来完全取代传统的 jar 或者 ear 文件,一夜间用 Mesos 来完全取代 weblogic,还是有点操之过急——目前传统软件的架构依然是 web、计算逻辑和存储分开部署。不过对于互联网公司的后台,用 Mesos 来承载 web 服务器集群应付高并发业务,完全不是什么新鲜事儿了。

点击**** 源文作者:michaelmalak

转载于:https://my.oschina.net/shurenyun/blog/597279

你可能感兴趣的文章
抓老鼠啊~亏了还是赚了?
查看>>
python之装饰器
查看>>
自定义模块
查看>>
FMXUI ANDROID下连续按多次返回出现异常
查看>>
android开发学习--网络请求框架RxJava+Retrofit
查看>>
万能ViewHolder和基类适配器
查看>>
IOC框架之 Unity 入门
查看>>
在Linux下的Java环境设置
查看>>
python网络编程学习笔记(3):socket网络服务器
查看>>
JAVA引用
查看>>
开发者应该关注的五项 Web 新兴技术
查看>>
网站运营赚钱的小心得
查看>>
HDU 3338 Kakuro Extension
查看>>
Loader类的loadBytes报IOErrorEvent
查看>>
XP 之后, Delphi 动注册表不方便了...逼出来一个办法:
查看>>
SQL Server 2005无法远程连接的解决方法
查看>>
搜索引擎网站收录地址大全
查看>>
手工安装桌面环境;备忘下。
查看>>
SOS 调试扩展 (SOS.dll) 《第五篇》
查看>>
Linux/Unix System Level Attack、Privilege Escalation(undone)
查看>>