jvisualvm监控Spark作业
2016-05-20 23:26
211 查看
jvisualvm工具JDK自带的一个监控工具,该工具是用来监控java运行程序的cpu、内存、线程等的使用情况,并且使用图表的方式监控java程序、还具有远程监控能力,不失为一个用来监控Java程序的好工具。
同样,我们可以使用jvisualvm来监控Spark应用程序(Application),从而可以看到Spark应用程序堆,线程的使用情况,从而根据这些数据去优化您的程序。废话少说,下面来说说怎么配置,使得我们可以使用jvisualvm来监控程序:
1、在$SPARK_HOME/conf目录下配置spark-default.conf文件,加入如下配置:
spark.driver.extraJavaOptions -Dcom.sun.management.jmxremote.port=1099
-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=falsejmx默认的是1099端口,上面没有使用到ssl;并且不需要登录即可建立Jmx连接。
我们介绍了Spark的几种Metrics,其实这里我们也可以使用Metrics来配置JMX,我们只要在$SPARK_HOME/conf目录下配置metrics.properties,如下:
*.sink.jmx.class=org.apache.spark.metrics.sink.JmxSink这个在1099端口上开启JMX,目前貌似不支持端口的配置,以及SSL、authenticate等配置,其他的都和上面的一样。
2、启动你的Spark应用程序
3、打开jvisualvm.exe监控你的Spark应用程序
在JDK安装的bin目录下有个jvisualvm.exe,双击它,然后进行配置,依次选择 文件-> 添加JMX连接,然后会弹出一个对话框,在连接文本框里面填上你Driver机器的地址和端口,比如:http://www.iteblog.com:1099。然后就可以看到如下的画面:
![](http://img.blog.csdn.net/20160520232532444)
里面可以看到很多关于你Spark应用程序的系信息,比如JVM配置和系统参数(其实这些在你应用程序的4040端口看到这些信息)。
在Java安装目录下的bin文件夹还有个jconsole.exe程序,这个使用和jvisualvm.exe使用差不多,只不过jvisualvm.exe图形漂亮很多。当然,还有很多工具可以监控Java程序的,比如jprofiler,这个功能更强大,但是配置起来也比较麻烦,而且这款软件是收费的。
同样,我们可以使用jvisualvm来监控Spark应用程序(Application),从而可以看到Spark应用程序堆,线程的使用情况,从而根据这些数据去优化您的程序。废话少说,下面来说说怎么配置,使得我们可以使用jvisualvm来监控程序:
1、在$SPARK_HOME/conf目录下配置spark-default.conf文件,加入如下配置:
spark.driver.extraJavaOptions -Dcom.sun.management.jmxremote.port=1099
-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=falsejmx默认的是1099端口,上面没有使用到ssl;并且不需要登录即可建立Jmx连接。
我们介绍了Spark的几种Metrics,其实这里我们也可以使用Metrics来配置JMX,我们只要在$SPARK_HOME/conf目录下配置metrics.properties,如下:
*.sink.jmx.class=org.apache.spark.metrics.sink.JmxSink这个在1099端口上开启JMX,目前貌似不支持端口的配置,以及SSL、authenticate等配置,其他的都和上面的一样。
2、启动你的Spark应用程序
3、打开jvisualvm.exe监控你的Spark应用程序
在JDK安装的bin目录下有个jvisualvm.exe,双击它,然后进行配置,依次选择 文件-> 添加JMX连接,然后会弹出一个对话框,在连接文本框里面填上你Driver机器的地址和端口,比如:http://www.iteblog.com:1099。然后就可以看到如下的画面:
里面可以看到很多关于你Spark应用程序的系信息,比如JVM配置和系统参数(其实这些在你应用程序的4040端口看到这些信息)。
在Java安装目录下的bin文件夹还有个jconsole.exe程序,这个使用和jvisualvm.exe使用差不多,只不过jvisualvm.exe图形漂亮很多。当然,还有很多工具可以监控Java程序的,比如jprofiler,这个功能更强大,但是配置起来也比较麻烦,而且这款软件是收费的。
相关文章推荐
- Spark RDD API详解(一) Map和Reduce
- 使用spark和spark mllib进行股票预测
- Spark随谈——开发指南(译)
- Spark,一种快速数据分析替代方案
- eclipse 开发 spark Streaming wordCount
- Understanding Spark Caching
- ClassNotFoundException:scala.PreDef$
- Windows 下Spark 快速搭建Spark源码阅读环境
- Spark中将对象序列化存储到hdfs
- 使用java代码提交Spark的hive sql任务,run as java application
- Spark机器学习(一) -- Machine Learning Library (MLlib)
- Spark机器学习(二) 局部向量 Local-- Data Types - MLlib
- Spark机器学习(三) Labeled point-- Data Types
- Spark初探
- Spark Streaming初探
- Spark本地开发环境搭建
- 搭建hadoop/spark集群环境
- Spark HA部署方案
- Spark HA原理架构图
- spark内存概述