Spark1.0.0 的监控方式

Spark1.0.0可以通过以下几种方式来对Spark应用程序进行监控:

  • Spark应用程序的WebUI或者Spark Standalone的集群监控
  • 指标,然后通过支持指标收集的集群监控系统,如ganglia进行监控
  • 辅助监控工具

1:WebUI

Spark应用程序提交后,driver和Executor之间不断的交换运行信息,可以通过driver的4040端口(默认端口)获取有用的Spark应用程序的运行信息,如:

  • Stage和Task
  • RDD大小和内存使用情况
  • 环境变量信息
  • executor的运行信息
  • ...

如果多个Spark应用程序在同一个client上以client方式提交,那么driver的WebUI端口将绑定从4040开始的连续端口,如4040、4041、4042...。

需要注意的是,用过WebUI只能查看Spark应用程序在运行期间的信息,一旦Spark应用程序运行完,这些信息将无法查看,因为WebUI端口随Spark应用程序的完成而关闭。如果想要事后查看Spark应用程序的运行信息,那么需要配置history Server来持久化Spark应用程序运行信息。关于history Server参见Spark1.0.0 history server配置(正在撰写,迟点给上链接) 。

2:指标

Spark采用了基于Coda Hale Metrics Library 的可配置的指标体系,通过各种指标收集器,如JMX、CSV、GraphiteSink、Ganglia等可以进行汇总报告。该指标体系的配置文件位于conf/metrics.properties(通过复制conf/metrics.properties.template生成或自建),如果要采用自定义的配置文件,还需要在属性配置上配置一下spark.metrics.conf。

Spark的指标体系针对Spark不同的组件分解成相应的实例,每个实例涵盖一套指标。Spark现在支持的实例有:

  • master
  • worker
  • applications
  • driver
  • executor

Spark的指标体系支持多种收集器,每个实例可以采用多个收集器,也可以不采用。Spark支持的收集器定义在org.apache.spark.metrics.sink,现在支持的收集器有:

  • ConsoleSink
  • CSVSink.
  • JmxSink
  • MetricsServlet
  • GraphiteSink
  • GangliaSink 因为版权问题,部署包默认不含有该收集器;如果需要,要重新编译嵌入LGPL授权代码的源码。具体使用参见用ganglia监控Spark1.0.0(正在撰写,迟点给上链接)。

3:辅助监控工具

可以通过一些辅助监控工具对Spark应用程序运行前后和运行过程中系统性能变化来监控Spark应用程序。这些辅助工具有:

  • 集群监控系统,如ganglia、negios、zabbix等,这些工具可以监控整个集群的磁盘、网络、内存利用率和性能瓶颈;
  • 操作系统性能分析工具,如dstat、iostat、iotop,这些工具可以对单台机器的性能进行细致地分析;
  • JVM性能分析工具,如 jstack、jmap、jstat 、jconsole,这些工具可以对JVM进行详细的性能分析。

Spark1.0.0 的监控方式,布布扣,bubuko.com

时间: 2024-10-29 19:11:17

Spark1.0.0 的监控方式的相关文章

Spark1.0.0伪分布安装指南

?一.下载须知 软件准备: spark-1.0.0-bin-hadoop1.tgz   下载地址:spark1.0.0 scala-2.10.4.tgz    下载下载:Scala 2.10.4 hadoop-1.2.1-bin.tar.gz   下载地址:hadoop-1.2.1-bin.tar.gz jdk-7u60-linux-i586.tar.gz  下载地址:去官网下载就行,这个1.7.x都行 二.安装步骤 hadoop-1.2.1安装步骤,请看: http://my.oschina.

Spark1.0.0 生态圈一览

Spark生态圈,也就是BDAS(伯克利数据分析栈),是伯克利APMLab实验室精心打造的,力图在算法(Algorithms).机器(Machines).人(People)之间通过大规模集成,来展现大数据应用的一个平台,其核心引擎就是Spark,其计算基础是弹性分布式数据集,也就是RDD. 通过Spark生态圈,AMPLab运用大数据.云计算.通信等各种资源,以及各种灵活的技术方案,对海量不透明的数据进行甄别并转化为实用的信息.以供人们更好的理解世界.Spark生态圈已经涉及到机器学习.数据挖掘

Spark-1.4.0单机部署(Hadoop-2.6.0采用伪分布式)【已测】

??目前手上只有一个机器,就先拿来练下手(事先服务器上没有安装软件)尝试一下Spark的单机部署. ??几个参数: ??JDK-1.7+ ??Hadoop-2.6.0(伪分布式): ??Scala-2.10.5: ??Spark-1.4.0: ??下面是具体的配置过程 安装JDK 1.7+ [下载网址]http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 环境变量设置(最好不要采用o

spark1.1.0集群安装配置

和分布式文件系统和NoSQL数据库相比而言,spark集群的安装配置还算是比较简单的: 安装JDK,这个几乎不用介绍了(很多软件都需要JDK嘛) wget http://download.oracle.com/otn-pub/java/jdk/7u71-b14/jdk-7u71-linux-x64.tar.gz?AuthParam=1416666050_dca8969bfc01e3d8d42d04040f76ff1 tar -zxvf jdk-7u71-linux-x64.tar.gz 安装sc

Spark1.0.0生态圈一览

Problem Description Chinachen is a football fanatic, and his favorite football club is Juventus fc. In order to buy a ticket of Juv, he finds a part-time job in Professor Qu's lab. And now, Chinachen have received an arduous task--Data Processing. Th

Apache Spark-1.0.0浅析(六):资源调度——Task执行

前面说到向executorActor(task.executorID)发送LaunchTask(task)消息,在CoarseGrainedExecutorBackend中定义receive接收launchTask消息,执行executor.launchTask override def receive = { case RegisteredExecutor(sparkProperties) => logInfo("Successfully registered with driver&q

Spark1.0.0属性配置

1:Spark1.0.0属性配置方式 Spark属性提供了大部分应用程序的控制项,并且可以单独为每个应用程序进行配置. 在Spark1.0.0提供了3种方式的属性配置: SparkConf方式 SparkConf方式可以直接将属性值传递到SparkContext: SparkConf可以对某些通用属性直接配置,如master使用setMaster,appname使用setAppName: 也可以使用set()方法对属性进行键-值对配置,如set("spark.executor.memory&qu

Spark1.0.0新特性

Spark1.0.0 release于2014-05-30日正式公布,标志Spark正式进入1.X的时代.Spark1.0.0带来了各种新的特性,并提供了更好的API支持:Spark1.0.0添加了Spark SQL这一个新的重要组件,用于载入和操作Spark的结构化数据:Spark1.0.0增强了现有的标准库(ML,streaming,GraphX),同一时候还增强了Java和Python语言的支持:最后,Spark1.0.0在运维上做了非常大的改进,包含支持Hadoop/YARN安全机制.使

Spark1.0.0 history server 配置

在运行Spark应用程序的时候,driver会提供一个webUI给出应用程序的运行信息,但是该webUI随着应用程序的完成而关闭端口,也就是说,Spark应用程序运行完后,将无法查看应用程序的历史记录.Spark history server就是为了应对这种情况而产生的,通过配置,Spark应用程序在运行完应用程序之后,将应用程序的运行信息写入指定目录,而Spark history server可以将这些运行信息装载并以web的方式供用户浏览. 要使用history server,对于提交应用程