注:docker在centos6上面运行很不稳定,如果要在mesos上运行docker的话,建议用centos7
根据官网说明安装的过程记录,linux不同版本操作系统安装不太一样,官网看这里mesosphere官网安装
1.环境
- 硬件环境
192.168.1.24(master)(mesos,marathon,zookeeper)
192.168.1.25(slave)(mesos)
192.168.1.26(slave)(mesos)
由于mesos的master和slave节点之间是通过zookeeper进行关联通信的,而且zookeeper建议master至少是三个节点,这里测试用一个也可以
2.准备工作
- 修改yum源,master和slave节点上都需要做
添加阿里云yum
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
添加mesosphere源
sudo rpm -Uvh http://repos.mesosphere.com/el/7/noarch/RPMS/mesosphere-el-repo-7-1.noarch.rpm
3.master节点安装
1.安装mesos、marathon、zookeeper
- master1
sudo yum -y install mesos marathon
(下面是安装zookeeper的,安装过的就不用安装了)
sudo yum -y install mesosphere-zookeeper
2.zookeeper配置
- 给每一个master的zookeeper设置一个唯一id
vi /var/lib/zookeeper/myid=(int唯一值)
- 配置zookeeper的服务地址
vi /etc/zookeeper/conf/zoo.cfg
(在结尾添加)
server.1=192.168.1.24:2888:3888
3.mesos-master配置
- 配置mesos(master和slave主要通过这个进行通信)
vi /etc/mesos/zk
(添加下面值)
zk://192.168.1.24:2181/mesos
- 配置zookeeper,master的信息
vi /etc/mesos-master/quorum
(在里面添加一个数字,数字大小不小于master的数量除以2,这里测试一个master,填1就可以)
- 其它配置
vi /etc/mesos-master/ip
(添加master的ip,默认是127.0.0.1,只做显示用)
vi /etc/mesos-master/hostname
(添加master的hostname,默认为localhost,主要在mesos集群间使用,不是机器的hostname,只做显示用)
4.marathon配置
这个设置和上面配置mesos的hostname效果一样,不配置会显示默认的localhost,不影响使用
mkdir -p /etc/marathon/conf/ && touch hostname
echo 192.168.1.24 | sudo tee /etc/marathon/conf/hostname
5.服务设置
- 关闭mesos-slave,并设置不开机启动
systemctl stop mesos-slave.service
systemctl disable mesos-slave.service
6.服务启动
注意:如果master多个,每一个机器上面都要启动
- zookeeper 启动
service zookeeper start(stop,restart)
- mesos-master启动
service mesos-master start(stop,restart)
- marathon启动
service marathon start(stop,restart)
4.slave节点安装
1.安装mesos
- master1
sudo yum -y install mesos
2.mesos-slave配置
- 配置mesos(master和slave主要通过这个进行通信)
vi /etc/mesos/zk
(添加下面值)
zk://192.168.1.24:2181/mesos
- 其它配置
vi /etc/mesos-slave/ip
(添加slave的ip,默认是127.0.0.1,只做显示用)
vi /etc/mesos-slave/hostname
(添加slave的hostname,默认为localhost,主要在mesos集群间使用,不是机器的hostname,只做显示用)
- 配置docker启动(注:如果机器上面没有安装docker,配置下面的会导致slave节点启动不了)
echo 'docker,mesos' > /etc/mesos-slave/containerizers
echo '5mins' > /etc/mesos-slave/executor_registration_timeout
4.服务设置
- 关闭mesos-master,并设置不开机启动
sudo systemctl stop mesos-master.service
sudo systemctl disable mesos-master.service
6.服务启动
注意:如果slave多个,每一个机器上面都要启动
- mesos-master启动
service mesos-slave start(stop,restart)
5.预览
- marathon
- mesos