网易首页 > 网易号 > 正文 申请入驻

Spark1.6官方文档译文系列九 | Spark监控和工具

0
分享至

温馨提示

本公众号专注分享大数据技术Spark、Hadoop等,如果你是初学者、或者是自学者,这里都是可以提供免费资料,也可以加小编微信号:wusc35,小编可以给你学习上、工作上一些建议以及可以给你提供免费的学习资料!学习技术更重要的是在于学习交流!等你来...

注:本公众号纯属个人公益号!免费分享所有学习资料!希望朋友多多支持!多多关注!

《Spark 官方文档》Spark监控和工具

监控和工具

监控Spark应用有很多种方式:web UI,metrics 以及外部工具。

Web界面

每个SparkContext都会启动一个web UI,其默认端口为4040,并且这个web UI能展示很多有用的Spark应用相关信息。包括:

  • 一个stage和task的调度列表

  • 一个关于RDD大小以及内存占用的概览

  • 运行环境相关信息

  • 运行中的执行器相关信息

你只需打开浏览器,输入 http://<driver-node>:4040 即可访问该web界面。如果有多个SparkContext在同时运行中,那么它们会从4040开始,按顺序依次绑定端口(4041,4042,等)。

注意,默认情况下,这些信息只有在Spark应用运行期内才可用。如果需要在Spark应用退出后仍然能在web UI上查看这些信息,则需要在应用启动前,将 spark.eventLog.enabled 设为 true。这项配置将会把Spark事件日志都记录到持久化存储中。

事后查看

Spark独立部署时,其对应的集群管理器也有其对应的 web UI。如果Spark应用将其运行期事件日志保留下来了,那么独立部署集群管理器对应的web UI将会根据这些日志自动展示已经结束的Spark应用。

如果Spark是运行于Mesos或者YARN上的话,那么你需要开启Spark的history server,开启event log。开启history server需要如下指令:

./sbin/start-history-server.sh

如果使用file-system provider class(参考下面的 spark.history.provider),那么日志目录将会基于 spark.history.fs.logDirectory 配置项,并且在表达Spark应用的事件日志路径时,应该带上子目录。history server对应的web界面默认在这里 http://<server-url>:18080。同时,history server有一些可用的配置如下:

注意,所有web界面上的 table 都可以点击其表头来排序,这样可以帮助用户做一些简单分析,如:发现跑的最慢的任务、数据倾斜等。

注意,history server 只展示已经结束的Spark作业。一种通知Spark作业结束的方法是,显式地关闭SparkContext(通过调用 sc.stop(),或者在 使用 SparkContext() 处理其 setup 和 tear down 事件(适用于python),然后作业历史就会出现在web UI上了。

REST API

度量信息除了可以在UI上查看之外,还可以以JSON格式访问。这能使开发人员很容易构建新的Spark可视化和监控工具。JSON格式的度量信息对运行中的Spark应用和history server中的历史作业均有效。其访问端点挂载在 /api/v1 路径下。例如,对于history server,一般你可以通过 http://<server-url>:18080/api/v1 来访问,而对于运行中的应用,可以通过 http://localhost:4040/api/v1 来访问。

如果在YARN上运行,每个应用都由多个attempts,所以 [app-id] 实际上是 [app-id]/[attempt-id]。

这些API端点都有版本号,所以基于这些API开发程序就比较容易。Spark将保证:

  • 端点一旦添加进来,就不会删除

  • 某个端点支持的字段永不删除

  • 未来可能会增加新的端点

  • 已有端点可能会增加新的字段

  • 未来可能会增加新的API版本,但会使用不同的端点(如:api/v2 )。但新版本不保证向后兼容。

  • API版本可能会整个丢弃掉,但在丢弃前,一定会和新版本API共存至少一个小版本。

注意,在UI上检查运行中的应用时,虽然每次只能查看一个应用, 但applicatoins/[app-id] 这部分路径仍然是必须的。例如,你需要查看运行中应用的作业列表时,你需要输入 http://localhost:4040/api/v1/applications/[app-id]/jobs。虽然麻烦点,但这能保证两种模式下访问路径的一致性。

度量

Spark的度量子系统是可配置的,其功能是基于Coda Hale Metrics Library开发的。这套度量子系统允许用户以多种形式的汇报槽(sink)汇报Spark度量信息,包括:HTTP、JMX和CSV文件等。其对应的配置文件路径为:${SPARK_HOME}/conf/metrics.properties。当然,你可以通过spark.metrics.conf 这个Spark属性来自定义配置文件路径(详见configuration property)。Spark的各个组件都有其对应的度量实例,且这些度量实例之间是解耦的。这些度量实例中,你都可以配置一系列不同的汇报槽来汇报度量信息。以下是目前支持的度量实例:

  • master: 对应Spark独立部署时的master进程。

  • applications: master进程中的一个组件,专门汇报各个Spark应用的度量信息。

  • worker: 对应Spark独立部署时的worker进程。

  • executor: 对应Spark执行器。

  • driver: 对应Spark驱动器进程(即创建SparkContext对象的进程)。

每个度量实例可以汇报给0~n个槽。以下是目前 org.apache.spark.metrics.sink 包中包含的几种汇报槽(sink):

  • ConsoleSink:将度量信息打印到控制台。

  • CSVSink: 以特定的间隔,将度量信息输出到CSV文件。

  • JmxSink: 将度量信息注册到JMX控制台。

  • MetricsServlet: 在已有的Spark UI中增加一个servlet,对外提供JSON格式的度量数据。

  • GraphiteSink: 将度量数据发到Graphite 节点。

  • Slf4jSink: 将度量数据发送给slf4j 打成日志。

Spark同样也支持Ganglia,但因为license限制的原因没有包含在默认的发布包中:

  • GangliaSink: 将度量信息发送给一个Ganglia节点或者多播组。

如果需要支持GangliaSink的话,你需要自定义Spark构建包。注意,如果你包含了GangliaSink代码包的话,就必须同时将 LGPL-licensed 协议包含进你的Spark包中。对于sbt用户,只需要在编译打包前设置好环境变量:SPARK_GANGLIA_LGPL即可。对于maven用户,启用 -Pspark-ganglia-lgpl 即可。另外,除了修改集群的Spark之外,用户程序还需要链接 spark-ganglia-lgpl 工件。

度量系统配置文件语法可以参考这个配置文件示例:${SPARK_HOME}/conf/metrics.properties.template

高级工具

以下是几个可以用以分析Spark性能的外部工具:

集群整体监控工具,如:Ganglia,可以提供集群整体的使用率和资源瓶颈视图。比如,Ganglia的仪表盘可以迅速揭示出整个集群的工作负载是否达到磁盘、网络或CPU限制。

操作系统分析工具,如:dstat, iostat, 以及 iotop ,可以提供单个节点上细粒度的分析剖面。

JVM工具可以帮助你分析JVM虚拟机,如:jstack可以提供调用栈信息,jmap可以转储堆内存数据,jstat可以汇报时序统计信息,jconsole可以直观的探索各种JVM属性,这对于熟悉JVM内部机制非常有用。

今日推荐

Spark1.6官方文档译文系列一 | Spark快速入门

Spark1.6官方文档译文系列二 | Spark编程指南

Spark1.6官方文档译文系列三 | Spark作用调度

Spark1.6官方文档译文系列四 | 在YARN上运行Spark

Spark1.6官方文档译文系列五 | 硬件配置

Spark1.6官方文档译文系列六 | Spark安全性

Spark1.6官方文档译文系列七 | Spark独立模式

Spark1.6官方文档译文系列八 | Spark Streaming编程指南

转载声明:本文转载自「并发编程网 – ifeve.com」

欢迎关注,获取更多收获

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
伊朗用血泪换来的教训:一旦中美开战,中国必须首先锁定这一点

伊朗用血泪换来的教训:一旦中美开战,中国必须首先锁定这一点

冷峻视角下的世界
2026-02-20 07:45:35
体制内情商高能带来啥意外惊喜?网友:别在地铁看,别问我为什么

体制内情商高能带来啥意外惊喜?网友:别在地铁看,别问我为什么

带你感受人间冷暖
2026-02-24 01:03:13
尴尬!扣12分,春节最冤种司机出现!一粤s车牌两次驶入应急车道

尴尬!扣12分,春节最冤种司机出现!一粤s车牌两次驶入应急车道

火山詩话
2026-03-02 10:11:01
至今都让人无法原谅的十大烂片,毫无下限,每部都是影视界的耻辱

至今都让人无法原谅的十大烂片,毫无下限,每部都是影视界的耻辱

小Q侃电影
2026-01-21 17:36:03
“反诈老陈”账号被封,本人回应:问心无愧!MCN机构:即刻解除所有合约,双方合作立即终止

“反诈老陈”账号被封,本人回应:问心无愧!MCN机构:即刻解除所有合约,双方合作立即终止

都市快报橙柿互动
2026-03-01 07:15:47
梅根遭约旦王室拒绝接见,梅根心事重重精神不振,已患严重抑郁症

梅根遭约旦王室拒绝接见,梅根心事重重精神不振,已患严重抑郁症

译言
2026-03-01 16:47:43
被称为“中国最大忽悠”的贾跃亭,似乎要翻身了。

被称为“中国最大忽悠”的贾跃亭,似乎要翻身了。

流苏晚晴
2026-02-19 16:19:47
为什么北京像莫斯科?

为什么北京像莫斯科?

虔青
2026-02-26 11:39:20
陈熠落选世界杯!马琳作出解释,还有一个坏消息,王励勤也无奈啊

陈熠落选世界杯!马琳作出解释,还有一个坏消息,王励勤也无奈啊

体育就你秀
2026-03-03 09:31:27
足球王国的足坛历史地位前10,不同的智能软件,一致认同前3人选

足球王国的足坛历史地位前10,不同的智能软件,一致认同前3人选

体育世界信隆
2026-03-02 10:04:41
美国女足前队长:谷爱凌代表中国参赛是极其聪明的商业决策

美国女足前队长:谷爱凌代表中国参赛是极其聪明的商业决策

魔都姐姐杂谈
2026-03-02 08:25:44
美以发动军事行动 中方接连发声反对丛林法则

美以发动军事行动 中方接连发声反对丛林法则

环球网资讯
2026-03-02 22:01:10
59年陈赓因病缺席庐山会议,在听闻彭总的处境后,他是什么态度?

59年陈赓因病缺席庐山会议,在听闻彭总的处境后,他是什么态度?

海佑讲史
2026-03-03 10:20:07
曾是世界第三强国:灭国前3次求中国救援,结果我国多了百万疆土

曾是世界第三强国:灭国前3次求中国救援,结果我国多了百万疆土

君笙的拂兮
2026-03-02 22:57:42
他接受纪律审查和监察调查

他接受纪律审查和监察调查

锡望
2026-03-02 12:47:11
罕见!伯恩利为18岁张家鸣支付约31万欧:即将获得劳工证!

罕见!伯恩利为18岁张家鸣支付约31万欧:即将获得劳工证!

邱泽云
2026-03-02 18:04:24
骑士消息:裁判报告公布,米切尔复出时间出炉,战活塞出场更新

骑士消息:裁判报告公布,米切尔复出时间出炉,战活塞出场更新

冷月小风风
2026-03-03 10:42:42
1980年邓小平说:毛主席的错误,要毫不含糊地批评,但要实事求是

1980年邓小平说:毛主席的错误,要毫不含糊地批评,但要实事求是

帝哥说史
2026-02-25 06:30:03
暴跌60%,引来全国牙科关店潮,暴利的牙科生意真的走到了尽头?

暴跌60%,引来全国牙科关店潮,暴利的牙科生意真的走到了尽头?

小熊侃史
2026-01-17 07:50:11
女孩当小姐,一晚要提供4到5次上门服务,2015年被亲人点到不赴约

女孩当小姐,一晚要提供4到5次上门服务,2015年被亲人点到不赴约

汉史趣闻
2025-11-08 09:27:32
2026-03-03 12:28:49
大数据之谜
大数据之谜
专注分享大数据技术
43文章数 396关注度
往期回顾 全部

科技要闻

手机AI在MWC上卷出了新高度

头条要闻

牛弹琴:多国对轰炸保持沉默 西班牙首相确实是条汉子

头条要闻

牛弹琴:多国对轰炸保持沉默 西班牙首相确实是条汉子

体育要闻

35轮后积分-7,他们遭遇史上最早的降级

娱乐要闻

谢娜霸气护夫:喊话薛之谦给张杰道歉

财经要闻

霍尔木兹海峡近乎停摆 布油直逼80美元

汽车要闻

长安汽车2月销量151922辆 环比逆势增长12.8%

态度原创

教育
健康
旅游
时尚
数码

教育要闻

高中物理全反射实验课件

转头就晕的耳石症,能开车上班吗?

旅游要闻

青海海西州:文旅市场“业态更新”现活力

普通人穿衣真的很简单!单品选对、搭配合理,大方舒适又得体

数码要闻

小米Xiaomi Tag防丢器国内开售:仅重10克续航一年,69元起

无障碍浏览 进入关怀版