Summary

Setting up proper monitoring of your infrastructure is the most recommended and the most disregarded suggestion to a development team, especially in startups where teams are small, resources are limited, and fast development is the only priority. It usually goes hand-in-hand with lethargy to go through a painfully long mechanical process to set up a system. The importance of monitoring is best understood when a failure that could have been avoided occurs at a critical hour. Monitoring is an important tool to show the reliability of a system.

With multiple tools in hand, you are knowledgeable to take your weapon of choice. Starting with JConsole, which enables you to view the status of Cassandra internals, the JVM, and you may tweak and control some parameters. It is a bit tricky to get it working. Plus, it is a resource hog. On the other hand, nodetool is a powerful utility. It can help you get the internal stats and performs many administrative tasks. However, it is a command-line tool. So, probably, the managers are not going to like this. Plus, it shows an instantaneous status. It is not meant to gather status. This is where OpsCenter comes into the picture. With really simple installation and the ability to store performance history and resource monitoring, it is hands-down the best option to monitor Cassandra. But, the free version does not have an alert mechanism, report generation, and some other options such as auto load balancing. The other downside of it is that it is a whole different system to monitor just Cassandra. If you have a heterogeneous system with application servers, RDBMS, a stand-alone application, and a website, you would probably want something that can monitor everything and you can see the complete picture in one place. Nagios and its plugins take over. It allows you to monitor almost anything that can be measured in at least OK and CRITICAL states. Unlike the community version of OpsCenter, Nagios provides a nice interface to generate reports and an in-built mailing alert mechanism. All these can be extended by custom-written plugins. Nagios is open source with a very large and enthusiastic community.

Choose a tool or a set of tools that fit your environment. In many cases, having Nagios to monitor Cassandra, CPU, memory, ping, and disk statistics is good enough. Others may want a dedicated monitoring and management tool such as OpsCenter. There are still others who just write a code that utilizes the JMX interface to monitor particular statistics. It is really up to you.

Cassandra is a big data store. What is the use of a big data store if you can't analyze it to extract interesting statistics? Fortunately, Cassandra provides hooks to smoothly integrate it with various Apache Hadoop projects like Hadoop MapReduce, Pig, and Hive. It can be used as a corpus store for Solr. Cassandra plays well with low latency stream processing tools such as Twitter Storm and can be seamlessly integrated with the Spark project (http://spark-project.org). The next chapter is all about using analytical tools with Cassandra.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.22.77.63