Reader small image

You're reading from  MongoDB High Availability

Product typeBook
Published inJul 2014
Publisher
ISBN-139781783986729
Edition1st Edition
Tools
Right arrow
Author (1)
Afshin Mehrabani
Afshin Mehrabani
author image
Afshin Mehrabani

Afshin Mehrabani is an open source programmer. He is studying to be a computer software engineer. He started programming and web development when he was 12 years old, as well as starting with PHP. Later, he joined the Iran Technical and Vocational Training Organization. He secured the first place and received a gold medal in a competition which was conducted across the entire country in the area of web development. He became a member of the Iran National Foundation of Elite after producing a variety of new programming ideas. He was a software engineer at the Tehran Stock Exchange and is now the head of the web development team in the Yara Company. He cofounded the Usablica team in early 2012 to develop and produce usable applications. He is the author of IntroJs, WideArea, flood.js and some other open source projects. He has contributed to Socket.IO, Engine.IO, and some other open source projects. He is also interested in creating and contributing to open source applications, writing programming articles, and challenging himself with new programming technologies. He has written different articles about JavaScript, Node.js, HTML5, and MongoDB that have been published on different academic websites. Afshin has 5 years of experience in PHP, Python, C#, JavaScript, HTML5, and Node.js in many financial and stock trading projects.
Read more about Afshin Mehrabani

Right arrow

Chapter 10. Monitoring and Troubleshooting the Database

This is our last chapter. Here, you will learn how to manage and control the MongoDB instances, including replica sets, shards, and standalone mongod instances. We will review monitoring, profiling, and reporting utilities in MongoDB. Also, we will study the diagnostic strategies that help database administrators prevent database engine failures. Step-by-step, we will learn how to work with these utilities.

Understanding monitoring strategies


Monitoring is one of the critical tasks of database administration. Using correct monitoring tools based on the situation and context can help database administrators to provide a readily-available database engine. For instance, by configuring the correct alert messages in database high overload, the database administrator can follow an appropriate method to add a new node to the cluster or upgrade the existing server.

The good news is that MongoDB has many monitoring and profiling tools. In the previous chapters, we used some of these tools, such as profiling. In order to monitor the database, you can use different approaches based on your context. If you want to have a real-time report of a database or check the currently running tasks or read/write operations, you can use the built-in database commands or utilities.

On the other hand, in certain situations when you want to diagnose a database, you can simply use the profiling tools. These tools come in...

Introducing web-based utilities


In this section, we will go through the web-based tools and utilities to manage and control the MongoDB instance. Tools in this category are generally easy to use and configure. Using a straightforward installation, you can configure the tools and then check the reports online using a web page or mobile application.

Utilizing the MMS monitoring service

MMS is a web-based tool provided by MongoDB to facilitate the process of deployment and management of MongoDB instance. You can access MMS at https://mms.mongodb.com/.

The following is a screenshot of the MMS monitoring service:

If you have a small MongoDB instance, you can use this tool for free. Moreover, to get more information about pricing, you can check the price list at https://mms.mongodb.com/pricing.

The MMS system supports all types of MongoDB instances, including standalone, sharded cluster, master/slave, and replica set.

The following list shows the main features of the MMS management tool:

  • Supports all...

Introducing FusionReactor


FusionReactor is a real-time management tool. It provides a plugin to manage database engines. Using this tool, you can manage your MongoDB instance in a simple manner.

In order to access this tool, visit http://www.fusion-reactor.com/. The home page of FusionReactor is shown in the following screenshot:

The major features of FusionReactor are as follows:

  • Real-time dashboard: FusionReactor has a real-time dashboard with a lot of plugins. You can simply manage and arrange them in your required order. The following screenshot shows the dashboard of FusionReactor:

  • In-detail reports: Using in-detail reports, you can view everything about your MongoDB instance.

FusionReactor doesn't offer any free plans, but you can check the pricing at http://www.fusion-reactor.com/pricing/.

Note

MongoDB has many other administration tools and you can find a detailed list by visiting http://docs.mongodb.org/ecosystem/tools/administration-interfaces/.

Introducing self-hosted utilities


There are many open source management utilities for MongoDB. You can download and install them on your machine. The following table shows the description and website for each of these tools:

Summary


In this chapter, we introduced management and administration tools. Using these tools, you can ease the management process.

First of all, you learned all the major methods of managing a MongoDB instance, including profiling, using database logs, utilizing built-in management tools, and using web-based utilities to manage an instance.

Then, you learned how to work with the profiler in a database to diagnose and find slow operations. Then, you worked with built-in reporting tools such as mongotop or mongostat. These tools are easy to use and handy to monitor instance statistics.

Also, you studied how to use and execute database commands to get reports from active databases or collections. These commands are dbStats, collStats, and so on. Then, you learned how to use and read database logs to find issues in the running instances and diagnose it.

Moreover, you studied some web-based tools that are useful to easily manage a MongoDB instance remotely. You can now define your alerts or create...

lock icon
The rest of the chapter is locked
You have been reading a chapter from
MongoDB High Availability
Published in: Jul 2014Publisher: ISBN-13: 9781783986729
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
undefined
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime

Author (1)

author image
Afshin Mehrabani

Afshin Mehrabani is an open source programmer. He is studying to be a computer software engineer. He started programming and web development when he was 12 years old, as well as starting with PHP. Later, he joined the Iran Technical and Vocational Training Organization. He secured the first place and received a gold medal in a competition which was conducted across the entire country in the area of web development. He became a member of the Iran National Foundation of Elite after producing a variety of new programming ideas. He was a software engineer at the Tehran Stock Exchange and is now the head of the web development team in the Yara Company. He cofounded the Usablica team in early 2012 to develop and produce usable applications. He is the author of IntroJs, WideArea, flood.js and some other open source projects. He has contributed to Socket.IO, Engine.IO, and some other open source projects. He is also interested in creating and contributing to open source applications, writing programming articles, and challenging himself with new programming technologies. He has written different articles about JavaScript, Node.js, HTML5, and MongoDB that have been published on different academic websites. Afshin has 5 years of experience in PHP, Python, C#, JavaScript, HTML5, and Node.js in many financial and stock trading projects.
Read more about Afshin Mehrabani

Tool name

Description

Website

Robomongo

This is a shell-centric cross-platform MongoDB management tool.

http://robomongo.org/

mtop

mtop for MongoDB is a tool that is similar to top.

https://github.com/beaufour/mtop

Nagios

Nagios offers complete monitoring and alerting for servers, switches, applications, and services.

http://www.nagios.org/

Zabbix

This enterprise-class monitoring solution. This is a useful tool to monitor resources, servers' health and performance.

http://www.zabbix.com/

Motop

This is a real-time monitoring tool. It shows the current operations ordered by durations every second.

https://github.com/tart/motop

Ganglia

This is a scalable distributed monitoring system for high-performance computing systems.

http...