『高階篇』docker之Mesos叢集環境搭建(24)
這次開始動手操作,首先是Mesos的安裝,怎麼來安裝Mesos。原始碼:https://github.com/limingios/msA-docker/mac
https://github.com/limingios/msA-docker/vagrant/Mesos
官網
http://mesos.apache.org/ 本身的安裝是c++的,還需要c++進行編譯才可以,所以安裝感覺比較麻煩,對於安裝麻煩的,首選想到的是什麼老鐵,去dockerhub裡面看看,有沒有docker的版本。
https://hub.docker.com/u/mesosphere/
咱們應該使用的是單獨的master 和單獨的slave
下載映象
-
拉取映象
>server01和server03
docker pull mesosphere/mesos-slave:1.7.0
server02
docker pull mesosphere/mesos-master:1.7.0
-
hosts 建立zookeeper
> zookeeper 啟動
#!/bin/bash cur_dir=`pwd` docker stop zookeeper docker rm zookeeper docker run --name zookeeper--restart always -p 2181:2181-d zookeeper:3.5
- server02 建立mesos-master
vi mesos.sh
#!/bin/bash docker run -d --net=host \ --hostname=192.168.66.102 \ -e MESOS_PORT=5050 \ -e MESOS_ZK=zk://192.168.100.139:2181/mesos \ -e MESOS_QUORUM=1 \ -e MESOS_REGISTRY=in_memory \ -e MESOS_LOG_DIR=/var/log/mesos \ -e MESOS_WORK_DIR=/var/tmp/mesos \ -v "$(pwd)/mesos/log/mesos:/var/log/mesos" \ -v "$(pwd)/mesos/tmp/mesos:/var/tmp/mesos" \ mesosphere/mesos-master:1.7.0 --no-hostname_lookup --ip=192.168.66.102
sh mesos.sh
mesos-master 已經連線到了主機zookeeper。
測試連線地址:http://192.168.66.102:5050
Frameworks 未關聯,目前還不顯示。
Agents 下面的slave的展示
-
server01
>slave容器的建立
vi mesos-slave.sh
#!/bin/bash docker run -d --net=host --privileged \ --hostname=192.168.66.101 \ -e MESOS_PORT=5051 \ -e MESOS_MASTER=zk://192.168.100.139:2181/mesos \ -e MESOS_SWITCH_USER=0 \ -e MESOS_CONTAINERIZERS=docker,mesos \ -e MESOS_LOG_DIR=/var/log/mesos \ -e MESOS_WORK_DIR=/var/tmp/mesos \ -v "$(pwd)/mesos/log/mesos:/var/log/mesos" \ -v "$(pwd)/mesos/tmp/mesos:/var/tmp/mesos" \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /sys:/sys \ -v /usr/bin/docker:/usr/local/bin/docker \ mesosphere/mesos-slave:1.7.0 --no-systemd_enable_support \ --no-hostname_lookup --ip=192.168.66.101
sh mesos.sh
-
server03
>slave容器的建立
vi mesos-slave.sh
#!/bin/bash docker run -d --net=host --privileged \ --hostname=192.168.66.103 \ -e MESOS_PORT=5051 \ -e MESOS_MASTER=zk://192.168.100.139:2181/mesos \ -e MESOS_SWITCH_USER=0 \ -e MESOS_CONTAINERIZERS=docker,mesos \ -e MESOS_LOG_DIR=/var/log/mesos \ -e MESOS_WORK_DIR=/var/tmp/mesos \ -v "$(pwd)/mesos/log/mesos:/var/log/mesos" \ -v "$(pwd)/mesos/tmp/mesos:/var/tmp/mesos" \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /sys:/sys \ -v /usr/bin/docker:/usr/local/bin/docker \ mesosphere/mesos-slave:1.7.0 --no-systemd_enable_support \ --no-hostname_lookup --ip=192.168.66.103
-
server02 安裝marathon映象
> https://hub.docker.com/r/mesosphere/marathon,
根據架構圖來
docker pull mesosphere/marathon:v1.5.12
vi marathon
#!/bin/bash docker run -d --net=host \ mesosphere/marathon:v1.5.2 \ --master zk://192.168.100.139:2181/mesos \ --zk zk://192.168.100.139:2181/marathon
網址:http://192.168.66.102:8080
這個是base路徑的問題,不影響。
- Host安裝 marathon-lb
拉取映象
docker pull mesosphere/marathon-lb:v1.12.3
新建立一個shell 檔案
#!/bin/bash docker stop marathon-lb docker rm marathon-lb docker run -d -p 9090:9090 \ -e PORTS=9090 \ mesosphere/marathon-lb:v1.12.3 sse \ --group external \ --marathon http://192.168.66.102:8080
marathon-lb 訪問地址:http://localhost:9090/haproxy?stats
marathon 功能
- 新建application
while [ true ];do sleep 5;echo 'hello idig8.com';done
- 自動執行
-
檢視mesos 和 Marathon的對比
在mesos的Framework裡面可以看到Marathon的Framework
PS: 所有的服務已經搭建,完畢,下一步就把之前寫的6個微服務部署到我們的Mesos叢集裡面哈哈!
ofollow,noindex" target="_blank" href="http://zhanzhang.baidu.com/sitesubmit/index?sitename=https://idig8.com/2018/10/27/gaojipiandockerzhimesosjiqunhuanjingdajian24/">百度未收錄
>>原創文章,歡迎轉載。轉載請註明:轉載自IT人故事會,謝謝!
>>原文連結地址:上一篇:已是最新文章