国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

docker必備—marathon基礎教程

開發(fā) 開發(fā)工具
目前越來越多的互聯(lián)網(wǎng)企業(yè)開始使用docker,但是隨著docker部署的增多,也發(fā)現(xiàn)了一些單純使用docker的弊端。例如命令行操作比較繁瑣,需要記的參數(shù)較多,在此介紹一個好用的解決這些弊端的工具——Marathon。

一、前言

目前越來越多的互聯(lián)網(wǎng)企業(yè)開始使用 docker,在這之前,虛擬機占據(jù)著大部分的企業(yè)市場,但是隨著 docker 部署的增多,也發(fā)現(xiàn)了一些單純使用 docker 的弊端。例如命令行操作比較繁瑣,需要記的參數(shù)較多,在此介紹一個好用的解決這些弊端的工具—— Marathon。

二、基本概念

Mesos:Mesos 采用與 Linux Kernel 相同的機制,只是運行在不同的抽象層次上。Mesos Kernel 利用資源管理和調(diào)度的 API 在整個數(shù)據(jù)中心或云環(huán)境中運行和提供引用(例如, Hadoop、 Spark、Kafaka、Elastic Search)。

ZooKeeper:ZooKeeper 是一個分布式的,開放源碼的分布式應用程序協(xié)調(diào)服務,是 Google的Chubby 一個開源的實現(xiàn),是 Hadoop 和 HBase 的重要組件。它是一個為分布式應用提供一致性服務的軟件,提供的功能包括:配置維護、名字服務、分布式同步、組服務等。

Marathon:Marathon 是一個 Mesos 框架,能夠支持運行長服務,比如 Web 應用等。它是集群的分布式 Init.d,能夠原樣運行任何 Linux 二進制發(fā)布版本,如 Tomcat、Play 等等。它也是一種私有的 PaSS,實現(xiàn)服務的發(fā)現(xiàn),為部署提供提供 REST API 服務,有授權(quán)和 SSL、配置約束,通過 HAProxy 實現(xiàn)服務發(fā)現(xiàn)和負載平衡。

docker必備—marathon基礎教程

三、部署

為了部署的方便 全部使用 docker 部署。

1. master搭建

  • 三臺 mesos master 服務器
  • ip地址分別是 10.100.0.21,10.100.0.22,10.100.0.23
  • 需要在master上分別部署 mesos mater , zookeeper , marathon

(1) 需要在10.100.0.21 上執(zhí)行下列命令 :

marathon

  1. docker run -d -e MARATHON_HOSTNAME=10.100.0.21 -e MARATHON_HTTPS_ADDRESS=10.100.0.21 -e MARATHON_HTTP_ADDRESS=10.100.0.21 -e MARATHON_MASTER=zk://10.100.0.22:2181,10.100.0.23:2181,10.100.0.21:2 
  2. 181/mesos -e MARATHON_ZK=zk://10.100.0.22:2181,10.100.0.23:2181,10.100.0.21:2181/marathon --name marathon --net host --restart=always mesoscloud/marathon 

mesos-master

  1. HOST_IP=10.100.0.21 
  2.  docker run -d --name mesos-master1 --net="host" -p 5050:5050    -e "MESOS_HOSTNAME=${HOST_IP}"   -e "MESOS_IP=${HOST_IP}"   -e "MESOS_ZK=zk://${HOST_IP}:2181/mesos"   -e "MESOS_PORT=5050"   -e 
  3. "MESOS_LOG_DIR=/var/log/mesos"   -e "MESOS_QUORUM=1"   -e "MESOS_REGISTRY=in_memory"   -e "MESOS_WORK_DIR=/var/lib/mesos"   mesoscloud/mesos-master 

zookeeper

 

  1. docker run -d -e MYID=1 -e SERVERS=10.100.0.21,10.100.0.22,10.100.0.23 --name zookeeper --restart=always --net=host  mesoscloud/zookeeper 

(2) 需要在10.100.0.22 上執(zhí)行下列命令

marathon

  1. docker run -d -e MARATHON_HOSTNAME=10.100.0.22 -e MARATHON_HTTPS_ADDRESS=10.100.0.22 -e MARATHON_HTTP_ADDRESS=10.100.0.22 -e MARATHON_MASTER=zk://10.100.0.22:2181,10.100.0.23:2181,10.100.0.21:2 
  2. 181/mesos -e MARATHON_ZK=zk://10.100.0.22:2181,10.100.0.23:2181,10.100.0.21:2181/marathon --name marathon --net host --restart=always mesoscloud/marathon 

mesos-master

  1.  HOST_IP=10.100.0.22 
  2.  docker run -d --name mesos-master1 --net="host" -p 5050:5050    -e "MESOS_HOSTNAME=${HOST_IP}"   -e "MESOS_IP=${HOST_IP}"   -e "MESOS_ZK=zk://${HOST_IP}:2181/mesos"   -e "MESOS_PORT=5050"   -e 
  3. "MESOS_LOG_DIR=/var/log/mesos"   -e "MESOS_QUORUM=1"   -e "MESOS_REGISTRY=in_memory"   -e "MESOS_WORK_DIR=/var/lib/mesos"   mesoscloud/mesos-master 

zookeeper

  1. docker run -d -e MYID=2 -e SERVERS=10.100.0.21,10.100.0.22,10.100.0.23 --name zookeeper --restart=always --net=host  mesoscloud/zookeeper 

(3) 需要在10.100.0.23 上執(zhí)行下列命令

marathon

  1. docker run -d -e MARATHON_HOSTNAME=10.100.0.23 -e MARATHON_HTTPS_ADDRESS=10.100.0.23 -e MARATHON_HTTP_ADDRESS=10.100.0.23 -e MARATHON_MASTER=zk://10.100.0.22:2181,10.100.0.23:2181,10.100.0.21:2 
  2. 181/mesos -e MARATHON_ZK=zk://10.100.0.22:2181,10.100.0.23:2181,10.100.0.21:2181/marathon --name marathon --net host --restart=always mesoscloud/marathon 

mesos-master

  1. HOST_IP=10.100.0.23 
  2.  docker run -d --name mesos-master1 --net="host" -p 5050:5050    -e "MESOS_HOSTNAME=${HOST_IP}"   -e "MESOS_IP=${HOST_IP}"   -e "MESOS_ZK=zk://${HOST_IP}:2181/mesos"   -e "MESOS_PORT=5050"   -e 
  3. "MESOS_LOG_DIR=/var/log/mesos"   -e "MESOS_QUORUM=1"   -e "MESOS_REGISTRY=in_memory"   -e "MESOS_WORK_DIR=/var/lib/mesos"   mesoscloud/mesos-master 

zookeeper

  1. docker run -d -e MYID=3 -e SERVERS=10.100.0.21,10.100.0.22,10.100.0.23 --name zookeeper --restart=always --net=host  mesoscloud/zookeeper 

這樣 mesos 的 master 就搭建完成。

2. slave服務器搭建

下面是 mesos 的 slave 服務器 模擬4臺,ip 地址是10.100.0.24 10.100.0.25 10.100.0.26 10.100.0.28。

(1) 在10.100.0.24上運行下面的命令

  1. docker run -d     --net=host     --pid=host     --privileged=true     --name=ms1     -v /usr/bin/docker:/usr/bin/docker     -v /dev:/dev     -v /var/run/docker.sock:/var/run/docker.sock     -v 
  2. /var/log/mesos:/var/log/mesos     -v /tmp/mesos:/tmp/mesos     -e MESOS_HOSTNAME=10.100.0.24     -e MESOS_IP=10.100.0.24     -e MESOS_MASTER=zk://10.100.0.21:2181,10.100.0.22:2181,10.100.0.23:2181/mes 
  3. os     -e MESOS_CONTAINERIZERS=docker,mesos     mesoscloud/mesos-slave 

(2) 在10.100.0.25上運行下面的命令

  1. docker run -d     --net=host     --pid=host     --privileged=true     --name=ms1     -v /usr/bin/docker:/usr/bin/docker     -v /dev:/dev     -v /var/run/docker.sock:/var/run/docker.sock     -v 
  2. /var/log/mesos:/var/log/mesos     -v /tmp/mesos:/tmp/mesos     -e MESOS_HOSTNAME=10.100.0.25     -e MESOS_IP=10.100.0.25     -e MESOS_MASTER=zk://10.100.0.21:2181,10.100.0.22:2181,10.100.0.23:2181/mes 
  3. os     -e MESOS_CONTAINERIZERS=docker,mesos     mesoscloud/mesos-slave 

(3) 在10.100.0.26上運行下面的命令

  1. docker run -d     --net=host     --pid=host     --privileged=true     --name=ms1     -v /usr/bin/docker:/usr/bin/docker     -v /dev:/dev     -v /var/run/docker.sock:/var/run/docker.sock     -v 
  2. /var/log/mesos:/var/log/mesos     -v /tmp/mesos:/tmp/mesos     -e MESOS_HOSTNAME=10.100.0.26     -e MESOS_IP=10.100.0.26     -e MESOS_MASTER=zk://10.100.0.21:2181,10.100.0.22:2181,10.100.0.23:2181/mes 
  3. os     -e MESOS_CONTAINERIZERS=docker,mesos     mesoscloud/mesos-slave 

(4) 在10.100.0.28上運行下面的命令

  1. docker run -d     --net=host     --pid=host     --privileged=true     --name=ms1     -v /usr/bin/docker:/usr/bin/docker     -v /dev:/dev     -v /var/run/docker.sock:/var/run/docker.sock     -v 
  2. /var/log/mesos:/var/log/mesos     -v /tmp/mesos:/tmp/mesos     -e MESOS_HOSTNAME=10.100.0.28     -e MESOS_IP=10.100.0.28     -e MESOS_MASTER=zk://10.100.0.21:2181,10.100.0.22:2181,10.100.0.23:2181/mes 
  3. os     -e MESOS_CONTAINERIZERS=docker,mesos     mesoscloud/mesos-slave 

以上,搭建完成

四、查看

可以通過 http://${HOST_IP}:5050 查看 mesos 的服務器的狀態(tài):

mesos 的服務器的狀態(tài)

使用 http://{HOST}:8080/ 來訪問 marathon:

使用 http://{HOST}:8080/ 來訪問 marathon

需要在 Docker Container 中輸入對應的 images:

需要在 Docker Container 中輸入對應的 images

還需要配置一下端口:

docker 很快就能啟動好。目前就啟動了一個實例:

如果現(xiàn)在需要多個,可以選擇 scale Application 數(shù)值調(diào)整到5:

可以瞬間運行多個容器:

五、關(guān)于擴容

scale Application 數(shù)值調(diào)整雖然能快速擴容,但是運行服務器的端口都是隨機的,如果需要手工添加就會比較麻煩,好在我們有一個新的工具來幫助我們,一個定制化的 haproxy—— marathon-lb。

我們還是使用容器的方式來部署:

  1. docker run -d --privileged -e PORTS=9090 --net=host mesosphere/marathon-lb sse -m http://10.100.0.21:8080 -m http://10.100.0.22:8080 -m http://10.100.0.23:8080  --group external 

這樣我們就能通過 9090 端口訪問:

http://${HOST_IP}:9090/haproxy?stats

需要在配置 Environment Variables 變量的時候,添加2個變量:

  • HAPROXY_0_PORT=80
  • HAPROXY_GROUP=external

不管 scale 多少個容器, 都會通過 haproxy 的80端口代理 ,水平擴容非常的方便。

【本文是51CTO專欄機構(gòu)“豈安科技”的原創(chuàng)文章,轉(zhuǎn)載請通過微信公眾號(bigsec)聯(lián)系原作者】

戳這里,看該作者更多好文

責任編輯:趙寧寧 來源: 51CTO專欄
相關(guān)推薦

2010-06-11 13:53:54

UML建模

2017-07-18 10:14:23

OracleMerge into教程

2011-07-18 09:35:29

iPhone 框架

2009-07-22 13:32:43

iBATIS DAO

2016-08-31 14:01:31

MySQL存儲數(shù)據(jù)庫

2011-09-13 16:39:50

Android UI設

2011-07-15 14:19:10

故障恢復控制臺

2009-09-17 10:45:03

CCNA基礎教程CCNA

2020-04-09 14:02:33

NginxHttps前端

2010-07-23 12:23:49

Perl基礎

2011-04-01 12:39:18

Android

2017-03-20 14:51:33

2010-08-09 09:20:51

Flex程序設計

2015-03-25 12:09:18

TCP網(wǎng)絡協(xié)議TCP建立連接

2011-08-30 17:37:32

打印機共享怎么設置共享打印機局域網(wǎng)

2013-06-18 08:49:15

2009-07-24 09:20:15

數(shù)組實例

2021-03-04 10:11:50

MongoDBSpring BootSpring Boot

2011-04-15 09:20:56

ASP.NET MVC

2009-08-01 20:59:08

ASP.NET服務器控ASP.NET服務器ASP.NET
點贊
收藏

51CTO技術(shù)棧公眾號

欧美人xxxx| 久久人人99| 免费在线超碰| av磁力番号网| 欧美影院在线播放| 亚洲欧美www| 日本韩国精品一区二区在线观看| 91免费看`日韩一区二区| 三级欧美在线一区| 精品久久影院| 亚洲一区二区三区中文字幕在线观看 | 免费拍拍拍网站| 在线看日韩精品电影| 一区二区三区久久久| 久久综合色之久久综合| 久久aⅴ国产欧美74aaa| 欧美日韩p片| 99国产精品免费视频观看| 国产一区福利| 日韩欧美中文字幕在线视频| 亚洲性色av| 欧美aa免费在线| 182在线视频观看| 久久香蕉av| 国产探花视频在线观看| 日本中文在线观看| av网站在线免费看推荐| 婷婷成人激情| 成人福利片网站| 大黄网站在线观看| 蜜桃视频动漫在线播放| 成全电影大全在线观看| 91超碰在线播放| av岛国在线| 肉色欧美久久久久久久免费看| 92久久精品| 92国产精品| 日本精品在线播放| 精品国产午夜| 一区二区三区国产在线| 免费成人三级| 成人av地址| 日韩黄色免费电影| 亚洲狠狠丁香婷婷综合久久久| 亚洲国产精品热久久| 91精品在线观| 成人免费淫片在线费观看| 天堂√中文最新版在线| 欧美视频久久| 99久久精品免费| 欧美xxxxx牲另类人与| 久久理论片午夜琪琪电影网| 欧美精品一区二区三区在线看午夜| 国产l精品国产亚洲区久久| 一区二区三区伦理| 日韩欧美精品一区| 免费成人在线观看| 免费在线成人网| 亚洲.国产.中文慕字在线| 欧美成人精品一区二区| 免费在线观看91| 中文字幕电影在线| 深夜激情久久| 成人午夜免费视频| 欧美大胆人体bbbb| 成人18视频| 日韩在线无毛| av在线首页| 日韩高清一区| 精品一区二区在线播放| 欧美午夜无遮挡| 国产狼人综合免费视频| 在线的色视频| 影音先锋久久资源网| 精品少妇一区二区三区在线视频| 亚洲最新在线视频| 国产一区欧美二区三区| 国产亚洲天堂网| 久草免费在线视频| 一区免费在线| 亚洲人精品午夜| 欧美日韩成人网| 尤物国产精品| av网址在线播放| 亚洲色图网站| 亚洲国产精品成人综合色在线婷婷| 欧美精品一区二区三区在线 | 日韩亚洲欧美成人| 亚洲激情一区二区| 91精彩视频在线观看| 欧美一二区在线观看| 欧美韩国日本一区| 日韩在线观看免费全| 男女爱爱视频网站| 99re6在线精品视频免费播放| 午夜激情久久| 一本久道中文字幕精品亚洲嫩| 欧美专区在线观看| 亚洲an天堂an在线观看| 激情亚洲另类图片区小说区| 久久久九九九九| 欧美日韩成人在线视频| 久久久久久三级| 日韩一区二区三区精品| 国产日产亚洲精品系列| 国内偷自视频区视频综合| 自拍偷拍21p| 日韩电影二区| 欧美性生活大片视频| 免费看欧美一级片| 国产激情在线观看| 美女视频网站久久| 亚洲国产女人aaa毛片在线| 中国人体摄影一区二区三区| 操喷在线视频| 91麻豆福利精品推荐| 久久久久久久国产精品视频| 成人动漫h在线观看| 手机亚洲手机国产手机日韩| 色哦色哦哦色天天综合| 午夜精品一区二区三区在线观看 | 国产91精品在线观看| 另类天堂视频在线观看| 黄色av资源| 国产一区二区你懂的| 久久国产精品首页| 免费高清在线| 日本系列欧美系列| 一区二区三区亚洲| 一级黄色在线| 国产不卡一区视频| 日韩美女中文字幕| 欧美人与牲禽动交com| 91在线porny国产在线看| 国产成人综合一区二区三区| 手机av免费在线| 一区二区三区日韩欧美精品| 欧美日韩在线不卡一区| 欧美极品影院| 亚洲综合色成人| 亚洲国产精品女人| 成人中文在线| 中文字幕一区日韩电影| 蜜桃视频在线免费| 成人高清免费观看| 国产精品有限公司| japanese色系久久精品| 日本精品视频一区二区| 成人在线激情网| 青青草91视频| 国产精品久久久久久婷婷天堂| 成人欧美大片| 欧美系列亚洲系列| 亚洲一级免费在线观看| 国产主播一区二区| 国产一区二区三区黄| 亚洲午夜久久| 中文字幕亚洲情99在线| 白白色在线观看| 91麻豆精品国产91久久久更新时间 | 国产精选在线| 日韩欧美国产骚| 女同互忝互慰dv毛片观看 | 国产成人精品免费视频网站| 97netav| 成人免费a**址| 欧美激情一区二区三区在线视频观看 | 91高清视频在线观看| 污片在线观看一区二区| gay视频丨vk| 久久久国产综合精品女国产盗摄| 自拍偷拍一区二区三区| 在线高清一区| 国产自产精品| 亚洲国产电影| 精品久久久久久中文字幕动漫 | 国产成人精品亚洲线观看| 色综久久综合桃花网| 亚洲天堂av影院| 日韩av中文字幕在线免费观看| 在线电影福利片| 日韩欧美亚洲一区二区| 最新真实国产在线视频| 9191久久久久久久久久久| 麻豆视频在线| 精品视频在线播放免| 欧美电影免费观看| 日韩最新在线视频| 视频二区欧美毛片免费观看| 久久久久国产精品免费网站| 一个色免费成人影院| 国产精品色婷婷视频| 欧美激情自拍| 亚洲午夜精品久久久久久浪潮| 日日摸夜夜添夜夜添国产精品| 亚洲狠狠婷婷综合久久久| 91亚洲国产成人精品一区二区三 | 一二三区高清| 天天综合日日夜夜精品| 五月婷婷在线观看|