Marathon主要功能介绍(一)

【摘要】Marathon是一个成熟的,轻量级的,扩展性很强的Apache Mesos的容器编排框架,它主要用来调度和运行常驻服务(long-running service),提供了友好的界面和Rest API来创建和管理应用。Mesosphere在最近刚刚发布的开源的DC/OS中把Marathon作为其默认的内置应用,可见它的重要性。为了能让大家快速的了解Marathon的主要的核心功能,作者将根据自己在Mesos和Marathon社区的的开发和实践经验,将提供一系列文章来介绍Marathon的主要的核心功能。本文是第一篇。

Marathon的安装部署

在介绍Marathon的核心功能之前,为了读者可以快速的体验Marathon的主要的功能,本章节将带领大家在Docker中快速的搭建一个Marathon的集群。

安装环境,作者准备了三台Ubuntu 14.04的虚拟机:

wangyongqiao1.eng.platformlab.ibm.com / 9.111.255.10 - Master
wangyongqiao2.eng.platformlab.ibm.com / 9.111.254.41 - Agent
wangyongqiao3.eng.platformlab.ibm.com / 9.111.255.50 - Agent

Step 1 安装Docker

由于下文我们将介绍如何在Marathon中运行Docker容器,因此必须先在计算节点上安装Docker,因为我们要把Marathon,ZK,Mesos服务运行在Docker中,所以我们也必须在Master节点上安装docker,因此需要在以上三个机器上执行如下命令,来安装docker:

 apt-get update 
 apt-get install wget
 wget -qO- https://get.docker.com/ | sh
 service docker start
 docker info
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 10
Server Version: 1.11.1
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
  Dirs: 83
 Dirperm1 Supported: false
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: null host bridge
Kernel Version: 3.13.0-32-generic
Operating System: Ubuntu 14.04.1 LTS
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 3.852 GiB
Name: wangyongqiao1.eng.platformlab.ibm.com
ID: RJNG:KRN6:OUXI:Z6ND:MRN6:VC4A:3JRQ:F5XZ:4YIX:GEDZ:K5IF:PVHM
Docker Root Dir: /var/lib/docker
Debug mode (client): false
Debug mode (server): false
Http Proxy: http://9.21.61.175:3128/
Registry: https://index.docker.io/v1/
WARNING: No swap limit support

Step 2 安装Zookeeper集群
因为Marathon会将运行时的一些状态state存储在Zookeeper中,同时在Marathon高可用模式下,Marathon Leader的选举也依赖于Zookeeper,所以首先我们必须先运行一个Zookeeper集群来为多个Marathon服务之间共享状态和Leader的选举。执行以下命令,在以上三个机器上安装ZK集群:

登陆wangyongqiao1.eng.platformlab.ibm.com执行以下命令:
# docker run -d \
  -e MYID=1 \
  -e SERVERS=9.111.255.10,9.111.254.41,9.111.255.50 \
  --name=zookeeper \
  --net=host \
  --restart=always \
  mesoscloud/zookeeper
# docker ps
CONTAINER ID        IMAGE                  COMMAND                  CREATED             STATUS              PORTS               NAMES
07bf2d5b3796        mesoscloud/zookeeper   "/entrypoint.sh zkSer"   2 seconds ago       Up 2 seconds                            zookeeper

登陆wangyongqiao2.eng.platformlab.ibm.com执行以下命令:
# docker run -d \
  -e MYID=2 \
  -e SERVERS=9.111.255.10,9.111.254.41,9.111.255.50 \
  --name=zookeeper \
  --net=host \
  --restart=always \
  mesoscloud/zookeeper
# docker ps
CONTAINER ID        IMAGE                  COMMAND                  CREATED             STATUS              PORTS               NAMES
03bf7c58ad53        mesoscloud/zookeeper   "/usr/local/bin/dumb-"   2 seconds ago       Up 1 seconds                            zookeeper

登陆wangyongqiao3.eng.platformlab.ibm.com执行以下命令:
# docker run -d \
  -e MYID=3 \
  -e SERVERS=9.111.255.10,9.111.254.41,9.111.255.50 \
  --name=zookeeper \
  --net=host \
  --restart=always \
  mesoscloud/zookeeper
# docker ps
CONTAINER ID        IMAGE                  COMMAND                  CREATED             STATUS              PORTS               NAMES
ac459eb2adaa        mesoscloud/zookeeper   "/usr/local/bin/dumb-"   2 seconds ago       Up 1 seconds                            zookeeper

Step 3 安装Mesos集群

因为Marathon是构建于Apache Mesos之上的一个框架,因此我们必须首先搭建Mesos集群。执行以下命令,在以上三个机器上安装Apache Mesos集群:

登陆wangyongqiao1.eng.platformlab.ibm.com执行以下命令运行Mesos master:

  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值