参考资料

官方文档:http://mesos.apache.org/documentation 
中文翻译:http://mesos.mydoc.io/ 
GitHub:https://github.com/apache/mesos/tree/master 
董的博客:http://dongxicheng.org/category/apache-mesos/

mesos下载源码

官网上下载源码

http://mesos.apache.org/downloads/

安装依赖包

  根据官网教程(http://mesos.apache.org/gettingstarted/)先安装依赖包

  

# Update the packages.
$ sudo apt-get update # Install a few utility tools.
$ sudo apt-get install -y tar wget git # Install the latest OpenJDK.
$ sudo apt-get install -y openjdk--jdk # Install autotools (Only necessary if building from git repository).
$ sudo apt-get install -y autoconf libtool # Install other Mesos dependencies.
$ sudo apt-get -y install build-essential python-dev libcurl4-nss-dev libsasl2-dev libsasl2-modules maven libapr1-dev libsvn-dev

配置并编译

# Change working directory.
$ cd mesos # Bootstrap (Only required if building from git repository).
$ ./bootstrap # Configure and build.
$ mkdir build
$ cd build
$ ../configure --prefix=/home/hl/mesos_install
#prefix参数就是安装的路径,最好自己新建一个文件 夹,不要使用默认,默认的目录为/usr/local,如果默认安装的话会出现很多权限问题
$ make

测试编译结果

编译好之后打开build/bin,使用下述命令启动mesos-master,以及附属的一个slave来检查是否编译成功

$ ./bin/mesos-master.sh --ip=127.0.0.1 --work_dir=/home/hl/mesos_install/log/master  

# Start mesos slave.
$ ./bin/mesos-slave.sh --master=127.0.0.1:

在本机上访问如下地址$ http://127.0.0.1:5050,如果用浏览器访问上述网页成功,而且面中现实激活的节点为1个则说明编译成功了

安装

安装的过程就是把mesos集群启动过程中需要的执行文件,库文件等集中放置到系统路劲下,一般系统路径是/usr/sbin、/usr/bin等。但是这个路劲是可以改变的,在之间./configuire操作的时候--prefix操作就是设置安装的目录。

虽然教程中安装只有一句命令“make install”,但是make install有时候会出现问题,比如:

Command Python setup.py egg_info failed with error code 1 in     /tmp/pip_build_ndn/protobuf

出现这个问题的原因是安装过程中会下载一些软件,这些数据被墙了,解决的方法是使用国内的源先把需要软件安装了,针对上述问题,是pip被墙了,使用清华的源: https://wiki.tuna.tsinghua.edu.cn/MirrorUsage/pypi修改源的步骤在上诉链接中给出了,我使用第一中方法,“临时使用源”。根据错误提示,被墙的包为google-apputils和protobuf,那么我使用pip命令安装这两个软件如下:

sudo pip install -i https://pypi.tuna.tsinghua.edu.cn/simple google-apputils
#没有安装pip请安装sudo apt-get install python-pip
sudo pip install -i https://pypi.tuna.tsinghua.edu.cn/simple protobuf
#上述步骤进行之后就可以不出错地安装了
make install

测试

mesos 安装好后,提供了c++ /java / python的测试例子,如果在web界面中看到有任务finshed,说明编译成功。

# Change into build directory.
$ cd build # Start mesos master (Ensure work directory exists and has proper permissions).
$ ./bin/mesos-master.sh --ip=127.0.0.1 --work_dir=/var/lib/mesos # Start mesos agent (Ensure work directory exists and has proper permissions).
$ ./bin/mesos-agent.sh --master=127.0.0.1: --work_dir=/var/lib/mesos # Visit the mesos web page.
$ http://127.0.0.1:5050 # Run C++ framework (Exits after successfully running some tasks.).
$ ./src/test-framework --master=127.0.0.1: # Run Java framework (Exits after successfully running some tasks.).
$ ./src/examples/java/test-framework 127.0.0.1: # Run Python framework (Exits after successfully running some tasks.).
$ ./src/examples/python/test-framework 127.0.0.1:

接下里基于mesos提供的Java接口,写个简单的分布式框架(运行在mesos上的程序)demo。

配置mesos集群

最新文章

  1. KO中对象数组排序时,两个属性的优先顺序不一致时的排序实现
  2. Windows台的FailOver群集简介
  3. ASP.NET 递归将分类绑定到 TreeView
  4. powerdesigner的基本使用转载
  5. Spring XML配置实现AOP
  6. [转]C# 应用程序安装部署步骤,安装前操作,先退出程序后卸载。
  7. edge.js架起node.js和.net互操作桥梁
  8. python关键字
  9. postgresql 忘记 postgres 密码
  10. 正方形网格 TRIANGLE_STRIP连接
  11. h5 + nginx + php 视频上传之突破文件大小受限的解决办法
  12. Xcode部分快捷键
  13. 【linux】---常用命令整理
  14. jq slideToggle()坑
  15. 微信小程序使用nginx方向代理实现内嵌非业务域名
  16. linux中的cd
  17. Scala--数组相关操作
  18. Python multiprocessing模块的Pool类来代表进程池对象
  19. e814. 创建一个可监听选择状态的菜单项
  20. Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.elasticsearch.threadpool.ThreadPool

热门文章

  1. vue使用过滤器 filters:{}
  2. Redis分布式锁服务
  3. ES的副本数量、插入大批量数据前,副本数应该设置为0
  4. 深入理解BFC和IFC
  5. 源码编译安装Apache/2.4.37-------踩了无数坑,重装了十几次服务器才会的,不容易啊!
  6. WebSocket知识、轮询、长轮询、长连接
  7. kafka 生产者发送消息
  8. 阶段1 语言基础+高级_1-3-Java语言高级_03-常用API第二部分_第4节 System类_3_System类的常用方法
  9. Week13 - 376. Wiggle Subsequence
  10. adbl连接不上 daemon not running. starting it now on port 5037 ADB server didn't ACK