Login
Newsletter
Werbung

Do, 21. Juli 2016, 15:00

Icinga2, Icinga Web 2 und Icinga Director unter EL7 installieren

Dieser Artikel beschreibt die Installation von Icinga2, Icinga Web 2 und Icinga Director auf Red Hat Enterprise Linux 7 (oder CentOS 7).

Mit Icinga2 gibt es ein sehr leistungsfähiges Monitoring-System, welches optional auch mit der taufrischen Web-Oberfläche Icinga Web 2 benutzt werden kann. Gegenüber Icinga 1.x handelt es sich hier jeweils um komplette Neuentwicklungen, die nichts mehr mit dem veralteten Software-Kern zu tun haben.

Dieses Jahr wurde mit Icinga Director ein Konfigurationswerkzeug für Icinga2 vorgestellt. Es kann dazu verwendet werden, den gesamten Icinga2-Stack zu konfigurieren. Auch eine Integration in Configuration Management- und CMDB-Systeme ist möglich.

Dieser Artikel beschreibt die Grundinstallation eines Icinga2-Systems mit der Icinga Web 2-Oberfläche und dem zusätzlichen Icinga Director-Modul.

Installation

Ich persönlich lege die Daten der MySQL-Datenbank gerne in Kombination mit LVM auf eine dedizierte Festplatte. Die folgenden Befehle lagern das Verzeichnis /var/lib/mysql entsprechend aus:

# pvcreate /dev/sdb
# vgcreate vg_data /dev/sdb
# lvcreate --name lv_mariadb --size 9G vg_data
# mkfs.ext4 /dev/mapper/vg_data-lv_mariadb
# vi /etc/fstab
...
/dev/mapper/vg_data-lv_mariadb /var/lib/mysql   ext4   defaults   1 2

ESC ZZ

# mkdir /var/lib/mysql ; mount -a
# restorecon -v /var/lib/mysql
restorecon reset /var/lib/mysql context system_u:object_r:unlabeled_t:s0->system_u:object_r:mysqld_db_t:s0

Die Installation der benötigten Pakete erfolgt mit YUM:

# yum install icinga{,web}2 icinga2-{selinux,ido-mysql} mariadb-server mysql nagios-plugins-all icingacli php-ldap

Anschließend werden der Apache-Webserver und die MariaDB-Datenbank für Autostart konfiguriert und gestartet. Bei dieser Gelegenheit empfiehlt es sich auch, mittels mysql_secure_installation ein Root-Passwort für die Datenbank zu vergeben und nicht benötigte Testdaten zu entfernen:

# systemctl enable httpd; systemctl start httpd
# systemctl enable mariadb ; systemctl start mariadb
# mysql_secure_installation
Set root password? [Y/n] Y
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Anschließend werden dedizierte Datenbanken für Icinga und die Benutzerauthentifizierung erstellt:

# mysql -u root -p
mysql> CREATE DATABASE icinga;
mysql> CREATE DATABASE `icinga-auth`;
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga.* TO 'icinga'@'localhost' IDENTIFIED BY '...';
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga-auth.<code></code>* TO 'icinga'@'localhost' IDENTIFIED BY '...';
mysql> FLUSH PRIVILEGES;

Danach wird die Icinga-Datenbank mit dem benötigten Schema versehen:

# mysql -u root -p icinga < /usr/share/icinga2-ido-mysql/schema/mysql.sql

Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung