背景資訊
組網:
OS:CentOS7
bigdata01:Mesos(master),Marathon,Chronos,ZooKeeper
bigdata02:docker mesos(slave)
JDK版本:
[[email protected] bin]# java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
安裝過程
1、配置主機名
vi /etc/hosts
192.168.209.10 bigdata01 bigdata01.zetyun.com
192.168.209.11 bigdata02 bigdata02.zetyun.com
2、在所有機器上,安裝Mesos源
# rpm -Uvh http://repos.mesosphere.io/el/7/noarch/RPMS/mesosphere-el-repo-7-1.noarch.rpm
3、在bigdata01(作為master)執行如下安裝指令:
3.1 在Master上安裝Mesos,Marathon,Chronos,ZooKeeper
# yum install mesos marathon chronos mesosphere-zookeeper
3.2 配置ZK
本次配置的Master是單節點環境,ZooKeeper也是單點
# vi /etc/mesos/zk
zk://bigdata01:2181/mesos
3.3配置Mesos
vi /etc/mesos-master/ip
192.168.209.10
(注意:這裡需要配置為IP位址,使用主機名時導緻啟動失敗)
3.4啟動服務
# systemctl start zookeeper
# systemctl start mesos-master
# systemctl start marathon
# systemctl start chronos
4、在bigdata02(作為slave)執行如下安裝指令:
4.1在Slave上安裝Mesos,Docker
# yum install mesos docker
4.2配置Docker
# echo 'docker,mesos' > /etc/mesos-slave/containerizers
# echo '5mins' > /etc/mesos-slave/executor_registration_timeout
4.3配置ZK
# vi /etc/mesos/zk
zk://bigdata01:2181/mesos
4.4配置Mesos
vi /etc/mesos-master/ip
192.168.209.10
(注意:這裡需要配置為IP位址,使用主機名時導緻啟動失敗)
4.5啟動服務
# systemctl start docker
# systemctl start mesos-slave
5、安裝檢查
5.1Mesos界面
http://bigdata01:5050/#/
5.2Marathon界面
http://bigdata01:8080/ui/#/apps
5.3Chronos界面
http://bigdata01:4400/
故障處理:
故障描述:
marathon啟動失敗,報錯資訊如下:
[[email protected] marathon]# systemctl start marathon.service
[[email protected] marathon]# journalctl -u marathon
-- Logs begin at Sun 2017-12-03 23:00:44 PST, end at Mon 2017-12-04 01:10:51 PST. --
Dec 03 23:51:35 bigdata01.zetyun.com systemd[1]: Starting Scheduler for Apache Mesos...
Dec 03 23:51:35 bigdata01.zetyun.com systemd[1]: Started Scheduler for Apache Mesos.
Dec 03 23:51:36 bigdata01.zetyun.com marathon[12311]: No start hook file found ($HOOK_MARATHON_START). Proceeding with the start script.
Dec 03 23:51:41 bigdata01.zetyun.com marathon[12311]: [scallop] Error: Required option 'master' not found
Dec 03 23:51:41 bigdata01.zetyun.com systemd[1]: marathon.service: main process exited, code=exited, status=1/FAILURE
Dec 03 23:51:41 bigdata01.zetyun.com systemd[1]: Unit marathon.service entered failed state.
Dec 03 23:51:41 bigdata01.zetyun.com systemd[1]: marathon.service failed.
Dec 03 23:52:41 bigdata01.zetyun.com systemd[1]: marathon.service holdoff time over, scheduling restart.
解決辦法:
通過上述日志可以看出,是找不到master導緻啟動失敗,根據網絡上的資訊做了如下配置:
建立 /etc/marathon/conf目錄,并在該目錄下建立如下三個檔案:
[[email protected] conf]# pwd
/etc/marathon/conf
[[email protected] conf]# ls
hostname master zk
[[email protected] conf]# cat hostname
192.168.209.10
[[email protected] conf]# cat master
zk://bigdata01:2181/mesos
[[email protected] conf]# cat zk
zk://bigdata01:2181/marathon
執行上述操作後,啟動時依然報相同的錯誤,最後根據如下辦法直接帶master參數啟動marathon,最終成功
[[email protected] bin]# pwd
/usr/share/marathon/bin
[[email protected] bin]# ls
backup marathon native restore
[ro[email protected] bin]# ./marathon --master zk://bigdata01:2181/mesos
說明:這個指令是參考http://www.genshuixue.com/wenda/6783812.html中的如下資訊猜測得出的:
cd marathon_home bin/start --master zk://mesos_url_on_zk/mesos --zk zk://zk_url:2181/marathon
安裝過程參考:http://blog.csdn.net/haiyang4988/article/details/53538036