Icinga 2 è un popolare sistema di monitoraggio delle risorse di rete open source e Icinga Web 2 è un'interfaccia Web per Icinga 2. Questo articolo descriverà come installarli su un server CentOS 7.
Prerequisiti
- Una nuova istanza del server Vultr CentOS 7.
- Un utente sudo .
Passaggio 1: aggiornare il sistema
sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now
Dopo il riavvio, utilizzare lo stesso utente sudo per accedere.
Passaggio 2: installare Apache
Installa Apache usando YUM:
sudo yum install httpd -y
Disabilita la pagina di benvenuto di Apache preimpostata:
sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
Impedire ad Apache di esporre /var/www/htmlai visitatori file e directory all'interno della directory radice Web :
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf
Avviare il servizio Apache e avviarlo all'avvio:
sudo systemctl start httpd.service
sudo systemctl enable httpd.service
Passaggio 3: installare MariaDB
Installa MariaDB usando YUM:
sudo yum install mariadb mariadb-server -y
Avviare il servizio MariaDB:
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Assicurare l'installazione di MariaDB:
sudo /usr/bin/mysql_secure_installation
Durante il processo, rispondere alle domande sullo schermo come di seguito:
Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password: <your-password>
Re-enter new password: <your-password>
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
Passaggio 4: installa PHP
Installa PHP e le estensioni PHP necessarie come richiesto da Icinga 2 e Icinga Web 2:
sudo yum install php php-gd php-intl php-ldap php-ZendFramework php-ZendFramework-Db-Adapter-Pdo-Mysql -y
Quindi è necessario impostare il fuso orario corretto per la propria macchina, che può essere determinato dal sito Web ufficiale di PHP . Sulla mia istanza del server, il valore del fuso orario è "America / Los_Angeles".
Apri il file di configurazione di PHP con l'editor vi:
sudo vi /etc/php.ini
Trova la linea:
;date.timezone =
Modificalo in:
date.timezone = America/Los_Angeles
Salva ed esci:
:wq!
Riavvia il servizio Apache per rendere effettive le nuove configurazioni:
sudo systemctl restart httpd.service
Step 5: Installa Icinga 2 e i suoi plugin
Su CentOS 7, puoi installare Icinga 2 e i suoi plugin usando il repository YUM di icinga:
sudo rpm --import http://packages.icinga.org/icinga.key
sudo rpm -i https://packages.icinga.org/epel/7/release/noarch/icinga-rpm-release-7-1.el7.centos.noarch.rpm
sudo yum install icinga2 nagios-plugins-all -y
Puoi saperne di più su questi plugin dal Progetto Monitoraggi plugin .
Avvia il servizio Icinga 2:
sudo systemctl start icinga2.service
sudo systemctl enable icinga2.service
Per impostazione predefinita, il programma Icinga 2 abiliterà tre funzionalità: checker, mainlog e notifica. Puoi verificarlo usando il seguente comando:
sudo icinga2 feature list
Passaggio 6: installare i moduli IDO di Icinga 2
6.1) Installare i moduli IDO (Icinga Data Output) per MySQL
sudo yum install icinga2-ido-mysql -y
6.2) Creare un database per Icinga 2
Accedi alla shell MySQL come root:
mysql -u root -p
Utilizzare la password di root MariaDB impostata nel passaggio 3 per accedere.
Creare un database denominato "icinga" e un utente del database denominato icingacon la password icinga, quindi concedere i privilegi su questo database a questo utente del database.
CREATE DATABASE icinga;
GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga.* TO 'icinga'@'localhost' IDENTIFIED BY 'icinga';
FLUSH PRIVILEGES;
EXIT;
6.3) Importare lo schema IDO di Icinga 2
mysql -u root -p icinga < /usr/share/icinga2-ido-mysql/schema/mysql.sql
Quando richiesto, immettere la password di root MariaDB per completare il processo.
6.4) Abilitare il modulo IDO MySQL
sudo vi /etc/icinga2/features-available/ido-mysql.conf
Trova queste righe:
//user = "icinga"
//password = "icinga"
//host = "localhost"
//database = "icinga"
decommentali come di seguito:
user = "icinga"
password = "icinga"
host = "localhost"
database = "icinga"
Salva ed esci:
:wq!
Abilita la funzione ido-mysql:
sudo icinga2 feature enable ido-mysql
sudo systemctl restart icinga2.service
Passaggio 7: installare Icinga Web 2
7.1) Configurare la pipe di comando esterna
sudo icinga2 feature enable command
sudo systemctl restart icinga2.service
Prima di poter inviare comandi a Icinga 2 utilizzando un'interfaccia Web, è necessario aggiungere l'utente "apache" al icingacmdgruppo:
sudo usermod -a -G icingacmd apache
Puoi verificare la tua modifica usando il seguente comando:
id apache
7.2) Installare i pacchetti RPM icingaweb2 e icingacli
sudo yum install icingaweb2 icingacli -y
Puntare la directory principale Web di Apache nella posizione di Icinga Web 2:
sudo icingacli setup config webserver apache --document-root /usr/share/icingaweb2/public
sudo systemctl restart httpd.service
7.3) Generare un token di installazione per un uso successivo nell'interfaccia Web
sudo icingacli setup token create
7.4) Modifica le regole del firewall per consentire l'accesso al web
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
7.5) Avviare la procedura guidata di installazione di Icinga 2 nell'interfaccia web
Puntare il browser Web al seguente URL:
http://<your-server-ip>/icingaweb2/setup
7.6) Nella pagina iniziale, immettere il token di installazione generato in precedenza, quindi fare clic sul pulsante "Avanti".
7.7) Nella pagina Moduli, selezionare i moduli che si desidera abilitare (almeno, è richiesto il modulo di monitoraggio), quindi fare clic sul pulsante "Avanti".
7.8) Nella pagina Requisiti, assicurarsi che ogni articolo richiesto sia soddisfatto, quindi fare clic sul pulsante "Avanti".
7.9) Nella pagina Autenticazione, è necessario scegliere il metodo di autenticazione quando si accede a Icinga Web 2. Qui è possibile scegliere Database, quindi fare clic sul pulsante "Avanti".
7.10) Nella pagina delle risorse del database, compilare tutti i campi richiesti come di seguito, quindi fare clic sul pulsante "Avanti".
- Nome risorsa *: icingaweb_db
- Tipo di database *: MySQL
- Host *: localhost
- Nome database *: icingaweb2
- Nome utente *: root
- Parola d'ordine*:
<MariaDB-root-password>
7.11) Nella pagina Backend di autenticazione, utilizzando il nome back-end predefinito icingaweb2, fare clic sul Nextpulsante per andare avanti.
7.12) Nella pagina di amministrazione, imposta il primo account amministrativo di Icinga Web 2 (supponiamo che sia icingaweb2admin) e la password (icingaweb2pass), quindi fai clic sul pulsante "Avanti".
7.13) Nella pagina Configurazione applicazione, è possibile regolare le opzioni di configurazione relative all'applicazione e alla registrazione in base alle proprie esigenze. Per ora, puoi utilizzare i valori predefiniti elencati di seguito e fare clic sul pulsante "Avanti" per procedere.
- Mostra Stacktraces: selezionato
- Tipo di archiviazione delle preferenze dell'utente *: database
- Tipo di registrazione *: Syslog
- Livello di registrazione *: errore
- Prefisso applicazione *: icingaweb2
7.14) Nella pagina Rivedi, ricontrolla la tua configurazione, quindi fai clic sul Nextpulsante.
7.15) Nella pagina di benvenuto della configurazione del modulo di monitoraggio, fare clic sul Nextpulsante.
7.16) Nella pagina Monitoraggio back-end, utilizzare il nome back-end predefinito icingae il tipo di back-end IDO, quindi fare clic sul pulsante "Avanti".
7.17) Nella pagina Monitoraggio risorse IDO, immettere i dettagli del database IDO impostati in precedenza, quindi fare clic sul pulsante "Avanti".
- Nome risorsa *: icinga_ido
- Tipo di database *: MySQL
- Host *: localhost
- Nome database *: icinga
- Nome utente *: icinga
- Password *: icinga
7.18) Nella pagina Trasporto comandi, utilizzare ancora questi valori predefiniti elencati di seguito. Fai clic sul Nextpulsante per andare avanti.
- Nome trasporto *: icinga2
- Tipo di trasporto *: file di comando locale
- File di comando *:
/var/run/icinga2/cmd/icinga2.cmd
7.19) Nella pagina Sicurezza monitoraggio, utilizzare ancora il valore predefinito:
- Variabili personalizzate protette: * pw *, * pass *, community
Fai clic sul pulsante "Avanti" per passare alla pagina successiva.
7.20) Nella pagina di revisione, ricontrolla la tua configurazione, quindi fai clic sul Finishpulsante.
7.21) Complimenti! pagina, fare clic sul Login to Icinga Web 2pulsante per passare alla pagina di accesso di Icinga Web 2. Utilizzare l'account amministrativo e la password Icinga Web 2 impostati in precedenza per accedere. Sentiti libero di esplorare la dashboard di Icinga Web 2.
Questo conclude il nostro tutorial. Grazie per aver letto.