mesos+docker+marathon

最近工做不饱和啊,加上正好有空闲的机器,就想着搭个mesos+docker+marathon玩玩。上干货:html

环境Centos6.7,内核版本3.18linux

先安装mesos的依赖包docker

wget http://mirror.centos.org/centos/6/os/x86_64/Packages/apr-devel-1.3.9-5.el6_2.x86_64.rpm
sudo rpm ihv apr-devel-1.3.9-5.el6_2.x86_64.rpm
sudo yum install libcurl-devel apr-util-devel cyrus-sasl cyrus-sasl-devel cyrus-sasl-md5 subversion-devel


安装maven,配置PATH保证能找到mvn命令便可apache

BTW,linux下的依赖包通常均可以在https://pkgs.org/这个网站里找到vim

下载mesos-1.0.0:centos

wget http://archive.apache.org/dist/mesos/1.0.0/mesos-1.0.0.tar.gz
tar zxvf mesos-1.0.0.tar.gz
cd mesos-1.0.0
# 配置安装,编译以前要保证g++版本不要太低,太低请先升级gcc版本:
./configure --prefix=/usr/local/mesos-1.0.0
sudo make
sudo make install

安装完成后启动masterbash

MESOS_PATH=/usr/local/mesos-1.0.0
# 添加slave的白名单
${MESOS_PATH}/etc/mesos/slaves
echo "slave1.ip" >> ${MESOS_PATH}/etc/mesos/slaves
echo "slave2.ip" >> ${MESOS_PATH}/etc/mesos/slaves
echo "slave3.ip" >> ${MESOS_PATH}/etc/mesos/slaves

启动 curl

# 启动master
sudo ${MESOS_PATH}/sbin/mesos-master --ip=xxx.xxx.xxx.xxx --whitelist=${MESOS_PATH}/etc/mesos/slaves --work_dir=${MESOS_PATH}/work --log_dir=${MESOS_PATH}/log > /dev/null 2>&1 &

# 启动slave
sudo ${MESOS_PATH}/sbin/mesos-slave --master='master.ip:5050' --work_dir=${MESOS_PATH}/work > /dev/null 2>&1 &

以上启动模式只有一个master,当须要启用HA功能时须要zookeepermaven

# master:
sudo ${MESOS_PATH}/sbin/mesos-master \
  --ip=xxx.xxx.xxx.xxx \
  --whitelist=${MESOS_PATH}/etc/mesos/slaves \
  --work_dir=${MESOS_PATH}/work \
  --log_dir=${MESOS_PATH}/log \
  --zk=zk://you_zk_address/mesos \
  --quorum=1> /dev/null 2>&1 &

# slave:
sudo ${MESOS_PATH}/sbin/mesos-slave \
  --master='zk://you_zk_address/mesps' \
  --work_dir=${MESOS_PATH}/work > /dev/null 2>&1 &

访问master地址的5050端口:http://you_master_ip:5050能看到全部agent的状态和提交的任务状态网站

安装docker
因为docker官网上要求的系统centos 7,因此确定不能直接安,在网上找了一篇blog:http://www.cnblogs.com/zhenyuyaodidiao/p/5464422.html
表示在centos上能够安装1.7.1版本的docker。

sudo rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
sudo yum install docker-io

# 启动
sudo docker -d or sudo service docker start

安装marathon

wget 'http://downloads.mesosphere.com/marathon/v1.1.1/marathon-1.1.1.tgz'
tar zxvf marathon-1.1.1.tgz
cd marathon-1.1.1
vim bin/start

在CONF_FILE下面加入下面这一行

export MESOS_NATIVE_JAVA_LIBRARY=${MESOS_PATH}/lib/libmesos-1.0.0.so

sudo bin/start 访问http://your_ip:8080 就能访问marathon的界面了

相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息