Zabbix 监控 Spark 中间件配置教程

本文将介绍以JMX方式监控Spark中间件。JMX具有跨平台、灵活性强、监控能力强、易于集成与扩展、图形化界面支持以及安全性与可配置性等多方面的优势,是监控Spark等复杂Java应用程序的重要工具之一。

一、概述

本文将介绍以JMX方式监控Spark中间件。JMX具有跨平台、灵活性强、监控能力强、易于集成与扩展、图形化界面支持以及安全性与可配置性等多方面的优势,是监控Spark等复杂Java应用程序的重要工具之一。

Apache Spark 是一个开源的大数据处理框架,它提供了快速、通用和可扩展的数据处理能力,适用于执行大规模的数据处理和分析任务,特别是在批处理、实时流处理、机器学习和图计算等领域。

JMX(Java Management Extensions)作为Java平台标准的一部分,提供了一种标准化的机制,用于监控和管理应用程序、系统对象、设备和服务。JMX技术可以跨越不同的操作系统、体系结构和网络传输协议,灵活地开发无缝集成的系统、网络和服务管理应用。

JMX可以被用于多种管理任务,包括:

  1. 系统监控:监控系统的CPU使用率、内存消耗、线程数等指标。
  2. 性能调优:获取应用程序的性能数据,如方法执行时间、请求响应时间等,帮助开发者找出性能瓶颈并进行优化。
  3. 故障排查:当系统出现故障时,通过JMX快速定位问题所在,如查看日志、监控线程状态等。
  4. 安全管理:实现系统的安全控制,如用户认证、访问控制等。
  5. 服务管理:对于分布式系统,监控服务状态、管理服务实例,提高系统的可用性和可维护性。

二、Spark配置开启JMX服务

1、编写Spark配置文件:

在安装的spark服务里找到名称为“spark-env.sh”的配置文件,进行编辑修改。

2、在Spark配置文件里启用JMX:

输入命令:vi spark-env.sh 打开配置文件,并在文件中添加以下参数来开启JMX并设置JMX的监听端口。

export SPARK_DAEMON_JAVA_OPTS="$SPARK_DAEMON_JAVA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=7099 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"

解析:开启JMX服务并设置端口为7099。

3、重启Spark服务:

根据自身所搭建的Spark模式来重启Spark,以便Spark服务应用添加这些参数的更改

三、下载测试工具cmdline-jmxclient-0.10.3.jar包进行连通性测试

1、下载测试工具cmdline-jmxclient-0.10.3.jar包

cmdline-jmxclient-0.10.3.jar为一个测试工具,可用来测试JMX是否配置正确,下载cmdline-jmxclient-0.10.3.jar(下载到任意目录)。

wget http://crawler.archive.org/cmdline-jmxclient/cmdline-jmxclient-0.10.3.jar

2、测试JAR包,注意IP地址与JMX端口需与配置文件一致

java -jar cmdline-jmxclient-0.10.3.jar - 192.168.3.34:7099

3、测试成功效果图

KBzBsomA66eccde546ddd.png

测试成功则证明可以成功连接并且返回数据。

四、如何进行监控项添加监控

1、需要使用windows的jconsole控制台制作监控项,安装方式可以自行去搜索对应教程进行安装。

2、运用方式:

(1)【win+r】---【输入jconsole】

(2)选择远程进程,输入IP:JMX端口来进行登录

TbstiWF366ecce174339f.png

(3)添加监控项

下图是关于Spark JMX形式的监控项例子

0SHXRpT266ecce2840774.png

0 条评论

请先 登录 后评论
乐维君
乐维君

381 篇文章

作家榜 »

  1. 乐维君 381 文章
  2. YOHOHO 14 文章
  3. 机灵小和尚 13 文章
  4. 我是一只小菜鸡 12 文章
  5. 细雨闲花 11 文章
  6. 。。。 9 文章
  7. 御前侍卫张五哥 9 文章
  8. 小黄人 8 文章