Pandora: Documentation en: Anexo Upgrade

From Pandora FMS Wiki
Jump to: navigation, search

Go back to Pandora FMS documentation index

1 Manual Update

It is important to understand the basic components in which Pandora FMS is divided. Basically we can distinguish: console, server and database. In Opensource installations we will update these three components quickly, but in Enterprise installations the process will take a few more steps since the components have extended Enterprise functionalities that need to be updated separately.

The breakdown of components is as follows:

Opensource installations:

  • Web Console.
  • Server.
  • Database.

Enterprise installations:

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

Updates will always include console changes, occasionally server changes, and rarely database changes. We will organize the updates into two major categories: minor version upgrades, with no database changes, and major version upgrades, with database changes.

1.1 Update a minor version

These don't include any changes to the database, only to the console and sometimes to the server. Eg. updates 6.1 SP1 to 6.1 SP2.

Initial precautions/safeguards:

1. Back up the database. E.g.

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

2. Back up the config files: pandora_server.conf, config.php, 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.

1.1.1 From RPM package

  • Open console update:
rpm -U pandorafms_console_package.rpm
  • Enterprise console update:
rpm -U pandorafms_console_enterprise_package.rpm
  • Open server update:
rpm -U pandorafms_server_package.rpm
  • Enterprise server update:
rpm -U pandorafms_server_enterprise_package.rpm

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

rpm -qa | grep -i pandora

1.1.2 From DEB packages

  • Open console update:
dpkg -i pandorafms_console_package.deb
  • Enterprise console update:
dpkg -i pandorafms_console_enterprise_package.deb
  • Open server update:
dpkg -i pandorafms_server_package.deb
  • Enterprise server update:
tar zxvf pandorafms_server_enterprise_package.tar.gz
cd pandora_server/
./pandora_server_installer --install

Should there be any dependency problems, they can be solved directly with:

apt-get install -f

1.1.3 From Tarball / Sources

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

1.1.4 Version 7.0NG ( Rolling Release )

If we decide to update manually the Pandora FMS Console in version 7.0NG, (through rpms, tarball or deb) we can find ourselves facing the need to manually apply the migration scripts between the different versions. To avoid this situation in version 7 we always recommend updating the console using Update Manager.

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

Mr message.png

To solve this problem enter the server where the Pandora FMS console is installed and go to the directory named /var/www/html/pandora_console/extras/mr. There should be another directory located labeled as 'updated'. All sqls that are already applied must be stored within the 'updated' directory, and those that are not must be stored outside. So once we apply an sql to the database, we must move them to the 'updated' directory. Let's give the example of MR1 execution. In this case we don't have any MR applied on the database and the MR0 will appear in the footer of the Pandora FMS console. We have installed version 704 manually and we have to apply the MR1 executing the sql that we will find in /var/www/html/pandora_console/extras/mr/ called 1. sql. We'll have to 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, the warning message will disappear from the Console and in the footer the MR1 appears as applied. The next step is to move the sql to the 'updated' file.

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

1.2 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.

1.2.1 Database updates ("Major releases")

In order to update the database you first need to 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's recommendable to follow the precautions described above: make a backup of 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 the MySQL command-line:

source /yourconsolepath/extras/pandoradb_migrate_X.Y_to_Z.T.mysql.sql;
  • Enterprise database update:
mysql -u username -p -D databasename

Eg.

mysql -u pandora -p -D pandora 

Execute the following from the MySQL command line:

source /yourconsolepath/enterprise/pandoradb_migrate_vX.Y_to_vZ.T.mysql.sql;

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 with:

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

E. g.

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

2 Automatic update withUpdate Manager

2.1 OpenSource updates

From version 4.0.2 onward, 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, downloading it (with authorization) 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 get the latest available version (in Sourceforge). It sends statistical data on the number of agents used (the data is anonymous).
  • 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 can 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 agents or server.

2.1.1 Console update process

It is fairly simple. Go to extensions -> Update manager. On the main screen you'll see if there are any updates pending or available to install, plus the latest console version. Click to install.

Um online open actualizar en.png

After downloading the package, a dialog will appear with the option to accept or reject the update.

Dialog um principal en.png

Click Confirm to begin the installation process.

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

Dialog hay un mr en.JPG

At this point there are two possibilities, either applying the changes to the database and updating the console, or rejecting the update, and leave the console and database as they are.

Info.png

For Update Manager to work 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 configuration) but it is slower.

 


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

Um online open finalizado.png

2.2 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 (incrementals) that only update out-of-date elements, without downloading heavy packages.
  • Allows "offline" updates, downloading packages from the support page, for Pandora FMS installations that don't have an Internet connection (for security reasons).

In order to be able to use Update Manager in the Enterprise version, first you must have the Updater correctly configured , which has its own section in the menu:

Opciones um en.png

Access Update Manager from the update section. If you have the Enterprise version installed, you can use its interface (if not, the one of the Open version will appear).

Um online pag principal en.JPG

From this page you can see the version of Pandora FMS you are currently using, 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 with the option to continue or not.
Dialog um principal en.png

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

Dialog hay un mr en.JPG

If we decide to update it, the process will continue in a normal way, but if we 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.

2.2.1 "Offline" updates

"Offline" 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:

Um offline pag principal en.png

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

Um offline pag principal cargado en.png

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.

Info.png

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

 


2.3 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 256M.

The line is:

memory_limit = 256M	; Maximum amount of memory a script may consume (16MB)

Generally on Debian/Ubuntu systems, this file may be found here: /etc/php5/apache2.

http://wiki.pandorafms.com/index.php?title=Pandora:Documentation_en

3 Migrating to another system

We can encounter the circumstance that we want to use a new version of Pandora in another different or newer system or distribution , for example, migrating from a SUSE 11 to a SUSE 12 or from an Ubuntu to CentOS.

For this, all we have to do is install Pandora FMS from scratch in the new system , or download the ISO that we provide and install it.

1. When Pandora FMS is running on the new system, back up the previous system's database:

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

2. Then, send the backup_pandora_X.Y.sql file from the oldd system to the new one.

3. Close all running processes except MySQL.

/etc/init.d/pandora_server stop 
/etc/init.d/pandora_agent_daemon stop 
/etc/init.d/tentacle_serverd stop 
/etc/init.d/apache2 stop  o /etc/init.d/httpd stop (for apache servers, this will vary depending on the distribution you're using)

4. Enter MySQL as root user. Access the Pandora FMS database on the new system (¨pandora¨by default) and import the database.

#mysql -u root -p
mysql>use pandora
Database changed
mysql>source /home/artica/backup_pandora_X.Y.sql ( this path will vary depending on the directory where the backup is stored )

5. In the case of a migration to a higher version in which the database structure changes, this would be the time to run the migration scripts as indicated in the major version update procedure.

6. If we've changed to a different distribution, keep in mind the console path has also changed and some database fields will be different, such as tconfig "attachment_store" and "fontpath". To modify these fields, introduce these queries. In the example you can see how a migration to CentOS would look. For other distributions, just change the Apache directory path.


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

Keep these paths in mind in relation to server and console configuration (config.php and pandora_server.conf)

7. Once the database is migrated check that the previous .../pandora_console/include/config.php and /etc/pandora/pandora_server.conf files and the new ones contain the same data in the dbname, dbuser, dbpass fields. If they are the same you don't need to do anything. If not, we can do one off these two things :

a. Replace the new files with the old ones or replace the data of the new files for the old ones.

b. Give the database permissions with the data from the new installation. E. g. with the following data; dbname=pandora, dbuser=pandora1 and dbpass=pandora2, like this:

#mysql -u root -p
mysql>grant all privileges on pandora.* to 'pandora1'@'localhost' identified by 'pandora2';
mysql>flush privileges;

Restart the daemons and access the Pandora FMS console, including all agents, modules, alerts, etc. already configured and, if you change the IP of the new host for the previous, all the local agents will report to the new system.

Follow the same process for theEnterprise version.

4 Windows client update from installer

In the installation executable of the console and the server there is a new option that allows to update Pandora FMS if a previous version is installed in the computer.

Start the installer (. exe) as if you were going to perform an installation frorm scratch and select the language:

Pandora agent 3.0 RC3 install windows 01.png

Follow the steps in the installer:

Pandora server install windows 01.png

Accept the Terms and Conditions:

Pandora server install windows 02.png

In the Select components section, select only the option to update the version installed.

Pandora server update windows 01.png

Select the necessary installation path and continue. The installer will ask for the IP and the name of the Pandora FMS server.

Pandora server install windows 05.png

Start installing the components. A warning will appear reminding you that Microsoft Visual C++ is required for the modules to function correctly.

Pandora server install windows 06 2.png

Click Finish for the installation to complete.

Pandora server install windows 08.png

Pandora FMS is now updated and ready to use.

Info.png

Following these steps the Pandora FMS code will be updated to the latest version, among which is the substitution of Apache for Nginx as web server. If you want to keep the installation with Apache, update the console with OUM packets or Update Manager Online.