Spark on Mesos: 搭建Mesos的一些问题
资源管理系统
Spark可以搭建在Mesos上或YARN上,两个都是资源管理系统。了解资源管理系统的话,可以先参看以下几篇文章:
浅谈Borg/YARN/Mesos/Torca/Corona一类系统
多集群下资源共享方案介绍
统一资源管理与调度平台(系统)介绍
淘宝借助自己的第二代集群——云梯系统,把Spark部署在了YARN上,里面是淘宝技术部对Spark的一些实战小结,也算是在捣鼓阶段。
关于Mesos的论文,可以在这里下载。他的官网上文档没有github的wiki上多。
Mesos搭建
在了解了资源管理系统的一些背景之后,简单介绍下我在搭建Mesos过程中遇到的几个坑。由于我是在公司开发机上抽空搭的,开发机上我没有root权限,在build的时候有下面几个障碍:
1. Mesos是C++写的,需要经历./configure, make和make install阶段,我不太熟
2. 没有root权限,发布路径默认是/usr/local下,需要在./configure的时候加上 --prefix=/path 的参数
3. Mesos依赖gcc 4.1+的版本以及Python 2.7,开发机gcc和python版本都比较低,需要自己指定高版本的gcc和python,主要是gcc这个坑
4. 开发机不能上外网,python需要下一个egg,于是我是自己下了加进去,这就不说了,估计一般人不会有我这样的问题的
正常的搭建流程就是下载了Mesos的包之后,解压,然后./configure, make, make install就完了,参考这篇攻略。
没有root权限的时候,不仅是发布路径要指定,还有一个问题是webui默认也会从/usr/local去找,所以我在configure的时候加上了参数:
export MESOS_HOME={PATH}/mesos/export MESOS_NATIVE_LIBRARY={PATH}/mesos/lib/libmesos.so
(全文完)