ApacheMesos1.0.1编译安装部署教程(ubuntu)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ApacheMesos1.0.1编译安装部署教程(ubuntu)
参考资料
官⽅⽂档:
中⽂翻译:
GitHub:
董的博客:
mesos下载源码
官⽹上下载源码
安装依赖包
根据官⽹教程()先安装依赖包
# Update the packages.
$ sudo apt-get update
# Install a few utility tools.
$ sudo apt-get install -y tar wget git
# Install the latest OpenJDK.
$ sudo apt-get install -y openjdk-7-jdk
# Install autotools (Only necessary if building from git repository).
$ sudo apt-get install -y autoconf libtool
# Install other Mesos dependencies.
$ sudo apt-get -y install build-essential python-dev libcurl4-nss-dev libsasl2-dev libsasl2-modules maven libapr1-dev libsvn-dev
配置并编译
# Change working directory.
$ cd mesos
# Bootstrap (Only required if building from git repository).
$ ./bootstrap
# Configure and build.
$ mkdir build
$ cd build
$ ../configure --prefix=/home/hl/mesos_install
#prefix参数就是安装的路径,最好⾃⼰新建⼀个⽂件夹,不要使⽤默认,默认的⽬录为/usr/local,如果默认安装的话会出现很多权限问题
$ make
测试编译结果
编译好之后打开build/bin,使⽤下述命令启动mesos-master,以及附属的⼀个slave来检查是否编译成功
$ ./bin/mesos-master.sh --ip=127.0.0.1 --work_dir=/home/hl/mesos_install/log/master
# Start mesos slave.
$ ./bin/mesos-slave.sh --master=127.0.0.1:5050
在本机上访问如下地址$ ,如果⽤浏览器访问上述⽹页成功,⽽且⾯中现实激活的节点为1个则说明编译成功了
安装
安装的过程就是把mesos集群启动过程中需要的执⾏⽂件,库⽂件等集中放置到系统路劲下,⼀般系统路径是/usr/sbin、/usr/bin等。
但是这个路劲是可以改变的,在之间./configuire操作的时候--prefix操作就是设置安装的⽬录。
虽然教程中安装只有⼀句命令“make install”,但是make install有时候会出现问题,⽐如:
Command setup.py egg_info failed with error code 1 in /tmp/pip_build_ndn/protobuf
出现这个问题的原因是安装过程中会下载⼀些软件,这些数据被墙了,解决的⽅法是使⽤国内的源先把需要软件安装了,针对上述问题,是pip被墙了,使
⽤清华的源:修改源的步骤在上诉链接中给出了,我使⽤第⼀中⽅法,“临时使⽤源”。
根据错误提⽰,被墙的包为google-apputils和protobuf,那么我使⽤pip命令安装这两个软件如下:
sudo pip install -i https:///simple google-apputils
#没有安装pip请安装sudo apt-get install python-pip
sudo pip install -i https:///simple protobuf
#上述步骤进⾏之后就可以不出错地安装了
make install
测试
mesos 安装好后,提供了c++ /java / python的测试例⼦,如果在web界⾯中看到有任务finshed,说明编译成功。
# Change into build directory.
$ cd build
# Start mesos master (Ensure work directory exists and has proper permissions).
$ ./bin/mesos-master.sh --ip=127.0.0.1 --work_dir=/var/lib/mesos
# Start mesos agent (Ensure work directory exists and has proper permissions).
$ ./bin/mesos-agent.sh --master=127.0.0.1:5050 --work_dir=/var/lib/mesos
# Visit the mesos web page.
$ http://127.0.0.1:5050
# 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
接下⾥基于mesos提供的Java接⼝,写个简单的分布式框架(运⾏在mesos上的程序)demo。
配置mesos集群。