What is a RabbitMQ Node?
A RabbitMQ cluster is a logical grouping of one or several nodes, each sharing users, virtual hosts, queues, exchanges, bindings, runtime parameters and other distributed state. A client can connect to any node and perform any operation. Nodes will route operations to the queue master node transparently to clients. In case of a node failure, clients will be able to reconnect to a different node, recover their topology and continue operation. RabbitMQ’s High Availability is achieved by mirroring the queues across different RabbitMQ Nodes in a cluster.
Why Monitor a RabbitMQ Node?
eG Enterprise is capable of monitoring RabbitMQ clusters out-of-the-box. eG's intelligent agents can instantly detect and promptly alert administrators to issues in the availability, status, and performance of a cluster as a whole and also of individual nodes, exchanges, queues, and virtual hosts in the cluster. However, these are performance metrics that are specific to RabbitMQ and collected at cluster or node level. There are system level metrics that are node specific which cannot be captured through RabbitMQ cluster monitoring. Infrastructure or kernel metrics are also called “system metrics” and basically concern the node running RabbitMQ. They’re not specific to RabbitMQ and provide only the general health of the node. Kernel metrics, such as CPU, IO, and memory, need to be monitored to understand the nature of a bottleneck. For example, high IO operations could mean that the queues are getting too large or there might be a need for more nodes. This is exactly where eG Enterprise helps administrators. eG offers a specialized RabbitMQ Node monitoring model that monitors the system metrics and promptly alert administrators on any bottleneck conditions.