Lead Image © Endrille, Fotolia

Lead Image © Endrille, Fotolia

Monitor your network

Pandora's Box

Article from ADMIN 58/2020
By
Use the open source Pandora FMS monitoring server to keep an eye on all the computers and network devices in your realm.

The Pandora Flexible Monitoring Solution (FMS) [1] is a full-featured network monitoring system. It equips system and network administrators with an information-rich dashboard that they can use to monitor all kinds of servers within their networks. Additionally, the Pandora FMS administration interface allows you to quickly identify and take stock of areas that are in critical need of attention.

With its wide array of capabilities and reporting tools, Pandora FMS edges out the competition. However, while it is relatively easy to set up, you'll need to spend some time familiarizing yourself with its interface. Although it isn't the most intuitive monitoring server out there, you'll soon learn your way around the interface's nooks and crannies.

Pandora FMS is available in two flavors: an open source community edition and an Enterprise version that differs in terms of price and features [2]. In this tutorial, I'll stick to the freely available open source edition, which does a nice job of showcasing the monitoring server's features.

Pandora FMS is developed in Perl. While the community edition uses the MySQL database, the Enterprise edition uses the Percona Server for MySQL. Written in PHP, the web console is a multi-tenant service that can be accessed by multiple users with different profiles.

Roll Out the Server

While you can deploy Pandora FMS on all kinds of operating systems, including Windows, Linux is its preferred environment. Also, while CentOS 7 is its distribution of choice, the project has installation packages for Debian and SUSE Linux as well.

The monitoring server doesn't have very high resource requirements. For a small test, you can make do with a single-core 2GHz server with 4GB of RAM and a 40GB hard disk. With this environment, you can monitor several hundred servers without much trouble, as per its official documentation.

The easiest and recommended way to install Pandora FMS is to use the ISO image, which contains a CentOS 7 installation with all the dependencies. You can grab the 1.5GB ISO from the project's website, which you can then use to either install the monitoring server on real hardware or inside a virtual machine (VM) manager, such as VirtualBox.

I recommend testing the monitoring by deploying Pandora FMS inside a disposable VirtualBox VM. But before you do, make sure the VM has a permanent IP address. The best way to do this is to lock the IP address to the MAC address of the virtual network in your network router's configuration. For this tutorial, I'll use 192.168.0.11 as the IP address of the Pandora FMS server.

Once you've earmarked the IP address for the server, you can set about installing it. The setup process is fairly straightforward. Simply boot the ISO image and proceed to the guided setup, which is a standard CentOS installation process available in several languages. While you can go with the default option for most of the steps, pay special attention to the hard drive partitioning step. It is recommended to assign the entire machine to the Pandora FMS server. So make sure you dedicate the entire hard disk to the server and use the option to have the partitions created automatically. Now wait for the installer to copy the files after which it will automatically reboot the computer.

If you wish to install Pandora FMS inside an existing server or inside a Docker container, you can refer to its online guide [3] that details the exact steps for each of the supported installation mechanisms.

Field Agents

In Pandora FMS parlance, an agent is an application that retrieves information from computers and devices in your network that you want to be monitored. Pandora FMS has two types of agents: software agents and remote agents.

Software agents perform checks on a computer's resources, such as its CPU, RAM, storage devices, and more, as well as its installed servers and services, such as Apache web server, MySQL or MariaDB database server, and more. The software agents collect data and send it to the Pandora FMS server in the XML format using one of the supported protocols, namely SSH, FTP, NFS, and more.

On the other hand, remote agents monitor machines on which you can't install the software agents. The remote agents are instead deployed in the Pandora FMS server itself and fetch information from the remote network devices using one or several popular protocols including ICMP, TCP, SNMP, or WMI depending on the device and the type of information you want to retrieve. For more details on remote agents, refer to the official documentation [4].

Deploy Agents

You'll have to manually install the software agents by grabbing the binaries for the latest version from the project's SourceForge page [5] (version 747 at the time of writing this tutorial). The project hosts binaries for Debian/Ubuntu, RHEL/CentOS, SUSE, and Windows. There's also a source tarball that you can use to install the agent on other distributions, such as Arch Linux.

To install the binary, just download and install it with the distro's package manager, such as Debian's dpkg or CentOS 7's yum.

After the agent is installed successfully, you'll need to configure it to point it to the Pandora FMS server. Irrespective of the distro, all agents keep their configuration file under the /etc/pandora/ directory. You can edit the file by opening it in a text editor as follows:

# nano /etc/pandora/pandora_agent.conf

Scroll through the file and look for the server_ip parameter, which should be located under the General Parameters section. Change the current value to the IP address of your Pandora FMS monitoring server (192.168.0.11 for this tutorial).

Now save the file with Ctrl+O and exit nano with Ctrl+X. You can then run through the gamut of systemctl commands to enable the service to start automatically upon boot and then start it manually with:

# systemctl enable pandora_agent_daemon.service
# systemctl start pandora_agent_daemon.service

You can similarly install agents on all your Linux machines. The installation process for the Pandora agent for Windows machines is fairly intuitive. Keep an eye out for the agent's installation directory, since you'll have to navigate to it to edit the pandora_agent.conf configuration file to point the agent to your Pandora FMS server.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy ADMIN Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Monitor Windows systems and Linux servers
    The Microsoft Operations Management Suite provides a comprehensive monitoring solution in the cloud that offers a high degree of flexibility and scalability.
  • Migrating to Azure Monitor Agent
    The replacement for the Log Analytics Agent has improved security and cost efficiency, better manageability, and greater reliability – and you must migrate to this new solution by the end of 2024.
  • Mobile PC Monitor

    Monitoring your internal server environment just became easier with MMSOFT Design’s Mobile PC Monitor software.

  • Monitor Active Directory with Azure AD Connect Health
    Microsoft cloud service Azure Active Directory Connect Health supports monitoring of Active Directory, especially in large and distributed environments, but the tool is also useful for monitoring hybrid landscapes using Azure Active Directory.
  • Total Network Monitor

    Even Windows doesn’t have to have an expensive network monitoring tool. The free Total Network Monitor helps you keep an eye on your network.

comments powered by Disqus
Subscribe to our ADMIN Newsletters
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs



Support Our Work

ADMIN content is made possible with support from readers like you. Please consider contributing when you've found an article to be beneficial.

Learn More”>
	</a>

<hr>		    
			</div>
		    		</div>

		<div class=