参考资料:

官方文档: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/documentation/latest/getting-started/ 
下载最新版本:mesos-1.0.0,版本要求:

- 64位linux操作系统
- 内核版本大于3.10 版本
- gcc版本大于4.8.1

安装依赖

编译

cd mesos
mkdir build
cd build
../configure
make(可以使用make -j N加快编译速度,不然编译时间非常长)
make check
make install

配置

默认make install会安装到/user/local/sbin底下,配置文件在/usr/local/etc底下,在这两个目录下,会有一些文件跟master/agent相关

mesos-master

  • mesos-start-masters.sh:用于SSH登录到各个master并且进行start操作,如果单机执行,只需注释跟SSH相关操作(直接通过daemon mesos-master启动)
  • mesos-stop-master.sh:用于SSH登录到各个master,并且进行stop操作,如果单机执行,只需注释SSH相关操作(直接执行killall mesos-master)
  • mesos-daemon.sh:用于启动mesos daemon,默认会执行一些动作(设置ulimit -n以及启动对应的环境变量设置/usr/local/etc/PROCNAME-env.sh)
  • mesos-agent实际的二进制文件,可以通过--help来查看对应参数,参数参考:http://mesos.apache.org/documentation/latest/configuration/
  • /usr/local/etc/mesos/mesos-master-env.sh:设置mesos环境变量,变量命名规则为MESOS_参数,其中{参数}为mesos-master --help中的参数,设置如下:

    export MESOS_log_dir=/var/log/mesos/master   # 设置日志目录
    export MESOS_work_dir=/var/run/mesos/master # 设置work目录,会存放一些运行信息
    export MESOS_ip=127.0.0.1 # 设置IP
    # export MESOS_port=5050 # 设置PORT,默认是5050
    export MESOS_CLUSTER=mesos_test_cluster1 # 设置集群名称
    export MESOS_hostname=127.0.0.1 # 设置master hostname
    export MESOS_logging_level=INFO # 设置日志级别
    export MESOS_offer_timeout=60secs # 设置offer的超时时间
    # export MESOS_agent_ping_timeout=15 # 设置ping 超时时间,默认15s
    # export MESOS_allocation_interval=1 # 设置资源 allocation间隔,默认1s

注意:offer_timeout非常关键,默认是不超时,如果一个offer发给scheduler后scheduler不做任何处理(acceptOffers或者declineOffer),那么这个offer一直会被这个scheduler给占用了,直到scheduler自己结束进程或者退出注册。所以offer_timeout一般要设置,用于防止由于scheduler自身的问题(偶发性hang住,或者程序问题没有处理offer)导致资源无法利用

mesos-agent

  • mesos-start-agent.sh:用于SSH登录到各个agent并且进行start操作,如果单机执行,只需注释跟SSH相关操作(直接通过daemon mesos-agent启动)
  • mesos-stop-agent.sh:用于SSH登录到各个agent,并且进行stop操作,如果单机执行,只需注释SSH相关操作(直接执行killall mesos-agent)
  • mesos-daemon.sh:用于启动mesos daemon,默认会执行一些动作(设置ulimit -n以及启动对应的环境变量设置/usr/local/etc/PROCNAME-env.sh)
  • mesos-agent实际的二进制文件,可以通过--help来查看对应参数,参数参考:http://mesos.apache.org/documentation/latest/configuration/
  • /usr/local/etc/mesos/mesos-agent-env.sh:设置mesos-agent环境变量,变量命名规则为MESOS_参数,其中{参数}为mesos-agent --help中的参数,设置如下:

    # The mesos master URL to contact. Should be host:port for
    # non-ZooKeeper based masters, otherwise a zk:// or file:// URL.
    export MESOS_master=172.24.133.164:5050 # Other options you're likely to want to set:
    export MESOS_ip=172.24.133.164
    export MESOS_port=5051
    export MESOS_hostname=mesos_cl_agent164
    export MESOS_log_dir=/var/log/mesos/agent
    export MESOS_work_dir=/var/run/mesos/agent
    export MESOS_logging_level=INFO
    export MESOS_isolation=cgroups

启动

mesos-master

  • 执行sh mesos-start-masters.sh
  • ps aux | grep mesos-master 能看到master进程
  • netstat -nltp | grep mesos,能看到master已经绑定5050端口
  • 查看http://127.0.0.1:5050,可以看到当前mesos集群的一些状态
 

mesos-agent

  • 执行sh mesos-start-agents.sh
  • ps aux | grep mesos-agent 能看到agent进程
  • netstat -nltp | grep mesos,能看到agent已经绑定5051端口
  • 查看http://127.0.0.1:5050,可以看到当前mesos集群的一些状态,同时看到对应的agent
 

测试Framework

  1. 执行mesos自带的测试framework(测试framework会自动任务执行结束后自动退出)

    # Run C++ framework (Exits after successfully running some tasks.).
    $ ./src/test-framework --master=127.0.0.1:5050 # Run Java framework (Exits after successfully running some tasks.).
    $ ./src/examples/java/test-framework 127.0.0.1:5050 # Run Python framework (Exits after successfully running some tasks.).
    $ ./src/examples/python/test-framework 127.0.0.1:5050
  2. 查看http://127.0.0.1:5050,可以看到framework信息和framework执行的task信息

mesos 学习笔记1 -- mesos安装和配置的更多相关文章

  1. Linux学习笔记之ubuntu安装与配置

    1.打开虚拟机,点击新建虚拟机 2.安装向导 选择自定义安装 点击包含一个空白的硬盘 选择linux操作系统,版本是ubuntu 设置虚拟机的名称,可以自己写,还有保存的位置也可自选 根据自己电脑性能 ...

  2. 【学习笔记】Oracle-1.安装及配置

    Win7旗舰版安装Oracle_11gR1_database:  http://my.oschina.net/laiwanshan/blog/89951 Oracle用户登陆 sqlplus sys/ ...

  3. tomcat学习笔记一:安装和配置

    安装 配置环境: win7 + centos7虚拟机 安装步骤: 到http://tomcat.apache.org/下载最新的tomcat安装包(8.0.24) 移到对应的目录并解压 安装问题: 安 ...

  4. tensorflow学习笔记一------下载安装,配置环境(基于ubuntu16.04 pycharm)

    一,安装TensorFlow 安装所有必备工具 sudo apt-get install python-pip python-dev python-virtualenv 安装TensorFlow su ...

  5. MongoDB 学习笔记之 入门安装和配置

    下载MongoDB: 下载解压即可使用. 为了启动方便和统一管理, 在Mongo根目录下建立/data, /logs, /conf文件夹. 在conf文件夹下建立mongodb.conf 文件,基本配 ...

  6. Node.js学习笔记2(安装和配置Node.js)

            1.安装         windows下安装,在http://nodejs.org下载安装包进行安装即可.         linux下安装,使用yum或者下载源码进行编译.     ...

  7. blfs(systemd版本)学习笔记-wget的安装与配置

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! blfs wget项目地址:http://www.linuxfromscratch.org/blfs/view/stable-s ...

  8. blfs(systemv版本)学习笔记-wget的安装与配置

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! blfs wget项目地址:http://www.linuxfromscratch.org/blfs/view/8.3/basi ...

  9. PHP学习笔记----IIS7下安装配置php环境

    原文:PHP学习笔记----IIS7下安装配置php环境 Php如何安装 Php版本的选择 Php在windows下的(php5.4.7)有两种版本: VC9 x86 Non Thread Safe ...

随机推荐

  1. v-show和v-if的区别

    v-show和v-if的区别

  2. jquerymobile仿微信 - 01

    jquerymobile仿微信 - 01 jquerymobile的组件感觉不咋地哇 本地调试最好是开一个web server,不然数据访问会有问题 <div data-role="p ...

  3. 启动Genymotion时报错Failed to initialize backend EGL display

    在启动Genymotion的时候报错: video card说的是显卡,你的显卡可能不支持  OpenGL2.0,或者你装的驱动有问题. 解决办法:将驱动重新安装一下. 可直接下载一个如“驱动人生“一 ...

  4. [转载]基于TFS实践敏捷-修复Bug和执行代码评审

    本主题阐释了这些功能,以继续这一关注虚拟敏捷团队成员的一天的教程. Peter 忙于编写一些代码以完成积压工作 (backlog) 项任务.但是,他的同事发现了一个阻碍他们工作的 Bug,他想立即修复 ...

  5. S Gallery – 很有特色的响应式 jQuery 相册插件

    S Gallery 是一款响应式的 jQuery 相册插件.使用了 HTML5 全屏 API 以及 CSS3 动画 和 CSS3 转换,所以只能在支持这些功能的浏览器中使用. 这款插件它有一个特色功能 ...

  6. html/css基础篇——html代码编写过程中的几个警惕点

    本文想说的警惕点与浏览器兼容无关,主要是几个本人在项目中遇到的几个小问题的总结,问题虽小,但是却有时很困扰人,在此记录一下,如果后期有此类问题会持续添加到这里. 1.内联标签之间的空格 正常情况下书写 ...

  7. postgres中几个复杂的sql语句

    postgres中几个复杂的sql语句 需求一 需要获取一个问题列表,这个问题列表的排序方式是分为两个部分,第一部分是一个已有的数组[0,579489,579482,579453,561983,561 ...

  8. 纯Shading Language绘制HTML5时钟

    今天是2014年的最后一天,这个时刻总会让人想起时钟,再过几个小时地球人都要再老了一岁,于是搞个HTML5版的时钟就是我们今天要完成的任务,实现HTML5的时钟绘制一般会采用三种方式,第一种采用CSS ...

  9. CSS魔法堂:说说Float那个被埋没的志向

    前言  定位系统中第一难理解就是Normal flow,而第二就非Float莫属了,而Float难理解的原因有俩,1. 一开头我们就用错了:2. 它跟Normal flow靠得太近了.本文尝试理清Fl ...

  10. 《Inside UE4》-0-开篇

    <Inside UE4>-0-开篇 InsideUE4   前言 VR行业发展是越来越火热了,硬件设备上有HTC VIVE,Oculus rift,PS VR,各种魔镜:平台上有Steam ...