Pandora FMS is a flexible monitoring solution for your servers, networks, virtual infrastructure, and applications. It is a Free software and released under GNU General Public License.
Pandora FMS is highly scalable, and it is very well suitable for complex, dynamic and larger environments.
Pandora FMS can be used to monitor the status and performance of servers, databases, web servers, applications and network hardware systems such as firewalls or routers.
Pandora FMS uses WMI, SNMP, TCP, UDP, ICMP, HTTP protocols and server agents to collect performance metrics. Also, it uses TCP/IP stack for monitoring the hardware systems such as load balancers, router, printer or switches.
You might be interested in,
READ: Install and Configure Nagios 4.3 on CentOS 7 / Ubuntu 16.04 / Debian 8
READ: Install Icinga2 on Ubuntu 16.04 / 14.04, Debian, and Mint
READ: Install How To Install Zabbix Server 3.2 on CentOS 7 / Ubuntu 16.04 / Debian 8
READ: Netdata – A Real Time Performance Monitoring Tool for Linux
Components of Pandora FMS:
Pandora Server:
Pandora Server is a bundle of twelve different servers, which are in charge of collecting and processing data ex. The data server processes the information sent by the agents where as The network server executes the remote monitoring tasks.
Pandora server is also responsible for inserting the gathered data into Pandora’s database and generate monitoring alerts. Pandora server can be installed on Linux and Windows operating system.
Web console:
Web console allows users to operate and manage the monitoring system. It is developed on PHP and depends on backend database and a web server. You can setup web console Linux, Solaris, Windows and AIX operating systems.
Agents:
Agents are used for collecting the performance metrics from client servers. The agent supports almost all platforms including Microsoft, AIX, Solaris, Linux, IPSO, Mac OS or FreeBSD and also SAP.
Database:
The database holds data’s gathered by agents, configuration defined by administrator, incidents, events, audit info, etc. It supports MySQL and Oracle as a database server.
System requirements:
Systems requiremensts are depends on number of monitoring agents.
Up to 500 agents – 3GB of RAM, a 2.5GHz single-core CPU and a Hard drive with 7200 RPM.
Up to 2.000 agents – 6GB of RAM, a dual core 2.5GHz CPU and a Hard drive with 10000 RPM or more.
For more than 4.000 agents – 12GB of RAM, a 3GHz quad-core CPU and a Hard drive with 15000 RPM or more.
Environment:
In this tutorial, we use two systems for demonstration, as mentioned below.
HostName | IP Address | OS | Purpose |
---|---|---|---|
server.itzgeek.local | 192.168.1.10 | CentOS 7 | Pandora Server & Pandora Console |
client.itzgeek.local | 192.168.1.20 | CentOS 7 | Client server running Pandora Agent |
Install MariaDB:
Let’s install MariaDB database server on Pandora server.
yum -y install mariadb-server
Start MariaDb service using the following command.
systemctl start mariadb
Enable MariaDB to start automatically on system start-up.
systemctl enable mariadb
Since this is a new DB setup, so we will run mysql_secure_installation command to secure MySQL instance.
Install Pandora Console:
You need to configure Pandora FMS repository for the Pandora server and console installation. Create a .repo file under /etc/yum.repos.d/ directory.
vi /etc/yum.repos.d/pandorafms.repo
Use the following repository information.
[artica_pandorafms] name=CentOS6 - PandoraFMS official repo baseurl=http://firefly.artica.es/centos7 gpgcheck=0 enabled=1
Now, install Pandora console using YUM command.
yum -y install pandorafms_console
Since Pandora console works on top of Apache web server, you need to start Apache service. Also, enable the auto start of service during system boot.
systemctl start httpd systemctl enable httpd
Firewall:
Add allow rules in the firewall to allow HTTPD port 80 accessible by external machines.
firewall-cmd --zone=public --add-port=80/tcp --permanent firewall-cmd --reload
SELinux:
Pandora console will write configurations to disk at the time of console setup. SELinux may block the writing of files, so you need to allow it in SELinux.
yum install -y policycoreutils-python semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/pandora_console/include' semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/pandora_console/attachment' restorecon '/var/www/html/pandora_console/include' restorecon '/var/www/html/pandora_console/attachment'
Setup Pandora Console:
Now, let us begin the console installation via the web browser. Open up a web browser and point to

Click Next.
Accept the license agreement.

The installer now checks for required dependencies.

Enter the root password of MySQL.

The console will create the database for Pandora server. Note down the password as you may need it later during the Pandora Server configuration.

Click Next.
Pandora console is complete, now. Remove the install.php file from the pandora_console directory.
rm -rf /var/www/html/pandora_console/install.php

Login to Pandora Console:
The default user is admin and password is pandora. Please change it as soon as you log in.

Select the language, time zone, and enter an email address for receiving alerts.

Click Finish.

Dashboard:

Install Pandora Server:
Install dependencies before installing the Pandora server.
rpm -ivh https://sourceforge.net/projects/pandora/files/Tools%20and%20dependencies%20%28All%20versions%29/RPM%20CentOS%2C%20RHEL/wmic-4.0.0tp4-0.x86_64.rpm/download rpm -ivh https://sourceforge.net/projects/pandora/files/Tools%20and%20dependencies%20%28All%20versions%29/RPM%20CentOS%2C%20RHEL/xprobe2-0.3-12.2.x86_64.rpm/download
Now, install the Pandora server using the following command.
yum -y install pandorafms_server
Add the generated password during console installation into pandora_server.conf file.
vi /etc/pandora/pandora_server.conf
FROM:
dbpass pandora
TO:
dbpass vcgujhlw
Start the Pandora server.
service pandora_server start
Output:
Pandora FMS Server 7.0NG.709 Build 170728 Copyright (c) 2004-2015 ArticaST This program is OpenSource, licensed under the terms of GPL License version 2. You can download latest versions and documentation at http://www.pandorafms.org [*] Backgrounding Pandora FMS Server process. Pandora Server is now running with PID 4656
Also, start the tentacle server.
service tentacle_serverd start
Auto-start both service on system boot.
chkconfig pandora_server on chkconfig tentacle_serverd on
Pandora agents use tentacle protocol for sending data to Pandora server. On the Pandora server, tentacle server runs on port 41121. So, we need to make tentacle port accessible for Pandora agent through a firewall.
firewall-cmd --zone=public --add-port=41121/tcp --permanent firewall-cmd --reload
Go to Pandora Console –> Server –> Manager servers.

You should see your server listed over there. The same server repeated multiple times here to represent different roles like data server, network server, etc.

Install Pandora Agent:
Perform below steps on the server you wish to monitor using Pandora FMS. Download the latest version of Pandora agent.
curl -O https://netix.dl.sourceforge.net/project/pandora/Pandora%20FMS%207.0NG/709/RHEL_CentOS/pandorafms_agent_unix-7.0NG.709-1.noarch.rpm
Install Pandora agent using the following command.
yum localinstall pandorafms_agent_unix-7.0NG.709-1.noarch.rpm
Add Pandora server IP in the client configuration file.
vi /etc/pandora/pandora_agent.conf
Mention your Pandora server IP here.
server_ip 192.168.1.10
Start/Restart the agent.
service pandora_agent_daemon start
Monitor the server:
Go back to the Pandora console. You can now see the client added to agents list.

Click on the agent to see the overview of the particular agent.

Scroll further down and click on the graph:
Network Usage:

Used Memory:

That’s All.