跟我一起学docker(16)--单节点mesos集群
2018-08-03 00:21:41
李明
  • 访问次数: 382
  • 注册日期: 2018-07-09
  • 最后登录: 2022-11-17

Mesos 简介

什么是MESOS?

Apache Mesos 是一个集群管理器,提供了有效的、跨分布式应用或框架的资源隔离和共享,可以运行 Hadoop、MPI、Hypertable、Spark。

几个基本概念:

Mesos master:负责任务调度的节点。

Mesos slave:负责执行任务的节点。

Mesos 框架:需要由mesos调度的应用程序,比如hadoop、spark、marathon、chronos等。

1240

Mesos实现了两级调度架构,它可以管理多种类型的应用程序。第一级调度是Master的守护进程,管理Mesos集群中所有节点上运行的Slave守护进程。集群由物理服务器或虚拟服务器组成,用于运行应用程序的任务,比如Hadoop和MPI作业。第二级调度由被称作Framework的“组件”组成。Framework包括调度器(Scheduler)和执行器(Executor)进程,其中每个节点上都会运行执行器。Mesos能和不同类型的Framework通信,每种Framework由相应的应用集群管理。上图中只展示了Hadoop和MPI两种类型,其它类型的应用程序也有相应的Framework。

Mesos Master协调全部的Slave,并确定每个节点的可用资源,聚合计算跨节点的所有可用资源的报告,然后向注册到Master的Framework(作为Master的客户端)发出资源邀约。Framework可以根据应用程序的需求,选择接受或拒绝来自master的资源邀约。一旦接受邀约,Master即协调Framework和Slave,调度参与节点上任务,并在容器中执行,以使多种类型的任务,比如Hadoop和Cassandra,可以在同一个节点上同时运行。

单节点mesos集群

安装依赖包

Centos7.1

1.下载rpm包

sudo rpm -Uvh http://repos.mesosphere.com/el/7/noarch/RPMS/mesosphere-el-repo-7-1.noarch.rpm

1240

2.安装

sudo yum -y installmesosphere-zookeeper

1240

sudo yum -y install mesosmarathon

1240

1240

3.配置

设置/var/lib/zookeeper/myid作为唯一标识(1-255)讲的是单节点直接设置成1

1240

配置mesos连接的zk,文件位置:/etc/mesos/zk(例如:zk://1.1.1.1:2181,2.2.2.2:2181,3.3.3.3:2181/mesos)

1240

配置mesos master的法定值(一个节点挂了,立马另一个节点起起来,目前是1台机器,直接填写1;如果是5台机器,一台机器挂了,这里的数字应该填3,也就说3台机器认为一台机器可以当master这台机器太可以当master),文件位置:/etc/mesos-master/quorum

1240

1240

1240

1240

1240

4.启动

启动zookeeper:service zookeeper start

启动mesos-master:service mesos-master start

启动mesos-slave:servie mesos-slavestart


5.验证

1240

1240

访问web页面:http://:5050

执行mesos命令:

MASTER=$(mesos-resolve `cat/etc/mesos/zk`)

1240

mesos-execute --master=$MASTER--name="cluster-test" --command="sleep 5"

1240

1240

个人网站: IT人故事会

往期docker学习:

认识docker

核心概念和安装 

镜像的常用操作

容器的基本操作

仓库

数据卷

网络

Dockerfile

git入门

Jenkins使用

Jenkins+git+docker

docker compose的使用

docker Machine的使用

docker swarm的使用

监控日志和日志管理

1240