Mesos诞生于UC Berkeley的一个研究项目,现已成为Apache Incubator中的项目。Mesos计算框架一个集群管理器,提供了有效的、跨分布式应用或框架的资源隔离和共享,可以运行Hadoop、MPI、Hypertable、Spark。使ZooKeeper实现容错复制,使用Linux Containers来隔离任务,支持多种资源计划分配。
总体架构
Apache Mesos由四个组件组成,分别是Mesos-master,mesos-slave,framework和executor。
mesos中的基本术语解释
1
Mesos-master:是整个系统的核心,负责管理接入mesos的各个framework(由frameworks_manager管理)和slave(由slaves_manager管理),并将slave上的资源按照某种策略分配给framework(由独立插拔模块Allocator管理)。
2
Mesos-slave:负责接收并执行来自mesos-master的命令、管理节点上的mesos-task,并为各个task分配资源。mesos-slave将自己的资源量发送给mesos-master,由mesos-master中的Allocator模块决定将资源分配给哪个framework,当前考虑的资源有CPU和内存两种,也就是说,mesos-slave会将CPU个数和内存量发送给mesos-master,而用户提交作业时,需要指定每个任务需要的CPU个数和内存量,这样,当任务运行时,mesos-slave会将任务放到包含固定资源的linux container中运行,以达到资源隔离的效果。
3
Framework:是指外部的计算框架,如Hadoop,Mesos等,这些计算框架可通过注册的方式接入mesos,以便mesos进行统一管理和资源分配。Mesos要求可接入的框架必须有一个调度器模块,该调度器负责框架内部的任务调度。当一个framework想要接入mesos时,需要修改自己的调度器,以便向mesos注册,并获取mesos分配给自己的资源, 这样再由自己的调度器将这些资源分配给框架中的任务,也就是说,整个mesos系统采用了双层调度框架
4
Executor:执行器,安装到mesos-slave上,用于启动计算框架中的task。
安装部署
1
部署环境介绍
内核版本:
[root@ctn-7-11 ~]# uname -a
Linux ctn-7-11.ptmind.com 3.10.0-327.4.4.el7.x86_64 #1 SMP Tue Jan 5 16:07:00 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
系统版本:
[root@ctn-7-11 ~]# more /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
docker版本:
[root@ctn-7-13 ~]# docker --version
Docker version 1.10.3, build 20f81dd
集群所有主机添加主机名
[root@ctn-7-12 ~]# more /etc/hosts
---略---
172.16.7.12 ctn-7-12.ptmind.com ctn-7-12
172.16.7.13 ctn-7-13.ptmind.com ctn-7-13
172.16.7.14 ctn-7-14.ptmind.com ctn-7-14
为配置方便讲服务器ssh免密码登陆打通
[root@ctn-7-11 workspace]# for ip in $(cat /workspace/mesoslist);do echo ------$ip-----;ssh root@$ip hostname;done
------172.16.7.11-----
ctn-7-11.ptmind.com
------172.16.7.12-----
ctn-7-12.ptmind.com
------172.16.7.13-----
ctn-7-13.ptmind.com
------172.16.7.14-----
ctn-7-14.ptmind.com
1
安装前准备
关闭防火墙
sudo systemctl stop firewalld
sudo systemctl disable firewalld
安装docker
sudo yum update
curl -sSL https://get.docker.com/ | sh
安装常用软件包
yum install git lrzsz wget elinks nc -y
添加yum源 (所有主机,安装其中一个即可)
rpm -Uvh http://repos.mesosphere.io/el/7/noarch/RPMS/mesosphere-el-repo-7-1.noarch.rpm
rpm -Uvh http://repos.mesosphere.io/el/7/noarch/RPMS/mesosphere-el-repo-7-2.noarch.rpm
rpm -Uvh http://repos.mesosphere.io/el/7/noarch/RPMS/mesosphere-el-repo-7-3.noarch.rpm
3
集群服务部署规划
服务器IP地址主机名安装服务
172.16.7.12ctn-7-12.ptmind.com mesos-master 、zookeeper、mesos-slave 、chronos
172.16.7.13ctn-7-13.ptmind.com mesos-master 、zookeeper、mesos-slave 、
172.16.7.14ctn-7-14.ptmind.com mesos-master 、zookeeper、mesos-slave、marathon
更多内容正在更新中,银盾泰安将持续为您发布最新最有用的资讯,敬请期待!
分享到:
相关推荐
本篇文档将详细介绍如何在 CentOS 环境下搭建 Mesos 集群,包括 Docker 的安装、Zookeeper、Mesos、Marathon、HAProxy 和 Bamboo 的配置。 ### 一、环境准备 首先,确保你的 CentOS 系统是 6.6 版本,且拥有足够的...
一个写了一篇关于的帖子。 这个 repo 把那篇博文变成了一个基于 Vagrant 的工作示例。 这是两者: 使用 Chronos 和 Marathon 建立本地 Mesos 集群的好方法 如果您正在使用 Puppet 构建生产集群,这是一个起点 依赖...
Marathon之服务发现篇介绍了如何通过Mesos-DNS实现服务发现,包括Mesos-DNS的介绍、安装与配置以及运行。 在Marathon之负载均衡篇中,文档详细描述了如何通过Marathon-Bridge、HAProxy、Bamboo等工具来实现负载均衡...
本篇文章将深入探讨“avmesos_airflow_provider”这一特定的Python库,该库是针对Apache Airflow的扩展,版本号为0.1.4,适用于Python 3环境。了解并熟练使用这个库,将有助于提升你在分布式任务调度和管理领域的...
在本文中,我们将深入探讨Spark的基础知识,包括其特性、核心组件、安装过程以及它如何与Hadoop生态系统兼容。 首先,Spark的速度是其最显著的特点。与传统的Hadoop MapReduce相比,Spark通过利用内存计算,能够...
本篇将详细介绍Spark在集群模式下的安装步骤,帮助你构建稳定、高效的Spark集群。 一、集群环境准备 1. **硬件需求**:首先,你需要准备至少两台服务器或虚拟机作为节点,每台机器应具有足够的内存和CPU资源,以...
### 应用性能分析系统SkyWalking的安装及使用详解 #### 一、SkyWalking概述 SkyWalking是一款由华为开发者...通过本篇文章的详细介绍,相信读者已经对SkyWalking有了较为全面的认识,并掌握了基本的安装和使用方法。
方法一:下载 pip,安装 pip,然后安装 requests。 方法二:先安装 yarn,然后安装 pip,最后安装 requests。 五、查看服务启动状态 可以通过 ...
Spark是Hadoop生态系统中的重要成员,它是一个内存计算框架,支持快速的迭代计算和交互式数据处理,可以运行在standalone模式、EC2、Hadoop YARN或Apache Mesos上。Spark能够访问多种数据源,如HDFS、Cassandra、...
Elastic-Job Lite是轻量级无中心化架构,适用于单机、集群等环境,而Elastic-Job-Cloud则是在Mesos上运行的分布式调度解决方案。本篇将主要聚焦于Elastic-Job Lite Console 2.1.4,探讨其在分布式任务管理中的重要...
这篇PDF文档,"Linux课程(兼顾 大数据 JavaEE Python)",显然旨在为学习者提供一个全面的指南,涵盖这些关键领域的交叉应用。让我们深入探讨一下其中可能包含的知识点。 首先,Linux是开源操作系统的基础,它在...
- **集成**:Spark是另一个大数据处理框架,它与Hadoop紧密集成,可以运行在Hadoop的YARN或Mesos集群管理器上。 - **依赖**:Spark需要Hadoop的客户端库来与HDFS通信。因此,在编译或部署Spark时,需要确保与...
本篇文章将深入探讨Elastic-Job的核心概念、特性以及如何通过"elastic-demo.zip"进行实战演练。 1. **Elastic-Job介绍** Elastic-Job分为两个核心模块:Elastic-Job-Lite和Elastic-Job-Cloud。Elastic-Job-Lite...
在本篇中,我们将详细探讨Filebeat 8.5.3版本的关键特性、安装过程以及如何利用它来实时洞察日志数据。 1. **Filebeat简介** Filebeat的主要功能是监控和转发日志文件,它可以读取日志文件的内容,一旦发现新的...
本篇文章将围绕"EDX-CS100.1x-Introduction-to-Big-Data-with-Apache-Spark"这门课程,详细探讨如何通过Apache Spark进行大数据处理,以及在学习过程中可能遇到的设置问题。 Apache Spark的核心理念在于内存计算,...
1. PySpark安装:通过pip install pyspark命令安装PySpark,并设置环境变量,确保Hadoop和Spark配置正确。 2. 创建SparkContext:使用SparkContext(sc)作为与Spark集群的入口点,初始化Spark应用程序。 三、...