Skip to main content
Version: ⭐ 22.04

Upgrade from Centreon 20.04

This chapter describes how to upgrade your Centreon platform from version 20.04 to version 22.04.

When you upgrade your central server, make sure you also upgrade all your remote servers and your pollers. All servers in your architecture must have the same version of Centreon. In addition, all servers must use the same version of the BBDO protocol.

If you want to migrate your Centreon server to Oracle Linux / RHEL 8 you need to follow the migration procedure

To perform this procedure, your MariaDB version must be >= 10.3.22. If not, please follow before the MariaDB update chapter

Prerequisites​

Perform a backup​

Be sure that you have fully backed up your environment for the following servers:

  • Central server
  • Database server

Update the RPM signing key​

For security reasons, the keys used to sign Centreon RPMs are rotated regularly. The last change occurred on October 14, 2021. When upgrading from an older version, you need to go through the key rotation procedure, to remove the old key and install the new one.

Update to the latest minor version​

Update your platform to the latest available minor version of Centreon 20.04.

Upgrade the Centreon Central server​

Since 21.04, Centreon uses MariaDB 10.5.

This upgrade process will only upgrade Centreon components first.

MariaDB will be upgraded afterwards.

Update the Centreon repository​

Run the following commands:

yum install -y https://yum.centreon.com/standard/22.04/el7/stable/noarch/RPMS/centreon-release-22.04-3.el7.centos.noarch.rpm

If you are using a Business edition, install the correct Business repository too. You can find it on the support portal.

Upgrade PHP​

Centreon 22.04 uses PHP in version 8.0.

First, you need to install the remi repository:

yum install -y yum-utils
yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm

Then, you need to enable the php 8.0 repository

yum-config-manager --enable remi-php80

Upgrade the Centreon solution​

Make sure all users are logged out from the Centreon web interface before starting the upgrade procedure.

If you have installed Business extensions, update the Business repository to version 22.04. Visit the support portal to get its address.

Stop the Centreon Broker process:

systemctl stop cbd

Delete existing retention files:

rm /var/lib/centreon-broker/* -f

Clean yum cache:

yum clean all --enablerepo=*

Then upgrade all the components with the following command:

yum update centreon\*

Accept new GPG keys from the repositories as needed.

The PHP timezone should be set. Run the command:

echo "date.timezone = Europe/Paris" >> /etc/php.d/50-centreon.ini

Replace Europe/Paris by your time zone. You can find the list of supported time zones here.

Execute the following commands:

systemctl stop rh-php72-php-fpm
systemctl disable rh-php72-php-fpm
systemctl enable php-fpm
systemctl start php-fpm

Update your customized Apache configuration​

This section only applies if you customized your Apache configuration. When upgrading your platform, the Apache configuration file is not upgraded automatically: the new configuration file brought by the rpm does not replace tha old file. You must copy the changes manually to your customized configuration file.

Run a diff between the old and the new Apache configuration files:

diff -u /opt/rh/httpd24/root/etc/httpd/conf.d/10-centreon.conf /opt/rh/httpd24/root/etc/httpd/conf.d/10-centreon.conf.rpmnew
  • 10-centreon.conf (post upgrade): this file contains the custom configuration. It does not contain anthing new brought by the upgrade, e.g. the authentication string in the LocationMatch directive
  • 10-centreon.conf.rpmnew (post upgrade): this file is provided by the rpm; it contains the authentication string, but does not contain any custom configuration.

For each difference between the files, assess whether you should copy it from 10-centreon.conf.rpmnew to 10-centreon.conf.

In particular, make sure your customized Apache configuration contains the following directive (with authentication).

<LocationMatch ^\${base_uri}/?(authentication|api/(latest|beta|v[0-9]+|v[0-9]+\.[0-9]+))/.*$>
ProxyPassMatch "fcgi://127.0.0.1:9042${install_dir}/api/index.php/$1"
</LocationMatch>

If you were using the Web SSO authentication, some extra configuration steps are required. Refer to the release note.

Upgrade the MariaDB server​

The MariaDB components can now be upgraded.

Refer to the official MariaDB documentation to know more about this process:

https://mariadb.com/kb/en/upgrading-between-major-mariadb-versions/

Update the Centreon repository​

This step is required ONLY when your environment features an architecture with a dedicated remote DBMS. If your environment features Centreon Central and MariaDB together on the same server, you SHOULD simply skip this step.

Run the following command on the dedicated DBMS server:

yum install -y https://yum.centreon.com/standard/22.04/el7/stable/noarch/RPMS/centreon-release-22.04-3.el7.centos.noarch.rpm

Upgrading MariaDB​

You have to uninstall then reinstall MariaDB to upgrade between major versions (i.e. to switch from version 10.3 to version 10.5).

  1. Stop the mariadb service:

    systemctl stop mariadb
  2. Uninstall the current version:

    rpm --erase --nodeps --verbose MariaDB-server MariaDB-client MariaDB-shared MariaDB-compat MariaDB-common
  3. Install version 10.5:

    yum install MariaDB-server-10.5\* MariaDB-client-10.5\* MariaDB-shared-10.5\* MariaDB-compat-10.5\* MariaDB-common-10.5\*
  4. Start the mariadb service:

    systemctl start mariadb
  5. Launch the MariaDB upgrade process:

    mysql_upgrade

    If your database is password-protected, enter:

    mysql_upgrade -u <database_admin_user> -p

    Example: if your database_admin_user is root, enter:

    mysql_upgrade -u root -p

    Refer to the official documentation for more information or if errors occur during this last step.

Enable MariaDB on startup​

Execute the following command:

systemctl enable mariadb

Finalizing the upgrade​

Before starting the web upgrade process, reload the Apache server with the following command:

systemctl reload httpd24-httpd

Then log on to the Centreon web interface to continue the upgrade process:

Click on Next:

image

Click on Next:

image

The release notes describe the main changes. Click on Next:

image

This process performs the various upgrades. Click on Next:

image

Your Centreon server is now up to date. Click on Finish to access the login page:

image

If the Centreon BAM module is installed, refer to the upgrade procedure.

Post-upgrade actions​

  1. Upgrade extensions. From Administration > Extensions > Manager, upgrade all extensions, starting with the following:

    - License Manager,
    - Plugin Packs Manager,
    - Auto Discovery.

    Then you can upgrade all other commercial extensions.
  2. Set the following rights on Broker and Engine files:

    chown apache:apache /etc/centreon-engine/*
    chown apache:apache /etc/centreon-broker/*
    su - apache -s /bin/bash -c umask
  3. Deploy the configuration.

  4. Restart Centreon processes:

    systemctl restart cbd centengine centreontrapd gorgoned

Upgrade the Remote Servers​

This procedure is the same as for upgrading a Centreon Central server.

At the end of the update, configuration should be deployed from the Central server.

Upgrade the Pollers​

Update the Centreon repository​

Run the following command:

yum install -y https://yum.centreon.com/standard/22.04/el7/stable/noarch/RPMS/centreon-release-22.04-3.el7.centos.noarch.rpm 

Upgrade the Centreon solution​

Clean yum cache:

yum clean all --enablerepo=*

Upgrade all the components with the following command:

yum update centreon\*

Accept new GPG keys from the repositories as needed.

Start and enable gorgoned:

systemctl start gorgoned
systemctl enable gorgoned

Restart centengine:

systemctl restart centengine

Secure your platform​

Don't forget to secure your Centreon platform following our recommendations