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

安装依赖

编译

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信息

时间: 2024-10-26 06:11:20

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

Maven学习笔记一:安装和配置

一 Maven简介 Maven是基于项目对象模型(Project Object Model,POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具. Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具.由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目.由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的 比例在持续增长.

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

安装 配置环境: win7 + centos7虚拟机 安装步骤: 到http://tomcat.apache.org/下载最新的tomcat安装包(8.0.24) 移到对应的目录并解压 安装问题: 安装后需要能从win7中访问虚拟机的tomcat端口(8080),需要先进行配置 参考: http://blog.chinaunix.net/uid-22259244-id-394661.html 一分钟尝鲜: 启动tomcat:执行bin/catalina.sh start 查看运行日志:logs/

FTP服务学习笔记之vsftpd安装和配置(2)

在redhat5部署FTP服务 实验环境介绍: 操作系统:Redhat5.8_X64bit 实验平台:VMware Workstation 一.基于匿名用户的FTP服务部署 1.匿名FTP 访问匿名的FTP服务器时不需要密码,只需要用户名"ftp"和"anonymous". 2.安装vsftpd软件 #yum install vsftpd #rpm -ql vsftpd 3.启动vsftpd服务 #service vsftpd start #chkconfig vs

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

下载MongoDB: 下载解压即可使用. 为了启动方便和统一管理, 在Mongo根目录下建立/data, /logs, /conf文件夹. 在conf文件夹下建立mongodb.conf 文件,基本配置如下: #数据库数据存放目录 dbpath=/usr/local/mongodb/data #数据库日志存放目录 logpath=/usr/local/mongodb/logs/mongodb.log #以追加的方式记录日志 logappend = true #端口号 默认为27017 port=

Git 学习笔记<简介与安装> (一)

Git,开源中国以及GitHub所使用的系统, Is A 一个分布式版本控制系统 Be Used to 为团队合作写代码提供方便的管理系统.几乎满足你所有关于合作写代码的幻想. Has 本地端:工作区.版本库 (版本库还含有一个暂存区) 远程仓库:版本库(用来储存版本库的服务器) How To Install Linux: 首先,先输入git,看看是否安装Git: $ gitThe program 'git' is currently not installed. You can install

Maven学习笔记(1)之安装Maven

此笔记是学习Maven时自己摸索+各种百度而来,并非全部原创,望与各位一同学习,勿拍~勿拍~ 安装步骤: 1.下载Maven的最新版本,地址:http://maven.apache.org/download.cgi 2.将下载完成的压缩包放至D盘根目录(图方便,一会儿安装完再删就好) 3.在命令行上操作,进入到你想要安装的目录路径后敲:jar xvf 的命令来进行解压安装(请勿手动解压以省略此步) 4.配置环境变量 新建系统变量  MAVEN_HOME  变量值:D:\Java\apache-m

Hadoop学习笔记0004——eclipse安装hadoop插件

Hadoop学习笔记0004--eclipse安装hadoop插件 1.下载hadoop-1.2.1.tar.gz,解压到win7下hadoop-1.2.1: 2.如果hadoop-1.2.1中没有hadoop-eclipse-plugin-1.2.1.jar包,就到网上下载下来: 3.关闭eclipse,然后将hadoop-eclipse-plugin-1.2.1.jar拷贝到eclipse安装目录下的eclipse-x.x\plugins文件夹下,重启eclipse 4.在eclipse中顶

Linux学习笔记——虚拟机中安装VMware Tools

0 前言 VMware Tools是VMware虚拟机中自带的一种增强工具,只有在VMware虚拟机中安装好了VMware Tools,才能实现主机与虚拟机之间的文件共享,实现文件在虚拟机之间的复制粘贴. 最近购买了周立功的一款EasyARM开发板,作为树莓派Linux学习的补充.在虚拟机中安装了周立功提供的ubuntu镜像,总觉得在主机和PC机之间直接复制粘贴才爽,所以又安装了Vmware Tools.     [相关博文] [ Linux学习笔记--vmware plarer中安装ubunt

【改自lg2lh】EZ-USB 68013 学习笔记--设备信息安装文件CyUSB.inf详细说明

首先要明白一个INF文件的基本结构:INF由节组成,即一个个段组成.每个段的功能不一样.(大部分书上把这个段叫作"节") [Version]段:主要用说明版本信息的. [Strings]段:字符串信息,用于常量定义,用于显示.凡在其他段中出现的%XXXX%(就是两个百分号夹着一组字母),则对应的就会在Strings段里对应着它的一个字符串. [SourceDisksNames]段:定义安装源文件所在磁盘,一般为1,表示在第一个磁盘.此节可无. [SourceDiskFiles]段:驱动