jmx 替代_使用JMX作为Ganglia的现代替代品进行CLDB监视
jmx 替代
有许多选项可用于监视MapR集群的性能和运行状况。 在本文中,我将介绍使用Java管理扩展(JMX)监视CLDB的鲜为人知的方法。
据最受尊敬的MapR数据工程师之一,Akihiko Kusanagi称,与使用Ganglia相比,使用JMX获取CLDB指标可以被视为一种访问实时性能指标的更现代,更简单的方法。 Ganglia作为分布式集群(尤其是Hadoop)的指标收集服务已有很长的历史,在MapR文档中已很好地证明了其在此角色中的使用。
对于不使用此类工具的集群,使用JMX监视CLDB可能是一个明智的选择,可以避免安装和配置第三方监视解决方案。 在非常特定的情况下,实时,精细地监视CLDB可能很有用,在这种情况下,针对生产集群收集的普通指标未提供解决集群运行状况或性能方面某些问题所需的所有详细信息。 就CLDB而言,在MapR-FS的运行状况和性能方面尤其如此。
这篇文章主要面向经验丰富的MapR集群管理员和顾问。 为了使经验不足的读者受益,在深入了解本主题之前,我将花一些时间来介绍一些基本知识。
CLDB指标
CLDB(容器位置数据库)是MapR文件系统的核心,是MapR特定的技术,是Hadoop HDFS分布式文件系统的高性能且可靠的替代品。
CLDB通过替换NameNode打破了其他Hadoop发行版众所周知的单点故障。 这样,CLDB维护有关群集中数据位置的信息。 它的可靠性来自通常在群集的三个节点上运行,其中一个节点随时可作为主节点。
度量标准仅由CLDB主服务器收集,其他CLDB节点则作为从属服务器保持只读模式,因此不收集任何度量标准。
一个相当简明扼要的列表收集可以发现指标这里在MAPR文档。 这些指标与节点的硬件,CPU,内存和网络指标以及与卷,容器和RPC调用有关的MapR-FS特定指标相关。 最后,该服务还收集群集范围的CPU,磁盘空间和内存的总计指标。
特别令人感兴趣的是CLDB主站的CPU负载。 在少于100个节点的典型群集中,CLDB节点还运行其他服务。 随着群集大小的增加,CLDB节点可能会变得超负荷工作,并且很高的CPU使用率可能表明需要转向仅CLDB的节点设计,这是非常大的群集的最佳实践( 链接 )。
Java管理扩展(JMX)
JMX在2004年与J2SE 5.0 JDK一起引入,旨在用于企业应用程序中,以使系统可配置或在任何时间点获取应用程序状态。 CLDB服务包括已注册MBean的运行JMX服务器。
使用众多JMX控制台实现中的任何一种,都可以实时读取CLDB应用程序状态。 在这里,我将重点介绍Jconsole,它是Oracle JDK的标准工具。
有许多在线资源可从Oracle的出色Java文档和教程以及JournalDev的教程中学习有关JMX的更多信息。
使用JConsole进行实时CLDB监视
在Mac OS和Linux中,jconsole已自动安装到/ usr / local / bin,因此可以使用。 唯一的依赖关系是Oracle的JDK。
执行jconsole会启动一个带有登录提示的Java应用程序:
要进行连接,请选择“远程进程”并输入:<master CLDB host>:7220,然后按“ Connect”。 “用户名”和“密码”字段可以保留为空白。 提示将报告无法安全连接,并提出仍要连接或取消连接。 只需选择“不安全的连接”。
JMX控制台默认情况下会打开“概述”选项卡,如上所示。 它显示内存和CPU的实时指标。 这是一个非常“ Java JVM监视视图”,仅包含许多实用的CPU图表。 所有操作都在“ MBeans”选项卡和“ com.mapr.cldb” MBean中。
该视图允许访问由主CLDB收集的所有内部指标。 收集的指标从群集级别的指标(例如“群集内存容量”和“已使用的磁盘空间”)到非常细粒度的指标,这些指标可能仅对MapR内部软件工程师感兴趣(“已处理的重复ACR数量”吗? )。
MapR建议的指标是Ganglia公开的指标,并在文档中列出了这些指标。 在这种情况下不方便的是,没有与CLDB MBean相关的图。 一次只能访问一个值,并且该值不会自动刷新。
当然,可以使用Java以编程方式访问这些数字,而这会花费一些时间和精力。 按照此博客文章中的说明,也可以使用Python(通过JPype1包)。 以编程方式获取感兴趣的指标,仅花了我几分钟的时间就使用了该博客中的信息。 通过Python,可以轻松地将指标转发到数据库,ElasticSearch索引甚至是平面文件。
不过,老实说,实际上,我宁愿建议使用MapR REST API来满足生产集群的日常监视需求,这将是另一篇博客文章的主题。
结论
当然,对CLDB的JMX监视不太可能成为MapR集群管理员日常工具箱的一部分。 但是,我发现它很有趣,可以窥视MapR技术的这一关键部分的内部功能。 希望您会发现它和我一样有趣。
翻译自: https://www.javacodegeeks.com/2016/05/cldb-monitoring-using-jmx-modern-alternative-ganglia.html
jmx 替代
jmx 替代_使用JMX作为Ganglia的现代替代品进行CLDB监视相关推荐
- 使用JMX作为Ganglia的现代替代品进行CLDB监视
有许多选项可用于监视MapR集群的性能和运行状况. 在本文中,我将介绍使用Java管理扩展(JMX)监视CLDB的鲜为人知的方法. 据最受尊敬的MapR数据工程师之一,Akihiko Kusanagi ...
- java jmx连接_使用JMX连接JVM
什么是JMX? 什么是JMX,Java Management Extensions,即Java管理扩展,是一个为应用程序.设备.系统等植入管理功能的框架.JMX可以跨越一系列异构操作系统平台.系统体系 ...
- java jmx教程_集成JMX
在Spring中,可以方便地集成JMX. 那么第一个问题来了:什么是JMX? JMX是Java Management Extensions,它是一个Java平台的管理和监控接口.为什么要搞JMX呢?因 ...
- java jmx 开启_开启JMX远程监控
参考: 1. 启动参数java -server -Xms256M -Xmx256M -Xss256K -XX:MetaspaceSize=256M -XX:MaxMetaspaceSize=256M ...
- java jmx 监控_利用VisualVm和JMX远程监控Java进程
在前一篇文章里我们发现通过jstatd + VisualVm的方式,不能获得Java进程的CPU.线程.MBean信息,这时JMX就要登场了. 自Java 6开始,Java程序启动时都会在JVM内部启 ...
- java jmx 监控_只用五分钟为系统实现基于JMX的监控
早期是作为J2EE的一部分, 因此总给人一种开发起来会很"重"的感觉, 这让不少Java程序员宁愿选择自行实现"轻量级"方案. 时至今日, 借助一些优秀的开源项 ...
- java jmx 开启_动态开启jmx服务
java可以利用编写mbeans来暴露很多程序指标,jdk自己也有很多指标,例如内存使用以及划分.很多小伙伴都表示这些值不少jstat就可以获取查看的吗,ssh登录上去就可以,也很方便.jstat确实 ...
- JMX学习笔记(四) JMX RMI
连接器概念: JMX规范定义了连接器的概念(Connectors),连接器位于JMX的3层构架中的分布式服务层.连接器负责建立MBean服务器和管理应用之间的通信.连接器由一个驻留在代理层的连接器服务 ...
- fiddle导出jmx文件_Fiddler导出JMX文件配置
(1)安装fiddler jmeter(免安装) 注意事项!fiddler版本必须在v4.6.2以上(插件支持的是4.6版本), jmeter版本最好在v3.0以上,版本太低容易导致导出不成功 这里我 ...
最新文章
- 一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
- IOS开发之手势—UIGestureRecognizer 共存
- 故障恢复 stm32_硬件编程:77条STM32知识汇总
- 解决模拟MOSS用户调用WebService打开个人站点进行操作
- icmp消息类型报告传输_ICMP消息的类型和ICMP消息格式
- 第一次作业源于计科一班的王相博
- css字体阴影_css3如何添加文字阴影效果?text-shadow设置文字阴影效果
- Redis 开发与运维
- javamail发送html正文文件_自动发送邮件
- oracle no expand,NO_EXPAND Hint性能优化一例
- Linux下启动Oracle数据库
- ISO 19011 《管理体系审核指南》
- 萤石云开放平台java_萤石云控制代码
- C# Excel绘制组合图
- Unity与操纵杆硬件设备通信(读取硬件数据)
- [转] 公务员80分申论万能模板(转给需要的人)
- iPhone手机拍的图片为什么电脑上打不开?秒懂
- [硬件基础] 有刷、有感和无刷无感电机对比
- element表格 频繁切换维度,导致表头渲染有误
- 计算机网络胡工程施工税率,弱电项目增值税6%、9%、13%税率怎样区分?项目经理必知...