mesos 学习笔记1 -- mesos安装和配置
参考资料:
官方文档: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
安装依赖
- 安装wget/tar
- 获取maven的repo:
- wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo
- 安装epel repo(安装SVN必须):
- yum install -y epel-release
添加SVN repo:
在/etc/yum.repos.d/wandisco-svn.repo文件里添加:
[WANdiscoSVN]
name=WANdisco SVN Repo 1.9
enabled=1
baseurl=http://opensource.wandisco.com/centos/7/svn-1.9/RPMS//
gpgcheck=1
gpgkey=http://opensource.wandisco.com/RPM-GPG-KEY-WANdisco
更新systemd:
- yum update systemd
安装development tools
- yum groupinstall -y "Development Tools"
安装mesos依赖
- sudo yum install -y apache-maven python-devel java-1.8.0-openjdk-devel zlib-devel libcurl-devel openssl-devel cyrus-sasl-devel cyrus-sasl-md5 apr-devel subversion-devel apr-util-devel
编译
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
执行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
查看http://127.0.0.1:5050,可以看到framework信息和framework执行的task信息

mesos 学习笔记1 -- mesos安装和配置的更多相关文章
- Linux学习笔记之ubuntu安装与配置
1.打开虚拟机,点击新建虚拟机 2.安装向导 选择自定义安装 点击包含一个空白的硬盘 选择linux操作系统,版本是ubuntu 设置虚拟机的名称,可以自己写,还有保存的位置也可自选 根据自己电脑性能 ...
- 【学习笔记】Oracle-1.安装及配置
Win7旗舰版安装Oracle_11gR1_database: http://my.oschina.net/laiwanshan/blog/89951 Oracle用户登陆 sqlplus sys/ ...
- tomcat学习笔记一:安装和配置
安装 配置环境: win7 + centos7虚拟机 安装步骤: 到http://tomcat.apache.org/下载最新的tomcat安装包(8.0.24) 移到对应的目录并解压 安装问题: 安 ...
- tensorflow学习笔记一------下载安装,配置环境(基于ubuntu16.04 pycharm)
一,安装TensorFlow 安装所有必备工具 sudo apt-get install python-pip python-dev python-virtualenv 安装TensorFlow su ...
- MongoDB 学习笔记之 入门安装和配置
下载MongoDB: 下载解压即可使用. 为了启动方便和统一管理, 在Mongo根目录下建立/data, /logs, /conf文件夹. 在conf文件夹下建立mongodb.conf 文件,基本配 ...
- Node.js学习笔记2(安装和配置Node.js)
1.安装 windows下安装,在http://nodejs.org下载安装包进行安装即可. linux下安装,使用yum或者下载源码进行编译. ...
- blfs(systemd版本)学习笔记-wget的安装与配置
我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! blfs wget项目地址:http://www.linuxfromscratch.org/blfs/view/stable-s ...
- blfs(systemv版本)学习笔记-wget的安装与配置
我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! blfs wget项目地址:http://www.linuxfromscratch.org/blfs/view/8.3/basi ...
- PHP学习笔记----IIS7下安装配置php环境
原文:PHP学习笔记----IIS7下安装配置php环境 Php如何安装 Php版本的选择 Php在windows下的(php5.4.7)有两种版本: VC9 x86 Non Thread Safe ...
随机推荐
- react8 组件之间的通信
<body><!-- React 真实 DOM 将会插入到这里 --><div id="example"></div> <!- ...
- 彻底理解跨域解决方案JSONP
什么是同源策略? 同源策略,它是由Netscape提出的一个著名的安全策略.现在所有支持JavaScript 的浏览器都会使用这个策略. 所谓同源是指,域名,协议,端口相同.当一个浏览器的两个tab页 ...
- Oracle 11g系列:SQL Plus与PL/SQL
SQL Plus是Oracle提供的一种用户接口,是数据库与用户之间进行交互的工具. PL/SQL是Oracle的过程化编程语言. 1.登录SQL Plus 利用Windows的[开始]|[运行]命令 ...
- SQL Pass北京举办1周年活动(本次活动特别邀请到了来自微软的SQL Server大师何雷谈数据库职业规划)
地点:北京微软(中国)有限公司[望京利星行],三层308室 时间:2013年 12 月28日 13:30-16:30 SQL PASS 北京QQ群号:2435349 新浪微群地址:http://q.w ...
- CSS文本方向
前面的话 一般地,正常网页文本方向都是从上到下,从左到右.实际上,有多种设置文本方向的属性,前面已经详细介绍过text-align,HTML全局属性中有一个"dir"属性就是专门用 ...
- Html标签之frameset&图片切换
今天为大家分享一下刚刚总结好的html经验,以备不时之需. 首先介绍一下frameset标签,此标签用于同一页面内切换网页,在大多数网页中都可以看到,因为项目的需要,故而研究一二. frameset标 ...
- 提高性能:用RequireJS优化Wijmo Web页面
上周Wijmo 2014 V2版本刚刚发布(下载地址), 有网友下载后发现仅仅使用了40个Widgets的一小部分,还需要加载全部的jquery.wijmo-pro.all.3.20142.45.m ...
- Unity 游戏存档 PlayerPrefs类的用法
unity3d提供了一个用于本地持久化保存与读取的类--PlayerPrefs.工作原理非常简单,以键值对的形式将数据保存在文件中,然后程序可以根据这个名称取出上次保存的数值. PlayerPr ...
- 献给所有从事IT行业拥有梦想的英语渣们
本文适合读者:从小到大英语都不好,如今选择IT行业需要重拾英语追寻梦想的人,英语大神们请绕行.. 目录 一.背景介绍 二.明确学习目标 2.1 英文文法 2.2 词汇量 三.题外话 3.1 关于本文 ...
- Gephi可视化(二)——Gephi Toolkit叫板Prefuse
继在园子里写的<Gephi可视化(一)——使用Gephi Toolkit创建Gephi应用>介绍了如何使用Gephi Toolkit工具集进行可视化编程后,本篇对Gephi Toolkit ...