GNU/Linux >> Linux Esercitazione >  >> Cent OS

Monitoraggio del server con Icinga 2 e Icingaweb 2 su CentOS 7

Icinga 2 è un software di monitoraggio OpenSource scalabile. Questo tutorial descrive l'installazione di Icinga 2 insieme a Icingaweb su un server CentOS 7.

1. Requisiti

Per installare un tale sistema avrai bisogno di quanto segue:

  • Un sistema server minimo Centos 7. Può trattarsi di un server installato da zero come descritto nell'esercitazione sul server minimo di Centos 7.1 o di un server virtuale o di root di una società di hosting che ha installato una configurazione minima di Centos 7.
  • Una connessione Internet veloce.

2. Note preliminari

  • In questo tutorial, utilizzo l'hostname icinga2.domain.tld con l'indirizzo IP 192.168.250.100/24 ​​e il gateway 192.168.250.254. Queste impostazioni potrebbero differire per te, quindi devi sostituirle dove appropriato.
  • Gli output mostrati qui sono solo un esempio e potrebbero differire sul tuo sistema, a seconda del tuo sistema di base e dei pacchetti già installati.
  • Il server del database sarà maria db e sarà installato sullo stesso host.
  • Un amministratore utente esiste ed è nell'elenco sudoers.
  • Disabiliteremo SELinux per questo tutorial.

3. Preparazione

Accedi come amministratore

login as: administrator
[email protected]'s password:
[[email protected] ~]$

Verifica la connettività di rete

verificheremo se la nostra connessione Internet è stabilita e la risoluzione dei nomi funziona:

ping www.google.de -c3

L'output sarà come:

[[email protected] ~]$ ping www.google.de -c3
PING www.google.de (172.217.20.67) 56(84) bytes of data.
64 bytes from fra02s27-in-f3.1e100.net (172.217.20.67): icmp_seq=1 ttl=57 time=19.2 ms
64 bytes from fra02s27-in-f3.1e100.net (172.217.20.67): icmp_seq=2 ttl=57 time=19.3 ms
64 bytes from fra02s27-in-f3.1e100.net (172.217.20.67): icmp_seq=3 ttl=57 time=19.6 ms

--- www.google.de ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2001ms
rtt min/avg/max/mdev = 19.276/19.430/19.649/0.195 ms
[[email protected] ~]$

Passa a root

Ora ci faremo root. Per farlo, inserisci:

sudo su

L'output sarà come:

[[email protected] ~]$ sudo su

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

         #1) Respect the privacy of others.
         #2) Think before you type.
         #3) With great power comes great responsibility.

[sudo] password for administrator:
[[email protected] administrator]#

Installa il software preliminare

Ora installeremo del software preliminare:

  • deltarpm abbasserà la quantità da scaricare, controllando se c'è solo un file differenziale, invece dell'intero pacchetto
  • nano è un editor di testo
  • è necessario wget per scaricare file dagli URL
  • net-tools è necessario per alcuni controlli sui processi di rete
  • gcc è il compilatore GNU
yum -y install deltarpm

L'output sarà come:

Loaded plugins: fastestmirror
base                                                                             | 3.6 kB  00:00:00
extras                                                                           | 3.4 kB  00:00:00
updates                                                                          | 3.4 kB  00:00:00
(1/4): extras/7/x86_64/primary_db
...
...
Total download size: 82 k
Installed size: 209 k
Downloading packages:
warning: /var/cache/yum/x86_64/7/base/packages/deltarpm-3.6-3.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Public key for deltarpm-3.6-3.el7.x86_64.rpm is not installed
deltarpm-3.6-3.el7.x86_64.rpm                                                    |  82 kB  00:00:00
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Importing GPG key 0xF4A80EB5:
 Userid     : "CentOS-7 Key (CentOS 7 Official Signing Key) <[email protected]>"
 Fingerprint: 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
 Package    : centos-release-7-2.1511.el7.centos.2.10.x86_64 (@anaconda)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : deltarpm-3.6-3.el7.x86_64                                                            1/1
  Verifying  : deltarpm-3.6-3.el7.x86_64                                                            1/1

Installed:
  deltarpm.x86_64 0:3.6-3.el7

Complete!
yum -y install nano wget net-tools gcc

L'output sarà come:

Loaded plugins: fastestmirror
base                                                                             | 3.6 kB  00:00:00
extras                                                                           | 3.4 kB  00:00:00
updates                                                                          | 3.4 kB  00:00:00
(1/4): extras/7/x86_64/primary_db
...
...
Installed:
  gcc.x86_64 0:4.8.5-4.el7      nano.x86_64 0:2.3.1-10.el7 net-tools.x86_64 0:2.0-0.17.20131004git.el7
  wget.x86_64 0:1.14-10.el7_0.1

Dependency Installed:
  cpp.x86_64 0:4.8.5-4.el7                         glibc-devel.x86_64 0:2.17-106.el7_2.4
  glibc-headers.x86_64 0:2.17-106.el7_2.4          kernel-headers.x86_64 0:3.10.0-327.13.1.el7
  libmpc.x86_64 0:1.0.1-3.el7                      mpfr.x86_64 0:3.1.1-4.el7

Dependency Updated:
  glibc.x86_64 0:2.17-106.el7_2.4                 glibc-common.x86_64 0:2.17-106.el7_2.4

Complete!

Disabilita SELinux

modifica /etc/selinux/config

nano /etc/selinux/config

Trova

SELINUX=enforcing

cambialo in

SELINUX=disabled

Salva il file

Aggiorna il sistema e riavvia

Ora aggiorneremo il sistema.

yum -y update && yum -y upgrade

Questo potrebbe richiedere del tempo. Dopo quel riavvio.

reboot

4. Installa iga2 e software aggiuntivo

Installa repository aggiuntivi

Dopo che il sistema si è riavviato, accedi come amministratore e accedi di nuovo al root.

Cambia directory in /tmp

cd /tmp

Installa il repository epel

yum install -y epel-release

Installa il repository icinga

rpm --import http://packages.icinga.org/icinga.key
wget http://packages.icinga.org/epel/ICINGA-release.repo -O /etc/yum.repos.d/ICINGA-release.repo

Ricostruisci la tua cache (potrebbe volerci del tempo)

yum makecache

Installa icinga2, icinga2 mysql Connector e i plugin nagios

yum install -y nagios-plugins-all icinga2 icinga2-ido-mysql icinga-idoutils-libdbi-mysql

Installazione di Apache, php e preparazione di php.ini

yum install -y httpd
yum install -y php-cli php-pear php-xmlrpc php-xsl php-pdo php-soap php-gd php-ldap

Modifica php.ini

Trova

; Defines the default timezone used by the date functions
; http://php.net/date.timezone
;date.timezone =

cambialo in

; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = "Europe/Berlin"

Salva il file

Abilita Apache all'avvio

systemctl enable httpd
[[email protected] tmp]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
systemctl start httpd

Controlla se Apache è in esecuzione

netstat -nlp | grep 80
[[email protected] tmp]# netstat -nlp | grep 80
tcp6       0      0 :::80                   :::*                    LISTEN      10360/httpd

Installazione e configurazione di mariadb

yum install -y mariadb-server
systemctl start mariadb
systemctl enable mariadb

Uscita:

[[email protected] tmp]# systemctl enable mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.

Controlla se mariadb è in esecuzione

netstat -nlp | grep 3306

Uscita:

[[email protected] tmp]# netstat -nlp | grep 3306
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      11623/mysqld

Imposta la password per l'utente 'root'

mysql -u root

Uscita:

[[email protected] tmp]# mysql -u root
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 5.5.47-MariaDB MariaDB Server

Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>
[MariaDB [(none)]> use mysql

Uscita:

[MariaDB [(none)]> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
MariaDB [mysql]>
[MariaDB [(mysql)]> update user set password=PASSWORD("root_password") where User='root';

Uscita:

update user set password=PASSWORD("root_password") where User='root';
Query OK, 4 rows affected (0.00 sec)
Rows matched: 4  Changed: 4  Warnings: 0
[MariaDB [(mysql)]> flush privileges;

Uscita:

MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.00 sec0
[MariaDB [(mysql)]> exit;

Uscita:

MariaDB [mysql]> exit;
Bye

Riavvia MariaDB

systemctl restart mariadb

Crea e popola il database per icinga2

Accedi a MySQL con la password di root.

mysql -u root -p

Uscita:

[[email protected] tmp]# [[email protected] tmp]# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 7
Server version: 5.5.47-MariaDB MariaDB Server

Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>
[MariaDB [(none)]>CREATE DATABASE icinga2;

Uscita:

MariaDB [(none)]> CREATE DATABASE icinga2;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]>
[MariaDB [(none)]>GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga2.* TO 'icinga2'@'localhost' IDENTIFIED BY 'icinga2_password';

Uscita:

MariaDB [(none)]> GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga2.* TO 'icinga2'@'localhost' IDENTIFIED BY 'icinga2_password';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]>
[MariaDB [(none)]>flush privileges;;

Uscita:

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]>
[MariaDB [(none)]> exit;

Uscita:

MariaDB [none]> exit;
Bye

Popola database

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

Modifica ido-mysql.conf

Per fare in modo che icinga2 si connetta al nostro Database mariadb dobbiamo modificare /etc/icinga2/ido-mysql.conf

nano /etc/icinga2/features-available/ido-mysql.conf

Trova

/**
 * The db_ido_mysql library implements IDO functionality
 * for MySQL.
 */

library "db_ido_mysql"

object IdoMysqlConnection "ido-mysql" {
  //user = "icinga"
  //password = "icinga"
  //host = "localhost"
  //database = "icinga"
}

cambialo in

/**
 * The db_ido_mysql library implements IDO functionality
 * for MySQL.
 */

library "db_ido_mysql"

object IdoMysqlConnection "ido-mysql" {
  user = "icinga2"
  password = "icinga2_password"
  host = "localhost"
  database = "icinga2"
}

Abilita e avvia icinga2 all'avvio

abilita iga2 all'avvio

systemctl enable icinga2

Uscita:

[[email protected] tmp]# systemctl enable icinga2
Created symlink from /etc/systemd/system/multi-user.target.wants/icinga2.service to /usr/lib/systemd/system/icinga2.service.

Avvia glassa2

systemctl start icinga2

Per verificare se tutto funziona, faremo tail -f /var/log/icinga2/icinga2.log. Puoi interrompere l'output premendo CTRL-C.

tail -f /var/log/icinga2/icinga2.log

L'output dovrebbe essere qualcosa del genere

[[email protected] tmp]# tail -f /var/log/icinga2/icinga2.log
[2016-05-10 23:21:50 +0200] information/DbConnection: Resuming IDO connection: ido-mysql
[2016-05-10 23:21:50 +0200] information/ConfigItem: Activated all objects.
[2016-05-10 23:21:50 +0200] information/ConfigCompiler: Compiling config file: /var/lib/icinga2/modified-attributes.conf
[2016-05-10 23:21:50 +0200] information/IdoMysqlConnection: MySQL IDO instance id: 1 (schema version: '1.14.0')
[2016-05-10 23:21:50 +0200] information/IdoMysqlConnection: Finished reconnecting to MySQL IDO database in 0.201981 second(s).

Fai in modo che iga2 inizi all'avvio:

systemctl enable icinga2

Uscita:

[[email protected] tmp]# systemctl enable icinga2
Created symlink from /etc/systemd/system/multi-user.target.wants/icinga2.service to /usr/lib/systemd/system/icinga2.service.

Abilita modulo di comando icinga2:

icinga2 feature enable command

Uscita:

[[email protected] tmp]# icinga2 feature enable command
Enabling feature command. Make sure to restart Icinga 2 for these changes to take effect.

Riavvia iga2

systemctl restart icinga2

Cent OS
  1. Configurazione di un server e client NFS su CentOS 7.2

  2. Installazione di server e client NFS su CentOS 7

  3. Imposta lo strumento di monitoraggio Icinga su CentOS 7 / RHEL 7

  4. Installa Zenario con Apache, PHP e MariaDB su CentOS 7

  5. Configura un server di posta con PostfixAdmin e MariaDB su CentOS 7

Monitoraggio del server con munin e monit su CentOS 5.2

Monitoraggio del server con Munin e Monit su CentOS 7

Monitoraggio del server con Munin e Monit su CentOS 7.2

Monitoraggio del server con munin e monit su Fedora 7

Come installare Icinga 2 e Icinga Web 2 su CentOS 7

Configurazione di un server OpenVPN con CentOS e Viscosity