Spark 应用监控告警-Graphite_exporter
- Spark监控和工具
-
- Web界面
- 事后查看
- REST API
- 度量
- 高级工具
- 一、下载graphite_exporter
-
- 1.1 修改graphite_exporter_mapping
- 1.2 启动graphite_exporter
- 二、Spark配置Graphite metrics
- 三、启动Spark程序
- 四、配置Prometheus
-
- 4.1 查看Prometheus是否收集到metrics数据
- 五、Metrics分析
- 六、Grafana模板
- 七、进程监控失败重启和告警模块
相关内容原文地址:
CSDN:瓜牛呱呱:让 Spark Streaming 程序在 YARN 集群上长时间运行(一)—— 故障容错、性能、安全
CSDN:瓜牛呱呱:让 Spark Streaming 程序在 YARN 集群上长时间运行(二)—— 日志、监控、Metrics
CSDN:瓜牛呱呱:让 Spark Streaming 程序在 YARN 集群上长时间运行(三)—— Grafana、优雅地停止(Graceful stop)、总结
CSDN:weixin_44772715:graphite_exporter收集spark on yarn metrics
简书:0o青团o0:Spark 应用监控告警和自动重启
灰信 (软件开发博客聚合):使用 PROMETHEUS 和 GRAFANA 监控 SPARK 应用
并发编程 :邓林:《Spark 官方文档》监控和工具
Spark监控和工具
监控Spark应用有很多种方式:web UI,metrics 以及外部工具。
Web界面
每个SparkContext都会启动一个web UI,其默认端口为4040,并且这个web UI能展示很多有用的Spark应用相关信息。包括:
- 一个stage和task的调度列表
- 一个关于RDD大小以及内存占用的概览
- 运行环境相关信息
- 运行中的执行器相关信息
打开浏览器,输入 http://: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需要如下指令:
如果使用file-system provider class(参考下面的 spark.history.provider),那么日志目录将会基于 spark.history.fs.logDirectory 配置项,并且在表达Spark应用的事件日志路径时,应该带上子目录。history server对应的web界面默认在这里 http://<server-url>:18080。
环境变量 | 含义 |
---|---|
SPARK_DAEMON_MEMORY | history server分配多少内存(默认: 1g) |
SPARK_DAEMON_JAVA_OPTS | history server的 JVM参数(默认:none) |
SPARK_PUBLIC_DNS | history server的外部访问地址,如果不配置,那么history server有可能会绑定server的内部地址,这可能会导致外部不能访问(默认:none) |
SPARK_HISTORY_OPTS | history server配置项(默认:none):spark.history.* |
REST API
度量信息除了可以在UI上查看之外,还可以以JSON格式访问。这能使开发人员很容易构建新的Spark可视化和监控工具。JSON格式的度量信息对运行中的Spark应用和history server中的历史作业均有效。其访问端点挂载在 /api/v1 路径下。例如,对于history server,一般你可以通过 http://<server-url>:18080/api/v1 来访问,而对于运行中的应用,可以通过 http://localhost:4040/api/v1 来访问。
1.1 修改graphite_exporter_mapping
将下载下来的graphite_exporter上传至服务器:
解压:
重命名:
进入到graphite_exporter,在该路面下创建graphite_exporter_mapping文件:
添加如下内容
1.2 启动graphite_exporter
Spark应用监控解决方案–使用Prometheus和Grafana监控Spark应用——
graphite_exporter_mapping格式:
二、Spark配置Graphite metrics
Spark 是自带 Graphite Sink 的,只需要配置一下metrics.properties;
进入到spark安装目录下,进入到conf目录下,找到metrics.properties
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!