久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長資訊網
最全最豐富的資訊網站

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺

Mesos概述

Apache Mesos 是一款基于多資源(內存、CPU、磁盤、端口等)調度的開源集群管理套件,能使容錯和分布式系統更加容易使用。其采用了Master/Slave結構來簡化設計,將Master做的盡可能輕量級,僅保存了各種計算框架(Framwork)和Mesos Slave的狀態信息,這些狀態很容易在Mesos出現故障時被重構,所以使用zookeeper解決master單點故障問題。

Mesos工作原理

Mesos Master充當全局資源調度器角色,采用某種策略算法將某個Save
上的空閑資源分配給某個Famework,而各種Framework則是通過自己的調度器向master注冊進行接入,master slave則是收集任務狀態和啟動各個Framework的Executor。其架構圖如下:

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺

基本術語:

  • Mesos master: 負責管理各個Framework和Slave,并將Slave 上的資源分配給各個Framework。
  • Mesos Slave:負責管理本節點上的各個Mesos Task,為各個Executor分配資源。
  • Framework:計算框架,如:Hadoop、Spark等,可以通過MesosSchedulerDiver接入Mesos。
  • Executor:執行器,在Mesos Slave上安裝,用于啟動計算框架中的Task。

Zookeeper概述

ZooKeeper是一個分布式的,開放源碼的分布式應用程序協調服務,是Google的Chubby一個開源的實現,是Hadoop和Hbase的重要組件。它是一個為分布式應用提供一致性服務的軟件,提供的功能包括:配置維護、域名服務、分布式同步、組服務等。其中Master 選舉可以說是 ZooKeeper 最典型的應用場景了。生產環境中Zookeeper是以宕機個數過半來讓整個集群宕機的,所以master至少三個節點。

Marathon

Marathon是一個Mesos框架,能夠支持運行長服務,比如web應用等。是集群的分布式Init.d,能夠原樣運行任何Linux二進制發布版本,如Tomcat Play等等,可以集群的多進程管理。也是一種私有的Pass,實現服務的發現,為部署提供提供REST API服務,有授權和SSL、配置約束,通過HAProxy實現服務發現和負載平衡。

配置搭建docker集群管理平臺

版本內核需要3.10以上

cat /etc/RedHat-release   //查看Linux版本    uname -r   //查看內核版本(需要內核3.10以上)

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺
環境如下所示:

主機 IP地址 安裝軟件包
master 192.168.26.150 jdk-8u91-linux-x64.tar.gz/mesos-0.25.0.tar.gz/zookeeper-3.4.10.tar.gz/ marathon-0.15.2.tgz
master1 192.168.26.139 jdk-8u91-linux-x64.tar.gz/ mesos-0.25.0.tar.gz /zookeeper-3.4.10.tar.gz
master2 192.168.26.140 jdk-8u91-linux-x64.tar.gz/mesos-0.25.0.tar.gz/zookeeper-3.4.10.tar.gz
slave 192.168.26.141 jdk-8u91-linux-x64.tar.gz/mesos-0.25.0.tar.gz/docker
slave1 192.168.26.142 jdk-8u91-linux-x64.tar.gz/mesos-0.25.0.tar.gz/docker

步驟如下所示:

一、安裝Mesos

關閉所有主機的防火墻和安全性策略

systemctl stop firewalld.service systemctl disable firewalld.service setenforce 0

1.配置JAVA環境

tar zxvf jdk-8u91-linux-x64.tar.gz -C /usr/local/    cd /usr/local  mv jdk1.8.0_91/ java    vim /etc/profile  export JAVA_HOME=/usr/local/java  export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar    source /etc/profile

2.安裝相關環境

(1)安裝開發工具

yum groupinstall -y "Development Tools"

(2)添加apache-maven源
為Mesos提供項目管理和構建自動化工具的支持

wget http://repos.Fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo

(3)安裝相關依賴包

yum install -y apache-maven Python-devel zlib-devel libcurl-devel openssl-devel cyrus-sasl-devel cyrus-sasl-md5 apr-devel apr-util-devel subversion-devel

(4)配置WANdiscoSVN網絡源

vim /etc/yum.repos.d/wandisco-svn.repo    [WANdiscoSVN]  name=WANdisco SVN Repo 1.9  enabled=1  baseurl=http://opensource.wandisco.com/CentOS/7/svn-1.9/RPMS/$basearch/  gpgcheck=1  gpgkey=http://opensource.wandisco.com/RPM-GPG-KEY-WANdisco

3.配置Mesos環境變量

vim /etc/profile    export MESOS_NATIVE_JAVA_LIBRARY=/usr/local/lib/libmesos.so  export MESOS_NATIVE_LIBRARY=/usr/local/lib/libmesos.so    source /etc/profile

4.構建Mesos

tar zxvf mesos-0.25.0.tar.gz -C /opt/  mv /opt/mesos-0.25.0/ /root/  cd /root/mesos-0.25.0  mkdir build  cd  build  ../configure    make              //等待時間長(在線狀態)  make check  make install     

二、 配置Mesos-master(三臺配置一樣)

1.規劃master主機名

Mesos-master負責維護slave集群的心跳,從salve提取資源信息,配置之前做好相應的解析工作。

hostnamectl set-hostname master  #修改相應的主機名    vim /etc/hosts      #修改hosts文件  192.168.26.131 master 192.168.26.139 master1  192.168.26.140 master2  192.168.26.141 slave 192.168.26.142 slave1    ln -sf /root/mesos-0.25.0/build/bin/mesos-master.sh /usr/sbin/mesos-master

2.啟動mesos-master

mesos-master --work_dir=/home/q/mesos/data --log_dir=/home/q/mesos/logs --no-hostname_lookup --ip=0.0.0.0 

參數:

–work_dir:運行期數據存放路徑,包含sandbox、slavemeta等信息

–log_dir:Mesos日志存放路徑

–[no-]hostname_lookup: 是否從DNS獲取主機名,本例中關閉了此配置,直接顯示IP。

–ip: Mesos進程綁定的IP。

3.配置完成后打開另一個終端使用瀏覽器訪問本地的5050端口

http://l92.168.26.150:5050

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺

三、配置Mesos-slave(兩臺配置一樣)

1.規劃slave主機名

Mesos-slave負責接收并執行來自Mesos-master傳遞的任務以及監控任務狀態,收集任務使用系統的情況,配置之前做好解析工作。

hostnamectl set-hostname slave    vim /etc/hosts      #修改hosts文件  192.168.26.150 master 192.168.26.139 master1  192.168.26.140 master2  192.168.26.141 slave 192.168.26.142 slave1  ln -sf /root/mesos-0.25.0/build/bin/mesos-slave.sh /usr/sbin/mesos-slave #創建鏈接文件

2.安裝并啟動docker

yum install docker -y    systemctl start docker.service  systemctl enable docker.service

注意docker服務啟動失敗,解決方案請參考博客http://blog.51cto.com/11134648/2162785。

3.啟動Mesos-slave服務

mesos-slave --containerizers="mesos,docker" --work_dir=/home/q/mesos/data --log_dir=/home/q/mesos/logs --master=192.168.26.148:5050 --no-hostname_lookup --ip=0.0.0.0

注意當啟動失敗時,有可能鏈接文件沒有生效,使用如下命令

cd /root/mesos-0.25.0/build/bin/    ./mesos-slave.sh --containerizers="mesos,docker" --work_dir=/home/q/mesos/data --log_dir=/home/q/mesos/logs --master=192.168.26.150:5050 --no-hostname_lookup --ip=0.0.0.0

4.查看slave狀態

使用瀏覽器再次對master的5050端口進行訪問

http://:192.168.26.150:5050

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺

四、安裝Zookeeper

1.分別在所有的master節點上安裝Zookeeper

wget http://mirrors.cnnic.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz    tar zxvf zookeeper-3.4.10.tar.gz -C /home/q/    cd /home/q/zookeeper-3.4.10/    mv conf/zoo_sample.cfg conf/zoo.cfg

2.修改Zookeeper的配置文件

以server.A=B:C:D 格式定義各個節點的相關信息,其中A是一個數字,表示第幾號服務器;B是這個服務器的IP地址;C為與集群中的Leader服務器交換信息的端口;D是在leader掛掉時專門進行Leader選舉時所用的端口。

cd /home/q/zookeeper-3.4.10/conf    vim zoo.cfg      dataDir=/home/q/zookeeper-3.4.10/data   //重新定義Datadir的位置     dataLogDir=/home/q/zookeeper-3.4.10/datalog     server.1=192.168.26.150:2888:3888     server.2=192.168.26.139:2888:3888     server.3=192.168.26.140:2888:3888

3.修改完的配置文件拷貝給其他master主機

scp zoo.cfg 192.168.26.139:/home/q/zookeeper-3.4.10/conf/  scp zoo.cfg 192.168.26.140:/home/q/zookeeper-3.4.10/conf/

4.在dataDir路徑下創建一個myid文件

master主機上(/home/q/zookeeper-3.4.10/)

mkdir data datalog   echo 1 > data/myid  cat data/myid

master1主機上(/home/q/zookeeper-3.4.10/)

mkdir data datalog   echo 2 > data/myid  cat data/myid

master2主機上(/home/q/zookeeper-3.4.10/)

mkdir data datalog   echo 3 > data/myid  cat data/myid

5.分別在各master節點上啟動Zookeeper服務

master主機

./bin/zkServer.sh start conf/zoo.cfg 

master1主機

./bin/zkServer.sh start conf/zoo.cfg 

master2主機

./bin/zkServer.sh start conf/zoo.cfg 

6.查看主機狀態

./bin/zkServer.sh status

7.分別啟動Mesos-master

注意先kill掉之前啟動的Mesos-master進程

master主機

mesos-master --work_dir=/home/q/mesos/data --log_dir=/home/q/mesos/logs --no-hostname_lookup --ip=0.0.0.0 --zk=zk://192.168.26.150:2181/mesos --quorum=2

master1主機

mesos-master --work_dir=/home/q/mesos/data --log_dir=/home/q/mesos/logs --no-hostname_lookup --ip=0.0.0.0 --zk=zk://192.168.26.139:2181/mesos --quorum=2

master2主機

mesos-master --work_dir=/home/q/mesos/data --log_dir=/home/q/mesos/logs --no-hostname_lookup --ip=0.0.0.0 --zk=zk://192.168.26.140:2181/mesos --quorum=2 

8.啟動Mesos-slave

注意先kill掉之前啟動的Mesos-master進程

mesos-slave --containerizers="mesos,docker" --work_dir=/home/q/mesos/data --log_dir=/home/q/mesos/logs --master=zk://192.168.26.150:2181,192.168.26.139:2181,192.168.26.140:2181/mesos --no-hostname_lookup --ip=0.0.0.0

注意當啟動失敗時,,有可能鏈接文件沒有生效,使用如下命令

cd /root/mesos-0.25.0/build/bin/    ./mesos-slave.sh --containerizers="mesos,docker" --work_dir=/home/q/mesos/data --log_dir=/home/q/mesos/logs --master=zk://192.168.26.150:2181,192.168.26.139:2181,192.168.26.140:2181/mesos --no-hostname_lookup --ip=0.0.0.0

9.使用瀏覽器指定任意Mesos-master地址的5050端口驗證

http://192.168.26.140:5050

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺
若指定的是非Leader狀態下的Mesos-master地址,頁面會自行跳轉至處于leader狀態的Mesos-master地址。
如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺

五、在master主機上部署運行Marathon

使用Marathon向Mesos發送任務。

1.安裝并啟動Marathon

wget http://downloads.mesosphere.com/marathon/v0.15.2/marathon-0.15.2.tgz    tar zxvf marathon-0.15.2.tgz -C /home/q/    cd /home/q/marathon-0.15.2    ./bin/start --hostname 192.168.26.150 --master zk://192.168.26.150:2181,192.168.26.139:2181,192.168.26.140:2181/mesos --http_address 0.0.0.0    //將Marathon安裝到多Mesos-master環境的master主機上

2.訪問Marathon(默認使用8080端口)

http://192.168.26.150:8080/

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺

3.使用Marathon創建測試任務

(1)在首頁點擊Create按鈕,創建一個測試任務echo “hello world”
如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺
(2)創建成功以后在applications頁面可以看到該任務
如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺
Marathon會自動注冊到Mesos中,可以在Mesos web的Framework頁面中看到注冊信息。
如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺

可以在Mesos Web首頁看到測試任務在不停的執行中
如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺
(4)在節點slave主機查看任務的相關信息
如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺
(5)刪除測試任務

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺

4.使用Marathon API的形式添加新任務

在節點slave中操作

cd /root  vim demo.json  {  "id":"basic-0",  "cmd":"while [true]; do echo 'hello Marathon'; sleep 5; done",  "cpus":0.1,  "mem":10.0,  "instances":1  }  //查看Marathon網站有新添加任務  curl -X POST -H "Content-type:application/json" http://192.168.26.150:8080/v2/apps -d@demo.json

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺
如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺
如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺

5.使用Mesos與Marathon創建Docker集群

(1)在節點slave創建docker的nginx請求任務

cd /root  vim nginx.json    {  "id":"/nginx",      //應用唯一的ID "container":{      //marathon啟用docker格式 "type":"DOCKER",  "docker":{  "image":"nginx",     //nginx鏡像 "network":"HOST",   //網絡為HOST模式 "parameters":[],  "privileged":false,  "forcePullImage":false //是否強制更新鏡像  }  },  "cpus":0.1,  "mem":32.0,  "instances":1  }    //查看Marathon網站有新添加任務  curl -X POST -H "Content-type:application/json" http://192.168.26.150:8080/v2/apps -d@nginx.json

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺
(2)在Marathon頁面查看

可以在創建的Nginxd任務下看到該任務發送給主機

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺
(3)用命令行方式查看主機下載的docker鏡像

docker images

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺

docker ps -a

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺
(4)訪問slave主機上運行著的Nginx服務

 http://192.168.26.141

如何使用Zookeeper+Mesos+Marathon搭建Docker集群管理平臺

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
欧美日韩va| 婷婷精品视频| 欧美羞羞视频| 久久av中文| 中日韩男男gay无套| 久久不卡国产精品一区二区| 亚洲精品自拍| 亚洲一区二区三区四区电影 | 国产手机视频一区二区| 伊人久久高清| 欧美日本不卡| 日本成人在线不卡视频| 国产一区二区三区精品在线观看| 久久av在线| 中文字幕日韩亚洲| 国产99精品| 蜜桃国内精品久久久久软件9| 日韩精品免费一区二区三区| 日韩大片在线播放| 国产精品亚洲产品| 免费久久精品视频| 国产精品久久久久久久久久10秀| 亚洲伦乱视频| 免费日韩av| 91精品国产自产在线丝袜啪| 中文字幕日韩欧美精品高清在线| 久久久精品久久久久久96| 欧美激情另类| 高清一区二区三区av| 人人香蕉久久| 男人操女人的视频在线观看欧美| 视频一区在线视频| 偷拍亚洲精品| 亚洲深深色噜噜狠狠爱网站| 好吊日精品视频| 五月天久久网站| 婷婷精品进入| 精品国产三区在线| 日韩视频免费| 婷婷亚洲成人| 欧美视频久久| 国产精品原创| 伊人久久国产| 国产麻豆精品| 国产探花一区在线观看| 亚洲狼人精品一区二区三区| 日韩中出av| 国产精品a久久久久| 国产欧美亚洲精品a| 欧美精品二区| 精品丝袜在线| 在线综合亚洲| 日本不卡一区二区| 久久99精品久久久久久园产越南| 老牛影视精品| 亚洲精品1区| 欧美欧美黄在线二区| 欧美国产视频| 中文久久精品| 久久av影院| 久久91视频| 亚洲精品精选| 超碰在线99| 国产精品普通话对白| 国产精品红桃| 国产偷自视频区视频一区二区| 麻豆成人在线观看| 亚洲三级av| 91精品国产自产在线观看永久∴| 国产日本精品| 国产精品色网| 日韩精品麻豆| 久久精品福利| 97精品国产99久久久久久免费| 亚洲激情五月| 蜜桃av.网站在线观看| 欧美啪啪一区| 免费看精品久久片| 中国字幕a在线看韩国电影| 在线精品国产亚洲| 成人羞羞视频在线看网址| 国产欧美日韩综合一区在线播放| 好看的av在线不卡观看| 国产v日韩v欧美v| 国产欧美日韩一区二区三区四区 | 在线看片国产福利你懂的| 亚洲精品激情| 亚洲深夜影院| 色爱av综合网| 精品国产乱码久久久久久1区2匹| 日本va欧美va精品发布| 在线综合亚洲| 国产一在线精品一区在线观看| 国产精品大片免费观看| 亚洲五月综合| 亚洲一区网站| 欧美日韩国产高清电影| 亚洲黄色网址| 精品一区二区三区中文字幕在线| 欧美伊人久久| 亚洲狼人精品一区二区三区| 欧美成人久久| 亚洲h色精品| 蜜桃精品在线| 九九精品调教| 在线一区视频观看| 日韩中文在线播放| 丝袜美腿一区| 欧美三区四区| 成人看片网站| 久久久久一区| 久久精品官网| 久久久成人网| 91精品婷婷色在线观看| 欧美日韩精品免费观看视欧美高清免费大片 | 视频福利一区| a日韩av网址| 日韩欧美视频专区| 亚洲1234区| 久久精品91| 亚洲午夜91| 欧美va天堂在线| 一本一道久久a久久精品蜜桃| 欧美日韩精品一区二区视频| 亚洲五月婷婷| 国产精品嫩草99av在线| 国产精品丝袜xxxxxxx| 狠狠干综合网| 视频在线在亚洲| 国产伦理一区| 日本国产亚洲| 国产精品日韩欧美一区| 黄色日韩精品| 日本午夜精品久久久久| 亚洲伊人影院| 亚洲欧美久久久| 美女久久一区| 一区二区电影| 影院欧美亚洲| 在线免费观看亚洲| 亚洲精品视频一二三区| 日韩成人精品一区二区| 亚洲一区欧美| 91精品一区国产高清在线gif | 亚洲精品系列| 夜鲁夜鲁夜鲁视频在线播放| 精品视频在线一区二区在线| 久久影院一区二区三区| 国产一区二区色噜噜| 国内在线观看一区二区三区| 在线天堂中文资源最新版| 色老板在线视频一区二区| 亚洲欧美日韩高清在线| 免费观看在线色综合| 国产日韩精品视频一区二区三区| 麻豆视频久久| 日韩免费福利视频| 99在线精品免费视频九九视| 四虎在线精品| 久久精品欧洲| 久久精选视频| 亚洲欧洲另类| 日韩一区二区三区四区五区| 国产精品一区高清| 综合日韩av| 中文精品视频| 国产欧美欧美| 日韩在线短视频| 中文字幕成人| 久久国产精品美女| 91精品精品| 亚洲精品无播放器在线播放| 午夜视频精品| 精品国产乱码久久久| 精品久久97| 国产中文字幕一区二区三区| 亚洲精品88| 日韩午夜黄色| 国产精品主播| 亚洲不卡av不卡一区二区| 自拍自偷一区二区三区| 欧美黄页在线免费观看| 亚洲福利专区| 91九色综合| 久久久久久黄| 欧美日本精品| 欧美美女一区| 欧美手机在线| 国产三级一区| 激情丁香综合| 国产欧美另类| 婷婷综合网站| 亚洲精品观看| 日韩欧美一区二区三区免费观看| 亚洲午夜国产成人| 一区二区精彩视频| 999国产精品视频| 精品72久久久久中文字幕| 精品久久国产一区| 婷婷丁香综合|