Skip to content

Install Icinga Web 2 on CentOS

Installation Requirements

  • Icinga 2 and Icinga DB to monitor your infrastructure
  • A web server, e.g. Apache or Nginx
  • PHP version ≥ 7.2
  • MariaDB

Optional Requirements

  • The pdfexport module (≥0.10) is required for the export to PDF
  • LDAP PHP library when using Active Directory or LDAP for authentication

Add Icinga Package Repository

You need to add the Icinga repository to your package management configuration for installing Icinga Web 2. If you’ve already configured your OS to use the Icinga repository for installing Icinga 2, you may skip this step.

CentOS Repository

wget https://packages.icinga.com/centos/ICINGA-release.repo -O /etc/yum.repos.d/ICINGA-release.repo

The packages for CentOS depend on other packages which are distributed as part of the EPEL repository.

CentOS 7:

yum install epel-release

Since Icinga Web v2.5 we also require a newer PHP version than what is available in RedHat itself. You need to enable the SCL repository, so that the dependencies can pull in the newer PHP.

yum install centos-release-scl

Install Icinga Web 2

You can install Icinga Web 2 by using your distribution’s package manager to install the icingaweb2 package. The additional package icingacli is necessary to follow further steps in this guide.

Tip

If you have SELinux enabled, the package icingaweb2-selinux is also required.

yum install icingaweb2 icingacli

Install the Web Server

Ensure that you have a web server with PHP installed before proceeding, such as Apache or Nginx with PHP version ≥ 7.2. Depending on your operating system, you may need to install and configure the web server separately. An Apache configuration file to serve Icinga Web is already installed. If you want to use Nginx, you must manually create a configuration file using the following command. Save the output as a new file in the web server configuration directory:

icingacli setup config webserver nginx --document-root /usr/share/icingaweb2/public

Prepare Web Setup

You can set up Icinga Web 2 quickly and easily with the Icinga Web 2 setup wizard which is available the first time you visit Icinga Web 2 in your browser. When using the web setup you are required to authenticate using a token. In order to generate a token use the icingacli:

icingacli setup token create

In case you do not remember the token you can show it using the icingacli:

icingacli setup token show

Start Web Setup

Finally visit Icinga Web 2 in your browser to access the setup wizard and complete the installation: /icingaweb2/setup.

The setup wizard automatically detects the required packages. In case one of them is missing, e.g. a PHP module, please install the package, restart your webserver and reload the setup page.

Note

If you have SELinux enabled, please ensure to either have the selinux package for Icinga Web 2 installed, or disable it.