Using packages
Centreon provides RPM packages for its products through the Centreon Open Sources version available free of charge in our repository.
These packages have been successfully tested in CentOS 7 and 8 environments.
Due to Red Hat's stance on CentOS 8, we suggest not to use said version for your production environment. Nevertheless, these packages for CentOS 8 are compatible with RHEL 8 and Oracle Linux 8 versions.
After installing your server, consider updating your operating system via the command:
- RHEL / CentOS / Oracle Linux 8
- CentOS 7
dnf update
yum update
Accept all GPG keys and consider rebooting your server if a kernel update is proposed.
Pre-installation stepsβ
Disable SELinuxβ
SELinux should be disabled. To do this, you have to edit the file /etc/selinux/config and replace enforcing by disabled, or by running the following command:
sed -i s/^SELINUX=.*$/SELINUX=disabled/ /etc/selinux/config
Reboot your operating system to apply the change.
After system startup, perform a quick check of the SELinux status:
$ getenforce
Disabled
Configure or disable firewallβ
Add firewall rules or disable the firewall by running the following commands:
systemctl stop firewalld
systemctl disable firewalld
You can find instructions here to configure firewalld.
Install the repositoriesβ
- RHEL 8
- CentOS 8
- Oracle Linux 8
- CentOS 7
Remi and CodeReady Builder repositoryβ
To install Centreon you will need to install the remi and CodeReady Builder repositories.
Run the following commands:
dnf install -y dnf-plugins-core
dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm
subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms
Enable PHP 8.0 using the following commands:
dnf module reset php
dnf module install php:remi-8.0
Remi repositoryβ
To install Centreon you will need to install the remi repository.
Run the following commands:
dnf install -y dnf-plugins-core
dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm
dnf config-manager --set-enabled 'powertools'
Enable PHP 8.0 using the following commands:
dnf module reset php
dnf module install php:remi-8.0
Remi and CodeReady Builder repositoriesβ
To install Centreon you will need to install the remi and CodeReady Builder repositories.
Run the following commands:
dnf install -y dnf-plugins-core
dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm
dnf config-manager --set-enabled ol8_codeready_builder
Enable PHP 8.0 using the following commands:
dnf module reset php
dnf module install php:remi-8.0
Redhat Software Collections repositoryβ
To install Centreon you will need to set up the official Software Collections repository supported by Redhat. It is required for installing apache 2.4.
Install the Software Collections repository using this command:
yum install -y centos-release-scl
Remi repositoryβ
To install Centreon you will need to install the remi repository.
Run the following commands:
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
yum-config-manager --enable remi-php80
Centreon repositoryβ
To install Centreon software from the repository, you should first install the centreon-release package, which will provide the repository file.
Install the Centreon repository using this command:
- RHEL / CentOS / Oracle Linux 8
- CentOS 7
dnf install -y https://yum.centreon.com/standard/21.10/el8/stable/noarch/RPMS/centreon-release-21.10-5.el8.noarch.rpm
yum install -y https://yum.centreon.com/standard/21.10/el7/stable/noarch/RPMS/centreon-release-21.10-5.el7.centos.noarch.rpm
Installationβ
This section describes how to install a Centreon Remote Server.
It's possible to install this server with a local database on the server, or a remote database on a dedicated server.
With a local databaseβ
- RHEL / CentOS / Oracle Linux 8
- CentOS 7
dnf install -y centreon centreon-database
systemctl daemon-reload
systemctl restart mariadb
yum install -y centreon centreon-database
systemctl daemon-reload
systemctl restart mariadb
You can now move on to the next step.
With a remote databaseβ
If installing database on a dedicated server, this server should also have the prerequired repositories.
Run the following command on the Central server:
- RHEL / CentOS / Oracle Linux 8
- CentOS 7
dnf install -y centreon-base-config-centreon-engine centreon-widget\*
yum install -y centreon-base-config-centreon-engine centreon-widget\*
Then run the following commands on the dedicated server:
- RHEL / CentOS / Oracle Linux 8
- CentOS 7
dnf install -y centreon-database
systemctl daemon-reload
systemctl restart mariadb
yum install -y centreon-database
systemctl daemon-reload
systemctl restart mariadb
Secure your MariaDB installation by executing the following command:
mysql_secure_installation
Then create a distant user with root privileges needed for Centreon installation:
CREATE USER '<USER>'@'<IP>' IDENTIFIED BY '<PASSWORD>';
GRANT ALL PRIVILEGES ON *.* TO '<USER>'@'<IP>' WITH GRANT OPTION;
FLUSH PRIVILEGES;
Replace <IP> with the Centreon Central IP address that will connect to the database server.
Replace <USER> and <PASSWORD> by user's credentials.
Once the installation is complete you can delete this user using:
DROP USER '<USER>'@'<IP>';
The package centreon-database installs an optimized MariaDB configuration to be used with Centreon.
If this package is not installed, system limitation LimitNOFILE should be at least set to 32000 using a dedicated configuration file, example:
$ cat /etc/systemd/system/mariadb.service.d/centreon.conf
[Service]
LimitNOFILE=32000Same for the MariaDB open_files_limit directive, example:
$ cat /etc/my.cnf.d/centreon.cnf
[server]
innodb_file_per_table=1
open_files_limit=32000Remember to restart MariaDB after a change to configuration.
Configurationβ
Server nameβ
If you want, you can change the server's name using the following command:
hostnamectl set-hostname new-server-name
Replace new-server-name by the name you want. Example:
hostnamectl set-hostname remote1
Set the PHP time zoneβ
You are required to set the PHP time zone. 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.
After saving the file, please do not forget to restart the PHP-FPM service:
systemctl restart php-fpm
Services startup during system bootupβ
To make services start automatically during system bootup, run these commands on the central server:
- RHEL / CentOS / Oracle Linux 8
- CentOS 7
systemctl enable php-fpm httpd mariadb centreon cbd centengine gorgoned snmptrapd centreontrapd snmpd
systemctl enable php-fpm httpd24-httpd mariadb centreon cbd centengine gorgoned snmptrapd centreontrapd snmpd
If the database is on a dedicated server, remember to enable mariadb service on it.
Secure the databaseβ
If you have installed the Centreon server with a local database, since MariaDB 10.5, it is mandatory to secure the database's root access before installing Centreon. Run the following command:
mysql_secure_installation
- Answer yes to all questions except "Disallow root login remotely?".
- It is mandatory to set a password for the root user of the database. You will need this password during the web installation.
For more information, please see the official MariaDB documentation.
Web installationβ
Before starting the web installation process, start the Apache server with the following command:
- RHEL / CentOS / Oracle Linux 8
- CentOS 7
systemctl start httpd
systemctl start httpd24-httpd
Conclude installation by performing web installation steps.
During web installation, it is not necessary to install Autodiscovery module.
In the step Initialization of the monitoring, only the actions from 6 to 8 must be done.
Register the serverβ
To transform the server into a Remote Server and to register it to the Central server or to another Remote server, execute the following command on the future remote server:
- RHEL / CentOS / Oracle Linux 8
- CentOS 7
/usr/share/centreon/bin/registerServerTopology.sh -u <API_ACCOUNT> \
-t remote -h <IP_TARGET_NODE> -n <REMOTE_SERVER_NAME>
Example:
/usr/share/centreon/bin/registerServerTopology.sh -u admin -t remote -h 192.168.0.1 -n remote-1
/usr/share/centreon/bin/registerServerTopology.sh -u <API_ACCOUNT> \
-t remote -h <IP_TARGET_NODE> -n <REMOTE_SERVER_NAME>
Example:
/usr/share/centreon/bin/registerServerTopology.sh -u admin -t remote -h 192.168.0.1 -n remote-1
Replace <IP_TARGET_NODE> by the IP of the central server, as seen by the remote server.
The <API_ACCOUNT> must have access to the configuration API. You can use the default admin account.
If you need to change the HTTP method or the port, you can use the following format for the -h option:
HTTPS://<IP_TARGET_NODE>:PORT
Then follow instructions by
Entering your password:
192.168.0.1: please enter your password:
Select the IP address if multiple network interfaces exist:
Which IP do you want to use as CURRENT NODE IP ?
1) 192.168.0.2
2) 192.168.0.3
1Then validate the information:
Summary of the informations that will be send:
Api Connection:
username: admin
password: ******
target server: 192.168.0.1
Pending Registration Server:
name: remote-1
type: remote
address: 192.168.0.2
Do you want to register this server with those informations ? (y/n)yAdd additional information to enable future communication between your Remote Server and its Central, Kindly fill in the required information to convert your platform into Remote :
```shell
<CURRENT_NODE_ADDRESS> : Please enter your username:
admin
<CURRENT_NODE_ADDRESS> : Please enter your password:
<CURRENT_NODE_ADDRESS> : Protocol [http]:
<CURRENT_NODE_ADDRESS> : Port [80]:
<CURRENT_NODE_ADDRESS> : centreon root folder [centreon]:
```If you use a proxy, please define credentials:
Are you using a proxy ? (y/n)
y
enter your proxy Host:
myproxy.example.com
enter your proxy Port [3128]:
Are you using a username/password ? (y/n)
y
enter your username:
my_proxy_username
enter your password:
You will receive the validation of the Centreon central server:
2020-10-16T17:19:37+02:00 [INFO]: The CURRENT NODE 'remote: 'remote-1@192.168.0.2' has been converted and registered successfully.
Main error messagesβ
2020-10-20T10:23:15+02:00 [ERROR]: Invalid credentials
Your credentials are incorrect for the <API_ACCOUNT>.
2020-10-20T10:24:59+02:00 [ERROR]: Access Denied.
The <API_ACCOUNT> doesn't have access to configuration API.
Failed connect to 192.168.0.1:444; Connection refused
Unable to access to the API. Please check <IP_TARGET_NODE>, scheme and port.
2020-10-20T10:39:30+02:00 [ERROR]: Canβt connect to the API using: https://192.168.0.1:443/centreon/api/latest/login
The access url is not complete or invalide. Use the --root option to define the API URL Path. For example: --root monitoring.
2020-10-20T10:42:23+02:00 [ERROR]: No route found for βPOST /centreon/api/latest/platform/topologyβ
Your Centreon target version is invalid. It should be greater or equal to 21.10.
Extend local DBMS rightsβ
Finally, add rights to centreon database user to use LOAD DATA INFILE command:
GRANT FILE on *.* to 'centreon'@'localhost';
Add the Remote Server to configurationβ
Go to the Add a Remote Server to configuration.
Secure your platformβ
Don't forget to secure your Centreon platform following our recommendations