Upgrades and updates

Warp Update (Update Manager)

From version 763, Pandora FMS will be able to check online whether there is an update and, upon request, download it and automatically update your Web Console.

If you have version 762 (or earlier) installed, use Update Manager.

This update has the following features:

  • You will need to be connected to the Internet from your Pandora FMS Console.
  • Warp Update will contact our servers to find the latest version available (on Sourceforge). It will send anonymous statistical usage data (number of Agents).
  • Updates are the entire content of the Web Console, so the process can be quite long.
  • The updates are automatic and in 99% of the cases it should work properly, although there is no guarantee that it will.
  • You may also update offline if the PFMS server to be updated is in a restricted and/or limited environment.

Warp Update Online

In order to update through Warp Update online, you must be registered. Enter your email and click Ok!:

In a few seconds Warp Update will connect to our servers and analyze what updates are needed. If it is up to date, it will show the active version in progress, without the need to carry out any other action.

Warp Update Offline

Enterprise versionFor Enterprise environments you may upgrade offline. Contact the support department to download the files.

Once downloaded, go to the menu ►Warp UpdateWarp Update Offline and click ♦Browse it (there is also the option to drag and drop the file).

Applying offline patches may deem your console unusable, we recommend you to completely backup your files before applying any patches.


You will see something similar to the previous image where the changes are listed, click on the green icon located on the lower right corner to continue. Your Pandora FMS server will be up to date.

Important: If you upgrade offline from version 768 to 769 and use CentOS 7 with your PFMS server, set the memory_limit token to 1G (one gigabyte) in the php.ini file. For example, you may use the following instruction:

sed -i -e "s/^memory_limit.*/memory_limit = 1G/g" /etc/php.ini

Save and restart the Apache service with systemctl restart httpd.

Warp Update Journal

Go to ►Warp UpdateWarp Update Journal menu to find out the updates made, version, date and time of application, user who requested and applied it, etc.

Thoughout time many records will be accumulated, which you may filter by expanding the Filter box and entering the keyword to search for.

Warp Update Setup

The default values are useful in most cases, however they can be changed.

Enterprise version: Contact support before changing any of the following fields:

  • Warp Update URL.
  • Use secured Warp Update.
  • Proxy server.
  • Proxy port.
  • Proxy user.
  • Proxy password.

  • Allow no-consecutive patches: It allows non-consecutive updates to be installed. Disabled by default and it is the recommended option.
  • Limit to LTS updates: It allows you to update only long-term versions (LTS).

When you finish entering the changes, save the values by clicking Update.

Manual Update

It is important to understand the basic components in which Pandora FMS is divided. There are three main elements: console, server and database.

In Opensource installations, these three components are quickly updated, but in Enterprise' installations the process will take a few more steps, since the components have extended Enterprise features that need to be updated separately.

The component breakdown is as follows:

Opensource installations:

  • Web Console.
  • Server.
  • Database.

Enterprise versionAs for Enterprise installations:

  • Open Web Console.
  • Enterprise Web Console (extended console features).
  • Open Server.
  • Enterprise Server (extended server features).
  • Database (additional charts of the Enterprise version).

Updates will always include console changes, sometimes server changes, and once in a while database changes. Let us organize the updates into two major categories: minor version upgrades, with no database changes, and major version upgrades, with database changes. More information can be found in the video tutorial «How to update your Pandora FMS environment using RPM and Tarball packages».

Update a minor version

These do not include any changes in the database, only in the console and sometimes in the server. E.g. updates 6.1 SP1 to 6.1 SP2.

Initial precautions: here you have the detailed procedure to backup and restore Pandora MFS. However, here is a summary of the backup procedure:

1. Back up the database. E.g.:

mysqldump -u root -p pandora> backup_pfms_X.Y.sql

2. Back up the config files: pandora_server.conf, config.php and pandora_agent.conf.

3. Back up server and agent plugins, at:

/etc/pandora/plugins
pandora_console/attachment/plugin
/usr/share/pandora_server/util/plugin

4. Suspend the following services: pandora_server, tentacle_serverd, httpd, pandora_agent and mysqld.

5. Proceed to update.

From RPM packages

Go to https://firefly.pandorafms.com/pandorafms/ and download the version after the one you have installed.

  • Open console update:
rpm -U pandorafms_console*.rpm
  • Enterprise versionEnterprise console update:
rpm -U pandorafms_console_enterprise_package.rpm
  • Open server update:
rpm -U pandorafms_server*.rpm
  • Enterprise versionEnterprise server update with tar.gz:
tar -xvzf pandorafms_server_enterprise_package.tar.gz
cd pandora_server
./pandora_server_installer --install
  • Software Agent update:
rpm -U pandorafms_agent*.rpm

You can find out which version you have installed at any time, before or after the installation by executing the command:

rpm -qa | grep -i pandora

From Tarball / Sources

Go to https://firefly.pandorafms.com/pandorafms/ and download the following version after the one you have installed.

  • Open Source console update:
tar xvzf pandorafms_console_package.tar.gz
cd pandora_console
./pandora_console_upgrade -p /yourconsolepath
  • Enterprise versionEnterprise console update:
tar xvzf pandorafms_console_enterprise_package.tar.gz
cd pandora_console
./pandora_console_upgrade -p /yourconsolepath
  • Open Source server update:
tar xvzf pandorafms_server_package.tar.gz
cd pandora_server
./pandora_server_upgrade --upgrade
  • Enterprise versionEnterprise server update:
tar xvzf pandorafms_server_enterprise_package.tar.gz
cd pandora_server
./pandora_server_upgrade --upgrade
  • Software Agent update:
tar xvzf pandorafms_agent_package.tar.gz
cd pandora_agent
./pandora_agent_installer --force-install

Version 7.0NG ( Rolling Release )

If you choose to update manually the Pandora FMS Console in version 7.0NG, (through rpm, tarball or deb) you may have to manually apply the migration scripts between the different versions. To avoid this situation, in version 7 it is always recommended to update the console using Update Manager.

In case of having an outdated database (a rare error that should not take place under normal circumstances), administrator users will see a warning on the notification tab indicating this problem:

To solve this problem, enter the server where the Pandora FMS console is installed and go to the directory:

/var/www/html/pandora_console/extras/mr

There should be another directory located within labeled as updated. All sqls that are already applied must be stored there, and those that are not must be stored outside. So once an sql is applied to the database, move them to the updated directory.

MR1 execution will serve as example. In this case, there is no MR applied on the database and the MR0 will appear in the footer of the Pandora FMS console. Version 704 has been manually installed and the MR1 must be applied executing the sql found at /var/www/html/pandora_console/extras/mr/ called 1.sql. Execute it like this:

[[email protected] mr]# cat 1.sql | mysql -u root -p pandora

The MySQL user is root and the database is labeled as pandora.

Once applied, update the MR value in the tconfig table of MySQL to change the footer value to the current one. Execute the following command once entered MySQL:

mysql -u root -p pandora> use pandora;> update tconfig set value= XX where token='MR';

Once done, the warning message will disappear from the Console and in the footer, the MR1 will appear as applied. The next step is to move the sql to the updated folder.

[[email protected] mr]# mkdir -p updated
[[email protected] mr]# mv 1.sql updated/

To know which MRs should be applied, please go to the next link.

Major release update

Major release updates always include database changes, so you need to update your database schema, e. g. updates from version 6.0 to 6.1; or 6.1 to 7.0.

Always keep in mind that when upgrading from Pandora FMS version 6.0 you will only be able to migrate up to version 7.0 NG 759. From there you will have to keep upgrading to successive versions (consult the PFMS version history to apply the corresponding MR's after you have migrated to version 759).

Database updates ("Major releases")

In order to update the database, first update the Open or Enterprise console, depending on your version. These updates allow the necessary sql files to be downloaded.

Once the console is up to date, the sql scripts of the database update can be found in /extras or /enterprise (again, depending on your version) on the console. On a standard CentOS installation they can be found at:

/var/www/html/pandora_console/extras/pandoradb_migrate_X.Y_to_Z.T.mysql.sql
/var/www/html/pandora_console/enterprise/pandoradb_migrate_vX.Y_to_vZ.T.mysql.sql

Before updating, it is recommended to follow the precautions described above: back up the database and the config files, and suspend the Pandora FMS server:

service pandora_server stop
  • Open database update:
mysql -u username -p -D databasename

E. g.:

mysql -u pandora -p -D pandora

Execute the following from MySQL command-line:

source /yourconsolepath/extras/pandoradb_migrate_X.Y_to_Z.T.mysql.sql;

When executing the Open version migration, the Enterprise version will also be updated.

To exit the MySQL client, execute quit. The database is now updated to the correct version.

In case you need to go back to a previous version, you can restore the backed up database by means of this procedure:

mysql -u username -p databasename> drop database databasename;> create database newdatabasename;
> use newdatabasename;
> source backup_pfms_X.Y.sql

E. g.:

mysql -u root -p pandora> drop database pandora;> create database pandora;
> use pandora;
> source backup_pfms_X.Y.sql;

Automatic update with Update Manager

More information can be found in the video tutorial «Update Manager |Pandora FMS|».

OpenSource updates

From version 4.0.2 onwards, Pandora FMS (Opensource version) allows semi-automatic weekly updates, based on improvements in the Update Manager system (previously exclusive to Enterprise). It allows an online query to be carried out, to find out if there is an update available and, if so, download it and automatically update the console.

Updates feature the following characteristics:

  • An outgoing Internet connection from the Pandora FMS console is necessary.
  • Update manager contacts our servers to find the latest version available (in Sourceforge). It sends statistical data on the number of agents used (the data is anonymous).
  • It downloads the update from Sourceforge, from the directory of weekly updates.
  • Weekly updates are not incremental, but the total content for the console, which means the download process could take a while (packet size is approximately 25MB).
  • Updates are automatic: they are not checked by the team, and cannot be guaranteed. However, in 99% of cases they present no issues.
  • Updates are only for the console, not for agents or server.

Console update process

It is fairly simple. Go to Update managerUpdate manager online. On the main screen you will see if there are any pending or available updates, plus the latest console version.

If there is any update, click Ok to install it. After downloading the package, a dialog will appear with the option to accept or reject the update.

Click Ok to begin the installation process.

Some updates contain database modifications. The update process launches a dialog to inform about these changes, as in the following screenshot:

At this point there are two possibilities, either applying the changes to the database and updating the console, or rejecting the update, so that nor the database nor the console are updated, since some changes in the console need the according changes in the database.

To use Update Manager, you need an outgoing Internet connection. It uses WGET by default to download packets, you can use the CURL method (this must be changed in the Pandora FMS configuration) but it is slower.

After the process, the main update page will appear with the updated console version displayed. Congratulations, you have successfully updated your version!

Enterprise updates

Unlike Open updates, these have some additional characteristics:

  • 100% tested by our in-house development team, so you can take advantage of the latest updates (even hours after opening an incident, in some cases).
  • Specific updates (incremental) that only update out-of-date elements, without downloading heavy packages.
  • It allows offline updates, downloading packages from the support page, for Pandora FMS installations that do not have an Internet connection (for security reasons).

Configuration

To be able to use Update Manager in the Enterprise version, first the updater must be correctly configured, which has its own section in the menu:

Online updates

Update Manager is available in the Update Manager. If you have the Enterprise version installed, you may use this interface, otherwise the one to appear will be that of the Open version.

From this page, you can see the current version of Pandora FMS, plus any new updates available.

To update to the last version, click on the link that shows the image in your Pandora FMS console.

A dialog will appear giving the option to continue or not.

If you click Continue, two things can happen: either the console will be updated and the process will finish; or, the update may include database changes and a dialog will appear asking whether you want to update the database or not.

If you decide to update it, the process will continue in a normal way, but if you reject it, neither the database nor the console will be updated, since some changes in the database can have critical importance in changes to the console in that same update.

After, the updater will appear with the current version installed on Pandora FMS.

Offline updates

Enterprise versionOffline Pandora FMS updates can also be downloaded, which have .OUM extensions. Go to the official Pandora FMS support page to download them.

Upload them to the console with the following control:

Once uploaded, the file will appear. We can click on it to start the update.

The update follows the same operation flow as online downloads, displaying the corresponding console and database update dialogs, if there are any changes to be applied there.

The Pandora FMS Console can be updated in the same way as with the OUMs, using zip files created by our team.

In case of updating an installation with High Availability (HA), it will be necessary to take into account what is indicated in this section.

Additional PHP engine configuration for Update Manager

For Open Update Manager to run correctly, it needs more memory than the default memory it takes. To assign more memory to the PHP run, and make the Open Update Manager work, you must edit the php. ini file and set the memory to at least 800M.

The line is:

memory_limit = 800M    ; Maximum amount of memory a script may consume

To find out the location of the file php.ini execute:

php -i | grep php.ini

Also, depending on Pandora FMS version you have installed, you may get the information to update to version PHP 7 here.

Migrating to another system

There can be many reasons to move a PFMS server and its Web Console, which are usually on the same machine, real or virtual.

Possible examples:

  • A new version of Pandora FMS may require a different operating system, for example, migrating from CentOS 7 to Rocky Linux 8 or from CentOS 8 to RedHat Enterprise (RHEL) 8.
  • It could also be the case of switching from one web service provider to another: less data is used by Pandora FMS than making an image of the entire operating system.
  • In case of audits or to test new features, it is necessary to have a copy of the main server.

Procedure:

Note: Generally the full path to the PFMS Web Console is /var/www/html/pandora_console and in the following instructions it is abbreviated as $CONSOLE_PATH .

1.- Make a backup of the database of the previous system. There are several steps, open a terminal window with administrator rights (root user):

  • Start by making a logical copy of the database with the following command:
mysqldump --single-transaction --max_allowed_packet=512M -u root -p pandora> backup_pandora_X.Y.sql
  • The resulting file ( backup_pandora_X.Y.sql ) will be compressed with the following data in order to have a single file for the migration. For example backup_pandora_X.Y.tar.gz , compressed format which preserves the intrinsic values of each file.
  • Compress all existing configuration files in the directory /etc/pandora/*.conf .
  • Compress the entire directory and subdirectories of $CONSOLE_PATH/attachment/ .
  • Custom images and icons in $CONSOLE_PATH/images/ , if any.
  • Compress the whole directory /var/spool/pandora/data_in/ .
  • Compress all server plugins located at /usr/share/pandora_server/util/plugin/ . If you have some server plugin(s) located at another directory that is not indicated, you should also compress them.
  • Compress all dependencies installed on the source server, which are necessary for the correct operation of scripts / plugins installed on the source server and are not found on the target server. Advanced systems will need to fully install the Integrated Development Environment (IDE).
  • Compress all SSL certificates and custom Apache web server configuration located in /etc/httpd/, if any file(s) exist.

You are the only person responsible for safeguarding your data. Write down on pen and paper the procedure you will choose for migrating data. Be careful, use redundancy in backups and procedures with several people to assist you in the process.

2.- Install the new Pandora FMS system from scratch, the online installation tool is recommended.

3.- Close all the processes running in the new system, except mysql; start with Pandora FMS (from version NG 754 onwards, you have additional options in the manual for starting and stopping HA High Availability Environments):

 /etc/init.d/pandora_server stop
 /etc/init.d/pandora_agent_daemon stop
 /etc/init.d/tentacle_serverd stop

4.- Stopping the Apache server will depend on the distribution you are using:

/etc/init.d/apache2 stop
/etc/init.d/httpd stop
systemctl stop httpd.service

5.- Then send or copy, in the easiest way, the backup_pandora_X.Y.tar.gz file from the old system to the new one. Unzip the files in their corresponding places.

6.- Enter mysql with root user. Access Pandora FMS database in the new system, by default pandora and import the database.

 # mysql -u root -p
 mysql>use pandora
 Database changed
 mysql>source ~/backup_pandora_X.Y.sql

This path will vary depending on the directory where you have the backup of the previous system, here it is assumed that you have it in your home directory ($HOME).

7.- In the case of a migration to a major version, where the database structure changes, this would be the time to run the migration scripts as indicated in the major version upgrade procedure.

8.- If you made a distribution change, please note that the PATH of the Web Console has been modified and in that case there are some fields in the database that have also been modified, such as the tconfig table and its attachment_store and fontpath fields. To modify these fields, enter these queries. The example is for a migration to Rocky Linux 8; in other distributions change the Apache directory path.

# mysql -u root -p> use pandora;
  Database changed> UPDATE tconfig SET value = '/var/www/html/pandora_console/attachment' WHERE token LIKE 'attachment_store';> UPDATE tconfig SET value = '/var/www/html/pandora_console/include/fonts/smallfont.ttf' WHERE token LIKE 'fontpath';

These PATH s must also be taken into account in server and console configuration files ( config.php y pandora_server.conf ).

9.- Once the database has been migrated, they should check whether the files …/pandora_console/include/config.php and /etc/pandora/pandora_server.conf and the new ones have the same data in the fields dbname, dbuser and dbpass.

  • If they are the same, go to step 10.
  • If different, choose only one of the following options:
    • Option ( a ): Replace the new files with the old ones.
    • Option ( b ): Copy data ( dbname, dbuser and dbpass ) of the old files into the new ones.
    • Option ( c ): Give permissions to the database with the data of the new installation. Assuming that the new installation has these data: dbname=pandora, dbuser=pandora1 and dbpass=pandora2, the example takes this form:
# mysql -u root -p> grant all privileges on pandora.* to 'pandora1'@'localhost' identified by 'pandora2';> flush privileges;

10.- After this, start all the daemons again and you will be able to access Pandora FMS Console, with all the Agents, Modules, alerts, etc.

11.- If you changed the IP address or URL on the new host, all local Agents will report to this new system. For the Software Agents modify the server_ip parameter in each of them.

12.- Use, in Bulk Operations, agent editing to finalize any pending details.


If it is the Enterprise version, follow the same procedure.

Downgrade

In order to perform a downgrade, all you have to do is downgrade the version of the Pandora FMS Web Console. As a precaution, it is recommended to make a backup copy of the Pandora FMS database and configuration files, as explained in previous sections. You will always have to install the Open Source package and then the Enterprise version.

From RPM packages

  • Open Source console update:
rpm -i --force pandorafms_console_package.rpm
  • Enterprise console update:
rpm -i --force pandorafms_console__enterprise_package.rpm

From Tarball/Sources

  • Open Source console update:
tar -xvzf pandorafms_console_package.tar.gz
mv --force ./pandora_console/* /yourconsolepath
  • Enterprise console update:
tar -xvzf pandorafms_console_package.tar.gz
mv --force ./enterprise /yourconsolepath