Spark之集群概述

摘 要

本文简要地概述一下Spark是如何在集群上运行,让它更容易理解。

Spark 组件说明

Spark的应用程序作为一个独立的进程在Spark集群上运行,并由SparkContext对象(驱动程序)来运行你的主应用程序。

总体来说,应用程序在集群上运行,SparkContext可以连接一下几种的管理组件:Spark自身具有的管理器,Mesos或者Yarn,来实现将资源分配给应用程序。一旦运行起来,Spark就可以获得需要执行的集群节点,并为应用程序提供计算和数据存储。接下来Spark将应用程序发送给执行的节点。最后,SparkContext将任务发送给执行器来运行。

如图,这个架构有几个重要的地方需要注意:

1、在每一个应用程序的运行生命周期内,都属于一个独立的进程。这样有利于调度器(驱动程序调度自己的任务)和管理控制器(不同应用程序的调度任务)将应用程序隔离。但这意味着SparkContext实例不能共享,也就是说在运行过程中在不写入外部存储的前提下,其他应用程序不能访问该数据。

2、Spark不能直接知道底层的集群管理器,只要能获得执行器的进程,并且这些进程可以彼此相互通信,即使换成其他的管理器(例如Mesos或者Yarn),也是能轻易地运行。

3、应用程序在运行过程中必须监听从执行器中传入的连接。因此,应用程序必须发布在可寻址的工作节点中。

4、因为程序在集群环境上调度任务,所以应该在邻近的工作节点中运行,最好是局域网内。如果你想远程发送请求到集群,最好通过RPC的方式来打开一个驱动程序,并在邻近的节点中提交操作。

集群管理器的类型

Spark目前仅支持一下三个管理器

Standalone:它是一个Spark内部的简单的集群管理器,可以很简单的搭建出一个集群。

Apache Mesos:它是一个通用的集群管理,可以运行在Hadoop Mapreduce和服务应用程序。

Hadoop YARN:它是Hadoop2.x中的资源管理器。

应用程序提交

应用程序提交可以通过spark-submit脚本提交到任何类型的集群中。

监控

每一个发布的应用程序都有一个监控web页面,通常端口是4040。显示有关正在执行的任务,应用程序及硬盘状况等信息。只需要在浏览器中键入http://drive-node:4040即可访问。

任务调度

Spark给予跨应用程序(在集群管理器级别)和应用程序(如果多个计算在同一SparkContext上进行)上的资源分配的控制。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏idba

有赞MySQL自动化运维系统--ZanDB

有赞作为"新零售"的软件服务供应商,随着业务的不断发展,从第一批几十家商户到现在300万商家,涉及零售,美业,餐饮,自媒体等众多商家,业务规模以及访问量爆发式...

1292
来自专栏Django Scrapy

Elasticsearch1.0 介绍

优势 开源,稳定,快速,可扩展 由 Java开发 基于 restful web接口与服务器交互的分布式搜索引擎 搜索引擎除了elasticsearch还有 s...

2665
来自专栏java一日一条

大话程序猿眼里的高并发(上)

高并发是指在同一个时间点,有很多用户同时的访问URL地址,比如:淘宝的双11,双12,就会产生高并发,如贴吧的爆吧,就是恶意的高并发请求,也就是DDOS攻击,再...

783
来自专栏企鹅号快讯

JAVA开发的几个注意点

在Java工程师平常的开发过程中,由于业务的不同,可能关注的点有很多不一样的地方,但是在基础层面还是有一些共性的。今天天软小编为大家带来一片文章,此文概括了在J...

17910
来自专栏Java架构

阿里P9架构师谈:高并发网站的监控系统选型、比较、核心监控指标

在高并发分布式环境下,对于访问量大的业务、接口等,需要及时的监控网站的健康程度,防止网站出现访问缓慢,甚至在特殊情况出现应用服务器雪崩等场景,在高并发场景下网站...

1004
来自专栏PHP技术

大话-高并发

简单理解下高并发: 高并发是指在同一个时间点,有很多用户同时的访问URL地址,比如:淘宝的双11,双12,就会产生高并发,如贴吧的爆吧,就是恶意的高并发请求, ...

2814
来自专栏技术专栏

ElasticSearch 优化配置

711
来自专栏java达人

微服务架构实践

作者:赵计刚 来源:http://www.cnblogs.com/java-zhao/p/5538232.html(点击文末阅读原文前往) 一、微服务架构图: ...

1956
来自专栏IT技术精选文摘

大型网站架构总结

一、大型网站的特点 用户多,分布广泛 大流量,高并发 海量数据,服务高可用 安全环境恶劣,易受网络攻击 功能多,变更快,频繁发布 从小到大,渐进发展 以用户为中...

2116
来自专栏IT大咖说

支撑百度搜索引擎99.995%可靠名字服务架构设计

摘要 百度搜索引擎是全球最大的中文搜索引擎,致力于向人们提供"简单,可依赖"的信息获取方式。百度网页搜索部架构师郑然为我们分享支撑百度搜索引擎的可靠名字服务架构...

2775

扫码关注云+社区