The preferred way of installing Icinga Web 2 is to use the official package repositories depending on which operating system and distribution you are running.
In case you are upgrading from an older version of Icinga Web 2 please make sure to read the upgrading section thoroughly.
Source and automated setups are described inside the advanced topics chapter.
Installing Requirements ¶
- Icinga 2 with the IDO database backend (MySQL or PostgreSQL)
- A web server, e.g. Apache or Nginx
- PHP >= 5.3.0 with the following modules installed: cURL, gettext, intl, mbstring, OpenSSL and xml
- Default time zone configured for PHP in the php.ini file
- LDAP PHP library when using Active Directory or LDAP for authentication
- MySQL or PostgreSQL PHP libraries
Installing Icinga Web 2 from Package ¶
Below is a list of official package repositories for installing Icinga Web 2 for various operating systems.
Packages for distributions other than the ones listed above may also be available. Please contact your distribution packagers.
Setting up Package Repositories ¶
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. Below is a list with examples for various distributions.
wget -O - http://packages.icinga.com/icinga.key | apt-key add - echo 'deb http://packages.icinga.com/debian icinga-stretch main' >/etc/apt/sources.list.d/icinga.list apt-get update
For other Debian versions just replace
stretchwith your distribution’s code name.
wget -O - http://packages.icinga.com/icinga.key | apt-key add - add-apt-repository 'deb http://packages.icinga.com/ubuntu icinga-xenial main' apt-get update
For other Ubuntu versions just replace xenial with your distribution’s code name.
RHEL and CentOS 7:
yum install https://packages.icinga.com/epel/icinga-rpm-release-7-latest.noarch.rpm
dnf install https://packages.icinga.com/fedora/icinga-rpm-release-26-latest.noarch.rpm
zypper ar http://packages.icinga.com/SUSE/ICINGA-release-11.repo zypper ref
zypper ar http://packages.icinga.com/SUSE/ICINGA-release.repo zypper ref
zypper ar http://packages.icinga.com/openSUSE/ICINGA-release.repo zypper ref
echo "http://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repos apk update
Latest version of Icinga Web 2 is in the edge repository, which is the -dev branch.
RHEL/CentOS Notes ¶
The packages for RHEL/CentOS depend on other packages which are distributed as part of the EPEL repository.
yum install epel-release
If you are using RHEL you need enable the
optional repository and then install
the EPEL rpm package.
Alpine Linux Notes ¶
The example provided suppose that you are running Alpine edge, which is the -dev branch and is a rolling release. If you are using a stable version, in order to use the latest Icinga Web 2 version you should “pin” the edge repository. In order to correctly manage your repository, please follow these instructions.
Installing Icinga Web 2 ¶
You can install Icinga Web 2 by using your distribution’s package manager to install the
Below is a list with examples for various distributions. The additional package
icingacli is necessary on RPM based systems for being able to follow further steps in this guide. In DEB based systems, the icingacli binary is included in the icingaweb2 package.
Debian and Ubuntu:
apt-get install icingaweb2
RHEL, CentOS and Fedora:
yum install icingaweb2 icingacli
SLES and openSUSE:
zypper install icingaweb2 icingacli
apk add icingaweb2
For Alpine Linux please read the package repositories notes.
Preparing 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 setup token create
In case you do not remember the token you can show it using the
icingacli setup token show
Preparing Web Setup on Debian ¶
On Debian, you need to manually create a database and a database user prior to starting the web wizard. This is due to local security restrictions whereas the web wizard cannot create a database/user through a local unix domain socket.
MariaDB [mysql]> CREATE DATABASE icingaweb2; MariaDB [mysql]> GRANT ALL ON icingaweb2.* TO icingaweb2@localhost IDENTIFIED BY 'CHANGEME';
You may also create a separate administrative account with all privileges instead.
Note: This is only required if you are using a local database as authentication type.
Starting Web Setup ¶
Finally visit Icinga Web 2 in your browser to access the setup wizard and complete the installation:
Note for Debian
Use the same database, user and password details created above when asked.
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.
If you have SELinux enabled, please ensure to either have the selinux package for Icinga Web 2 installed, or disable it.