Click here to close now.

Welcome!

Adobe Flex Authors: Matthew Lobas, PR.com Newswire, Shelly Palmer, Kevin Benedict

Blog Feed Post

Monitoring HBase

HBase is a distributed, NoSQL, open-source database, initially conceived as an open-source alternative to Google’s proprietary BigTable. Originally, HBase was part of the Hadoop project, but was eventually spun off as a subproject. Given this legacy, it is not surprising that most often HBase is deployed on top of a Hadoop cluster (it used HDFS as its underlying storage), however a case study suggests that it can run on top of Amazon Elastic Block Store (EBS) as well. These days HBase is used by companies such as Adobe, Facebook, Twitter and Yahoo – and many others to process large amounts of data in real time, since it is ideally placed to store the input and/or the output of MapReduce jobs.

Monitoring HBase with Monitis and JMX

Like most products written in Java, both HBase and Hadoop contain built-in JMX instrumentation, which theoretically allows us to use any JMX client to view their performance metrics. Naturally, Monitis has just what the doctor ordered – a generic JMX agent that can be configured to monitor any JMX-enabled process through a point-and-click web interface.

Enabling JMX in HBase

By default the HBase JMX interface is disabled, but it can be enabled with relatively few configuration changes as explained in the official HBase documentation. (For security reasons and especially since we are not going to use JMX to modify the metric values or invoke administrative operations on the MBeans, I highly recommend that you do not add controlRole to jmxremote.passwd and jmxremote.access as the document suggests. Also, make sure these two files are owned by the login under which the HBase daemons will run, and that their permissions are 600, otherwise HBase will not start).

Installing the Monitis JMX Agent

The agent is implemented as a JEE web application and is packaged accordingly as a .war file. To download, log on to your Monitis account and select Monitors -> Manage Monitors -> JMX Monitors:

The JMX Monitors window will open. At the bottom of it, you will find a link to download the JMX Agent:

The .war file should be deployed in a standard JEE servlet container. While I recommend Tomcat due to its small footprint and ease of use, there are other options. If you already use an application server such as JBoss or WebSphere, you can deploy the JMX agent in it. While Tomcat offers many ways to deploy a .war file, the easiest one is to copy the .war file to Tomcat’s deploy folder. If Tomcat is already running, you don’t need to restart it – it will pick up and deploy the new .war file automatically.

Another consideration is which machine to deploy the monitor on. The HBase master would be the natural choice but your decision is going to be influenced by your specific network topology and corporate standards. In any case, the JMX agent should be able to accessthe HBase master on TCP port 10101 and optionally the Region Servers (data nodes) on port 10102. Aditionaly, Tomcat needs to be accessible on port 8080 (default).

Once the JMX agent .war file is deployed, go to http://<server_name>:8080/mon_jmx_agent. You should see the JMX agent’s login page which looks like this:

Enter your Monitis credentials – the same ones you use to login to your account on monitis.com – and click Login.

Creating an HBase Monitor in Monitis

Once it logs you in, the JMX Agent will prompt you to enter an Agent Name:

The Agent Name is used to uniquely identify the JMX Agent instance within Monitis. The metadata about the monitors is associated with your acount on monitis.com and the JMX agent will automatically download and run any existing monitors previously defined for this agent name. For  this reason, you want to choose a unique name for each JMX agent deployment. Once you enter a meaningful name and click Save, you should see the JMX Parameters page:

Make sure you enter the correct JMX port number and credentials you configured in HBase and click Submit to go to the next page:

Select the hadoop domain from the drop down – HBase’s MBeans live there for historical reasons. (You may also want to explore other domains – such as java.lang, which provides important information on JVM’s internals). Within the hadoop domain, select the HBase service -> RPC Statistics. The next screen shows an impressive number of metrics:

Under Monitor Name enter something meaningful. This is how your monitor will appear on monitis.com. Check interval is in minutes. Select the following attributes:

  • getNumOps
  • getAvgTime
  • getMinTime
  • getMaxTime
  • putNumOps
  • putAvgTime
  • putMinTime
  • putMaxTime

While most attribute names are self-explanatory, the MBean does not provide a meaningful description for the attributes, so feel free to examine the JMX section of the HBase book. Once you have selected all the metrics you are interested in, click on the Add Monitor button at the bottom of the page.

We are now ready to log on to Monitis and examine the data collected by our newly created monitor. If you are just logging on, Monitis will prompt you to add the new monitor, otherwise go to Monitors -> Manage Monitors -> JMX Monitors to open the familiar JMX Monitors screen:

Select the check box next to the new monitor and click Add to Window to open a new monitor window:

That’s it! As with any monitor, you can choose between multiple views and define notifications for your HBase performance metrics:

 

And finally, a few words about architecture. First, the JMX agent’s collector is implemented in the web application (war file). For this reason, you want to make sure that Tomcat (or whatever application server you deployed the agent’s war file on) keeps running for as long as you need to collect data. You may want to monitor the application server process itself and make sure it starts up automatically when the system is booted. Second, when you log on to the JMX Agent’s web interface, your credentials are submitted over an unencrypted HTTP connection (at least with the default Tomcat setup). This might be OK if you are viewing over the corporate LAN, otherwise you should look into enabling HTTPS on Tomcat. Alternatively, you could front Tomcat with Apache and let it do the heavy lifting.

In this installment we introduced the Monitis JMX Agent and hopefully convinced you how easy it is to monitor your HBase cluster. In a future post you will how you can use the agent to monitor JBoss. Happy monitoring!

 

Share Now:del.icio.usDiggFacebookLinkedInBlinkListDZoneGoogle BookmarksRedditStumbleUponTwitterRSS

Read the original blog entry...

More Stories By Hovhannes Avoyan

Hovhannes Avoyan is the CEO of Monitis, Inc., a provider of on-demand systems management and monitoring software to 50,000 users spanning small businesses and Fortune 500 companies.

Prior to Monitis, he served as General Manager and Director of Development at prominent web portal Lycos Europe, where he grew the Lycos Armenia group from 30 people to over 200, making it the company's largest development center. Prior to Lycos, Avoyan was VP of Technology at Brience, Inc. (based in San Francisco and acquired by Syniverse), which delivered mobile internet content solutions to companies like Cisco, Ingram Micro, Washington Mutual, Wyndham Hotels , T-Mobile , and CNN. Prior to that, he served as the founder and CEO of CEDIT ltd., which was acquired by Brience. A 24 year veteran of the software industry, he also runs Sourcio cjsc, an IT consulting company and startup incubator specializing in web 2.0 products and open-source technologies.

Hovhannes is a senior lecturer at the American Univeristy of Armenia and has been a visiting lecturer at San Francisco State University. He is a graduate of Bertelsmann University.

@ThingsExpo Stories
All major researchers estimate there will be tens of billions devices - computers, smartphones, tablets, and sensors - connected to the Internet by 2020. This number will continue to grow at a rapid pace for the next several decades. With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo, June 9-11, 2015, at the Javits Center in New York City. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be
SYS-CON Events announced today that BMC will exhibit at SYS-CON's 16th International Cloud Expo®, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. BMC delivers software solutions that help IT transform digital enterprises for the ultimate competitive business advantage. BMC has worked with thousands of leading companies to create and deliver powerful IT management services. From mainframe to cloud to mobile, BMC pairs high-speed digital innovation with robust IT industrialization – allowing customers to provide amazing user experiences with optimized IT per...
The Internet of Things is not only adding billions of sensors and billions of terabytes to the Internet. It is also forcing a fundamental change in the way we envision Information Technology. For the first time, more data is being created by devices at the edge of the Internet rather than from centralized systems. What does this mean for today's IT professional? In this Power Panel at @ThingsExpo, moderated by Conference Chair Roger Strukhoff, panelists will addresses this very serious issue of profound change in the industry.
WebRTC defines no default signaling protocol, causing fragmentation between WebRTC silos. SIP and XMPP provide possibilities, but come with considerable complexity and are not designed for use in a web environment. In his session at @ThingsExpo, Matthew Hodgson, technical co-founder of the Matrix.org, discussed how Matrix is a new non-profit Open Source Project that defines both a new HTTP-based standard for VoIP & IM signaling and provides reference implementations.
Buzzword alert: Microservices and IoT at a DevOps conference? What could possibly go wrong? In this Power Panel at DevOps Summit, moderated by Jason Bloomberg, the leading expert on architecting agility for the enterprise and president of Intellyx, panelists will peel away the buzz and discuss the important architectural principles behind implementing IoT solutions for the enterprise. As remote IoT devices and sensors become increasingly intelligent, they become part of our distributed cloud environment, and we must architect and code accordingly. At the very least, you'll have no problem fil...
"People are a lot more knowledgeable about APIs now. There are two types of people who work with APIs - IT people who want to use APIs for something internal and the product managers who want to do something outside APIs for people to connect to them," explained Roberto Medrano, Executive Vice President at SOA Software, in this SYS-CON.tv interview at Cloud Expo, held Nov 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA.
Almost everyone sees the potential of Internet of Things but how can businesses truly unlock that potential. The key will be in the ability to discover business insight in the midst of an ocean of Big Data generated from billions of embedded devices via Systems of Discover. Businesses will also need to ensure that they can sustain that insight by leveraging the cloud for global reach, scale and elasticity.
The 4th International Internet of @ThingsExpo, co-located with the 17th International Cloud Expo - to be held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA - announces that its Call for Papers is open. The Internet of Things (IoT) is the biggest idea since the creation of the Worldwide Web more than 20 years ago.
In their session at @ThingsExpo, Shyam Varan Nath, Principal Architect at GE, and Ibrahim Gokcen, who leads GE's advanced IoT analytics, focused on the Internet of Things / Industrial Internet and how to make it operational for business end-users. Learn about the challenges posed by machine and sensor data and how to marry it with enterprise data. They also discussed the tips and tricks to provide the Industrial Internet as an end-user consumable service using Big Data Analytics and Industrial Cloud.
Building low-cost wearable devices can enhance the quality of our lives. In his session at Internet of @ThingsExpo, Sai Yamanoor, Embedded Software Engineer at Altschool, provided an example of putting together a small keychain within a $50 budget that educates the user about the air quality in their surroundings. He also provided examples such as building a wearable device that provides transit or recreational information. He then reviewed the resources available to build wearable devices at home including open source hardware, the raw materials required and the options available to power s...
How do APIs and IoT relate? The answer is not as simple as merely adding an API on top of a dumb device, but rather about understanding the architectural patterns for implementing an IoT fabric. There are typically two or three trends: Exposing the device to a management framework Exposing that management framework to a business centric logic Exposing that business layer and data to end users. This last trend is the IoT stack, which involves a new shift in the separation of what stuff happens, where data lives and where the interface lies. For instance, it's a mix of architectural styles ...
We certainly live in interesting technological times. And no more interesting than the current competing IoT standards for connectivity. Various standards bodies, approaches, and ecosystems are vying for mindshare and positioning for a competitive edge. It is clear that when the dust settles, we will have new protocols, evolved protocols, that will change the way we interact with devices and infrastructure. We will also have evolved web protocols, like HTTP/2, that will be changing the very core of our infrastructures. At the same time, we have old approaches made new again like micro-services...
Connected devices and the Internet of Things are getting significant momentum in 2014. In his session at Internet of @ThingsExpo, Jim Hunter, Chief Scientist & Technology Evangelist at Greenwave Systems, examined three key elements that together will drive mass adoption of the IoT before the end of 2015. The first element is the recent advent of robust open source protocols (like AllJoyn and WebRTC) that facilitate M2M communication. The second is broad availability of flexible, cost-effective storage designed to handle the massive surge in back-end data in a world where timely analytics is e...
Collecting data in the field and configuring multitudes of unique devices is a time-consuming, labor-intensive process that can stretch IT resources. Horan & Bird [H&B], Australia’s fifth-largest Solar Panel Installer, wanted to automate sensor data collection and monitoring from its solar panels and integrate the data with its business and marketing systems. After data was collected and structured, two major areas needed to be addressed: improving developer workflows and extending access to a business application to multiple users (multi-tenancy). Docker, a container technology, was used to ...
The true value of the Internet of Things (IoT) lies not just in the data, but through the services that protect the data, perform the analysis and present findings in a usable way. With many IoT elements rooted in traditional IT components, Big Data and IoT isn’t just a play for enterprise. In fact, the IoT presents SMBs with the prospect of launching entirely new activities and exploring innovative areas. CompTIA research identifies several areas where IoT is expected to have the greatest impact.
The Industrial Internet revolution is now underway, enabled by connected machines and billions of devices that communicate and collaborate. The massive amounts of Big Data requiring real-time analysis is flooding legacy IT systems and giving way to cloud environments that can handle the unpredictable workloads. Yet many barriers remain until we can fully realize the opportunities and benefits from the convergence of machines and devices with Big Data and the cloud, including interoperability, data security and privacy.
The Internet of Things is tied together with a thin strand that is known as time. Coincidentally, at the core of nearly all data analytics is a timestamp. When working with time series data there are a few core principles that everyone should consider, especially across datasets where time is the common boundary. In his session at Internet of @ThingsExpo, Jim Scott, Director of Enterprise Strategy & Architecture at MapR Technologies, discussed single-value, geo-spatial, and log time series data. By focusing on enterprise applications and the data center, he will use OpenTSDB as an example t...
Scott Jenson leads a project called The Physical Web within the Chrome team at Google. Project members are working to take the scalability and openness of the web and use it to talk to the exponentially exploding range of smart devices. Nearly every company today working on the IoT comes up with the same basic solution: use my server and you'll be fine. But if we really believe there will be trillions of these devices, that just can't scale. We need a system that is open a scalable and by using the URL as a basic building block, we open this up and get the same resilience that the web enjoys.
We are reaching the end of the beginning with WebRTC, and real systems using this technology have begun to appear. One challenge that faces every WebRTC deployment (in some form or another) is identity management. For example, if you have an existing service – possibly built on a variety of different PaaS/SaaS offerings – and you want to add real-time communications you are faced with a challenge relating to user management, authentication, authorization, and validation. Service providers will want to use their existing identities, but these will have credentials already that are (hopefully) i...
Container frameworks, such as Docker, provide a variety of benefits, including density of deployment across infrastructure, convenience for application developers to push updates with low operational hand-holding, and a fairly well-defined deployment workflow that can be orchestrated. Container frameworks also enable a DevOps approach to application development by cleanly separating concerns between operations and development teams. But running multi-container, multi-server apps with containers is very hard. You have to learn five new and different technologies and best practices (libswarm, sy...