天天看點

Mesos + Marathon + Chronos + Docker環境安裝

背景資訊

組網:

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/#/

Mesos + Marathon + Chronos + Docker環境安裝

5.2Marathon界面

http://bigdata01:8080/ui/#/apps

Mesos + Marathon + Chronos + Docker環境安裝

5.3Chronos界面

http://bigdata01:4400/

Mesos + Marathon + Chronos + Docker環境安裝

故障處理:

故障描述:

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

繼續閱讀