安装了将近一周的环境了,终于把Mesos以及Marathon给安装上了,我指的离线安装。
策略1:
严格的按照官网的流程:
找一台能够上网的机器,通过yum install/update --downloadonly --downloaddir=/opt/XXX
但是所有的yum下载都不要安装而是缓存到本地指定的文件夹(默认会缓存到/var/cache/yum/...下面,但是目录有些繁琐,而且容易和别的安装混淆,另外还需要配置yum.cfg)
 
但是即使这样,yum并不能把所有的依赖下载下来,其中关于java的很多依赖还是需要手动去下载,使得手动下载,这里推荐一个好的网站吧(不要依赖包下到手抖,但是过程总是要走一遍):
http://pkgs.org
 
然后是Mesos的编译,也是需要在那台上网机器进行,因为Mesos的编译需要用到maven库,需要下载一些支持包,编译时间老长了(这个只是make,还不包括make chekc 和make install不要等到花儿都谢了,喝点茶,给女友媳妇煲个电话粥吧)
这里强调一下,你的编译路径非常重要,你的部署路径必须和编译路径是一致的的(我指的是一次编译到处运行,到处,指的是操作系统一致的情况);否则未来你在执行mesos-XX.sh的时候将会报错。
 
不要make check了,然后将yum下载的依赖包以及编译的包(最好压缩个包,很大的)统统的以着某种方式(U盘?)拷贝到你的离线安装的环境,然后通过
yum local install *
进行安装,安装过程你会发现一些依赖需要下载,参看上面提到的网址;
依赖安装完成后,就是将编译的结果进行安装,尽管官网上面写的是make install是(optional),但是其实是必须有的,否则后面使用Marathon的提交任务时候会报错,/usr/local下面找不到什么.so文件云云。所以,还是需要:
make install
这个过程会有很长一段时间报错:No matching distribution found for protobuf<4,>=2.6.1 (from mesos.interface==1.3.1->mesos.executor==1.3.1->mesos.native==1.3.1)
Processing ./mesos.scheduler-1.3.1-cp27-none-linux_x86_64.whl
Collecting mesos.interface==1.3.1 (from mesos.scheduler==1.3.1)
Retrying (Retry(total=4, connect=None, read=None, redirect=None)) after connection broken by 'ProtocolError('Connection aborted.', gaierror(-2, 'Name or service not known'))': /simple/mesos.interface/
不要理会他,让他翻滚,页面刷一会就好了。
 
然后是安装Marathon,按照官网来,貌似一切顺利,但是在启动的时候,发现报错,提示环境变量要指定ESOS_NATIVE_JAVA_LIBRARY,这个东西就是告诉Marathon到哪里去找libmesos.so文件;不要尝试在export的方式来指定,而是在指令前面指定(这种方式有点奇葩):
MESOS_NATIVE_JAVA_LIBRARY=/home/bd/mesos-1.3.1/build/src/.libs/libmesos.so ./bin/start --master local --zk zk://localhost:2181/marathon
尽管make install理论上是不需要指定MESOS_NATIVE_JAVA_LIBRARY,但是实际上如果不指定,就会报错:
Scheduler driver bound to loopback interface! Cannot communicate with remote master(s). You might want to set 'LIBPROCESS_IP' environment variable to use a routable IP address.
基本上不需要尝试在前面指定LIBPROCESS_IP,我尝试过了,没用;但是添加上了MESOS_NATIVE_JAVA_LIBRARY则是可以的。
参考网站:
 
策略2:
安装repo索引文件;
 
下载mesos和marathon的下载包
yum install/update --downloadonly --downloaddir=/opt/XXX mesos marathon
 
但是,明显下载的包不够,需要参看官网上面所需要的那些依赖,但是不需要编译mesos,这个至少可以节省5个小时的摸索时间,marathon也是无缝和mesos合作。
 
验证mesos安装,本机IP:5050
验证marathon安装,本IP:8080
参考网站:

Mesos以及Marathon安装总结的更多相关文章

  1. Mesos+Zookeeper+Marathon+Docker分布式集群管理最佳实践

    参考赵班长的unixhot以及马亮blog 笔者QQ:572891887 Linux架构交流群:471443208 1.1Mesos简介 Mesos是Apache下的开源分布式资源管理框架,它被称为分 ...

  2. Mesos+Zookeeper+Marathon的Docker管理平台部署记录(1)

    随着"互联网+"时代的业务增长.变化速度及大规模计算的需求,廉价的.高可扩展的分布式x86集群已成为标准解决方案,如Google已经在几千万台服务器上部署分布式系统.Docker及 ...

  3. docker集群——搭建Mesos+Zookeeper+Marathon的Docker管理平台

    服务器架构 机器信息: 这里部属的机器为3个Master控制节点,3个slave运行节点,其中: zookeeper.Mesos-master.marathon运行在Master端:Mesos-sla ...

  4. Mesos+Zookeeper+Marathon+Docker环境搭建

    相关理论请参考:https://www.cnblogs.com/Bourbon-tian/p/7155054.html,本文基于https://www.cnblogs.com/Bourbon-tian ...

  5. Mesos+Zookeeper+Marathon的Docker管理平台部署记录(2)- 负载均衡marathon-lb

    之前介绍了Mesos+Zookeeper+Marathon的Docker管理平台部署记录(1)的操作,多余的废话不说了,下面接着说下在该集群环境下的负载均衡marathon-lb的部署过程: 默认情况 ...

  6. 2.centos7 安装Mesos和marathon

    master节点 节点名称 IP地址 master1 192.168.161.128 由于硬件资源有限,这里仅安装一个master节点,会存在单点问题.在实际生产中,尽量不要这样操作. 1.安装zoo ...

  7. 使用Mesos和Marathon管理Docker集群

    分布式系统是难于理解.设计.构建 和管理的,他们将比单个机器成倍还要多的变量引入到设计中,使应用程序的根源问题更难发现.SLA(服务水平协议)是衡量停机和/或性能下降的标准,大多数现代应用程序有一个期 ...

  8. docker集群——介绍Mesos+Zookeeper+Marathon的Docker管理平台

    容器为用户打开了一扇通往新世界的大门,真正进入这个容器的世界后,却发现新的生态系统如此庞大.在生产使用中,不论个人还是企业,都会提出更复杂的需求.这时,我们需要众多跨主机的容器协同工作,需要支持各种类 ...

  9. Mesos和Marathon

    libz is required for mesos to build 需要安装zlib-devel-1.2.7-17.el7.x86_64.rpm   其实跨Shell的Profile文件同步只要执 ...

随机推荐

  1. hdu1081 最大子矩阵

    最大子矩阵自然直在最大连续子序列的升级版  只是其原理都是用到了动态规划思想     仅仅是矩阵用到了枚举 +合并       把非常多列看成是一列的和 #include<stdio.h> ...

  2. c# emit 动态实现接口

    using System; using System.Linq; using System.Reflection; using System.Reflection.Emit; namespace Te ...

  3. eclipse-jee版配置tomcat

    Eclipse作为一款优秀的java开发开源IDE,集成了许多优秀的开发控件.下来我就如何安装eclipse及插件进行说明: 一.JDK安装   JDK是作为整个java的核心,包括运行环境,编译工具 ...

  4. 渐变背景(background)效果

    chrom and Safari浏览器: webkit核心的浏览器.使用CSS3渐变方法(css-gradient) -webkit-gradient(type, start_point, end_p ...

  5. JVM中垃圾收集选项

    最初并发垃圾收集被引入的时候,激活并发垃圾收集的命令选项是: -XX:+UseParallelGC 增强的并行收集和Java 6一起发布,通过一个新的命令行选项: -XX:+UseParallelOl ...

  6. java List复制:浅拷贝与深拷贝

    Java的拷贝可以分为三种:浅拷贝(Shallow Copy).深拷贝(Deep Copy).延迟拷贝(Lazy Copy). 在java中除了基本数据类型之外(int,long,short等),还存 ...

  7. Vue引入js、css文件

    1.js调用方法一:这是组件内调用,非公共js 2.js调用方法二:公共jsmain.js内加入公共jsVue.prototype.timeago = timeago 3.引入公共css在main.j ...

  8. 无法远程访问 MySql Server

    改表法.可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "use ...

  9. Asynchronous_method_invocation 异步方法调用 让步 yielding

    zh.wikipedia.org/wiki/同步 [同步不同事件发生 时间一致] 同步(英语:Synchronization),指在一个系统中所发生的事件(event),之间进行协调,在时间上出现一致 ...

  10. django 设置静态文件,static

    django 设置静态文件,static 一.搜集静态文件 1.1 命令行查看 collectstatic guoguos-MacBook-Pro:mysite guoguo$ python mana ...