Posted by : Unknown Tuesday, December 24, 2013

Facebook created Cassandra DB to power their Inbox Search feature in 2008, and Twitter announced they would use Cassandra because it can be run on large server clusters and is capable of taking in very large amounts of data in 2010. Nowadays, Cassandra is an Apache top-level project, also knows as Apache Cassandra.
To manage lots of data the importance of monitoring this part of the architecture is increasing. If you use Cassandra, you will want to know how to monitor it.
What is Apache Cassandra?
Apache Cassandra is an open source distributed database management system designed to handle large amounts of data across many commodity servers, providing high availability with no single point of failure. Cassandra offers robust support for clusters spanning multiple data centers, with asynchronous masterless replication allowing low latency operations for all clients.
How to collect data
The Cassandra data extraction is being done basically through the execution of commands in the Operative System. The CQLsh client is used to run CQL commands and the general log files of Cassandra are used to retrieve info too.
Parameters that we will retrieve from Cassandra are described below:
  • Cassandra_Process: Displays information on the status of the cassandra process.
  • Cassandra_CPU_Usage: Displays the cpu use for the cassandra process in %.
  • Cassandra_Memory_Use: Displays the memory use for the cassandra process in %.
  • Cassandra_Error_Log_Messages: Displays the amount of error messages in the cassandra log.
  • Cassandra_Warning_Log_Messages: Displays the amount of warning messages in the cassandra log.
  • Cassandra_Network_Connections: Displays the amount of network connections by clients.
  • Cassandra_Thrift_Server_Status: Displays the status of the thrift server.
  • Cassandra_Cluster_Status: Displays the status of the main Cluster.
  • Cassandra_Key_Cache_Size: Displays the size of the key cache in kbs.
  • Cassandra_Active_Commands: Displays the amount of active commands or task being executed.
  • Cassandra_Pending_Commands: Displays the amount of pending commands.
  • Cassandra_Completed_Commands: Displays the amount of completed commands.
  • Cassandra_Active_Responses: Displays the amount of active responses to commands executed by cassandra.
  • Cassandra_Pending_Responses: Displays the amount of pending responses to commands.
  • Cassandra_Completed_Responses: Displays the amount of completed responses to commands.
  • Cassandra_Nodetool_Configuration: Detects if Nodetool is working properly.
Parameters that would influence badly the performance of Cassandra:
  • Cassandra_ReadStage_Pool_Pending_Tasks
  • Cassandra_RequestResponseStage_Pool_Pending_Tasks
  • Cassandra_MutationStage_Pool_Pending_Tasks
  • Cassandra_ReadRepairStage_Pool_Pending_Tasks
  • Cassandra_ReplicateOnWriteStage_Pool_Pending_Tasks
  • Cassandra_GossipStage_Pool_Pending_Tasks
  • Cassandra_AntiEntropy_Pool_Pending_Tasks
  • Cassandra_MigrationStage_Pool_Pending_Tasks
  • Cassandra_MemoryMeter_Pool_Pending_Tasks
  • Cassandra_MemtablePostFlusher_Pool_Pending_Tasks
  • Cassandra_FlushWriter_Pool_Pending_Tasks
  • Cassandra_MiscStage_Pool_Pending_Tasks
  • Cassandra_PendingRangeCalculator_Pool_Pending_Tasks
  • Cassandra_ReplicateOnWriteStage_Pool_Pending_Tasks
  • Cassandra_Comitlog_archiver_Pool_Pending_Tasks
  • Cassandra_InternalResponseStage_Pool_Pending_Tasks
  • Cassandra_HintedHandoff_Pool_Pending_Tasks
To monitor Cassandra, we are going to use Pandora FMS.
This plugin is basically getting data executing commands in the Operative System, analyzing Cassandra's log and executing nodetool (Command line utility included on Cassandra's installation).
This plugin executes the commands and checks all the important values into software agent modules, XML formatted, ready to be sent to Pandora FMS Data Server.
Thus, we can download these prebuilt checks anytime, without having to develop them by ourselves.
With all this data in Pandora FMS, a complete world of possiblities is open up to you: Be warned by mail/sms when something goes wrong with using the alerts system. A complete events list with customizable filter available from your internet browser and even from your mobile device using our mobile apps. Generate on demand or receive periodically complete reports.

- Copyright © Technology for World -Metrominimalist- Powered by Blogger - Designed by Johanes Djogan -