mesos集群安装

来源:互联网 发布:汉江怪物知乎 编辑:程序博客网 时间:2024/06/05 08:47

mesos安装攻略:(安装环境ubuntu14.04,安装过程中保持尽量联网状态)

在官网下载mesos源码(我用的mesos-1.2.0)利用

./configure(检查安装环境,如编译环境和所需依赖包是否安装,生成makefile文件),

make(执行makefile文件,确定在什么位置安装mesos,makeinstall(安装)

因为mesos需要许多依赖包,所以在进行configure之前先进行一些必要依赖包的安装:

sudoapt-get update(更新软件库,在/etc/apt/sources.list文件更新后执行,没有更新就没有必要执行)

sudoapt-get install -y tar wget git

sudoapt-get install -y openjdk-7-jdk

sudoapt-get install -y autoconf libtool

sudoapt-get -y install build-essential python-dev python-sixpython-virtualenv libcurl4-nss-dev libsasl2-dev libsasl2-modulesmaven libapr1-dev libsvn-dev

我在安装libsvn-dev时出现问题,所以我先安装了前面的依赖包,最后执行sudoapt-get install libsvn-dev ,

报错:软件库中有1.9.3版本,但是需要的是1.8.8-1,该软件没有向下兼容,

解决方法:强制指定安装版本:sudoapt-get install libsvn-dev=1.8.8-1

安装好这些依赖包之后执行configure没有问题

(如果在安装上述依赖包的过程中出现依赖其他的包,则先将其以来的包装上,因为不同的机器存在的安装包可能是不一样的,要具体问题具体分析。)

执行make(这一阶段会持续大概30分钟):

报错:/opt/soft/mesos-1.2.0/3rdparty/protobuf-2.6.1/src/google/protobuf/descriptor.protoFiledoes not reside within any path specified using --proto_path (or -I). You must specify a --proto_path which encompasses this file. Notethat the proto_path must be an exact prefix of the .proto file names-- protoc is too dumb to figure out when two paths (e.g. absolute andrelative) are equivalent (it's harder than you think).

网上提供的解决方法:是因为没有在.proto文件所在目录下执行,一是在.proto文件所在目录下执行protoc,二是为protoc指定参数—proto_path,参数值为.proto文件所在目录。

这两种发放在这里个人感觉都是不可行的,因为这是在执行自动化make过程中出现的错误,我们无法单独执行(尝试过,依然没有解决)。

解决方法:将descriptor.proto文件添加一个后缀成descriptor.proto.bak,再次执行make,通过,不是很明白原因。

执行sudomake install

安装完成。

安装完一台机器之后,可以通过shell脚本将缓存中通过apt安装的依赖包打包发到其他需要的机器上,这样可以不需要再次下载,节省时间。

打包的shell脚本:

#!/usr/bin/env sh

#1.make dir

sudomkdir /offlinePackage

#2.

sudocp -r /var/cache/apt/archives /offlinePackage

#3.

sudochmod 777 -R /offlinePackage/

sudodpkg-scanpackages /offlinePackage/ /dev/null |gzip>/offlinePackage/Packages.gz

sudocp /offlinePackage/Packages.gz /offlinePackage/archives/Packages.gz

sudotar -zvcf offlinePackage.tgz /offlinePackage


将得到的offlinePackage分发到其他机器上,并添加到sources.list文件中:

debfile:/// offlinePackage/

然后sudoapt-get update.接着利用上述步骤安装。

原创粉丝点击