Otu esi etinye Icinga2 na RHEL, Rocky na AlmaLinux


Icinga2 bụ ngwa nleba anya na netwọkụ mepere emepe mepere emepe nke bụ ndụdụ nke ngwaọrụ nlekota Nagios.

Ewubere ya iji dozie adịghị ike nke Nagios ma webata njirimara ọhụrụ dị ka onye ọrụ dị mma na nke oge a, API REST maka ijikọta mgbakwunye ọhụrụ na-enweghị mkpa ime mgbanwe na isi Icinga, na ndị ọzọ njikọ nchekwa data.

Icinga2 na-enyocha ịdị adị nke ndị ọbịa yana ọrụ. Ụfọdụ ọrụ ndị a gụnyere SNMP, HTTP, HTTPS, na SSH. Ọ na-enyochakwa ngwaọrụ netwọkụ dị ka ndị na-anya ụgbọ elu na ndị na-agba ọkụ.

Icinga na-anakọta metrics wee mepụta ndekọ iji nye gị nkọwa zuru ezu nke akụrụngwa netwọkụ gị. A na-ahụzi ndekọ ndekọ na metrik na bọọdụ iji tinye ihe niile n'ọnọdụ ka mma.

N'isiokwu a, anyị na-egosi otu esi etinye ngwa nlekota Icinga2 na RHEL, Rocky Linux, na AlmaLinux.

Dị ka ihe achọrọ maka ịwụnye Icinga2, ịkwesịrị itinye ngwugwu LAMP. Obere ịkpachara anya ebe a - Icinga2 chọrọ PHP 7.3 na nsụgharị ndị ọzọ maka nrụnye.

Anyị enweela nkuzi otu esi etinye LAMP na RHEL 8 - Jiri akụkọ a wụnye Apache webserver na MariaDB nchekwa data naanị ebe ntuziaka na-elekwasị anya na ịwụnye PHP 7.2 nke Icinga2 na-akwadoghị.

Na nzọụkwụ mbụ nke ntuziaka a, anyị ga-ejegharị gị na usoro nke ịwụnye PHP 7.4 na modul achọrọ.

Kwụpụ 1: Wụnye modul PHP na PHP

Na Apache na MariaDB arụnyere, Ka anyị gaa n'ihu ma wụnye PHP 7.4. Ọ bụrụ na ị nwere PHP 7.2 na nsụgharị ndị ọzọ arụnyere, wepụ ya site na-agba ọsọ:

$ sudo dnf remove php

Na-esote, tọgharịa modul PHP dị ugbu a na sistemụ.

$ sudo dnf module reset php

Mgbe nke ahụ gasịrị, depụta ụdị PHP dị ka egosiri.

$ sudo dnf module list php

Mgbe ahụ gbanye PHP 7.4.

$ sudo dnf module enable php:7.4

Ozugbo enyerela modul PHP 7.4, Wụnye PHP yana ndọtị PHP achọrọ.

$ sudo dnf install php-gd php-mbstring php-mysqlnd php-curl php-devel php-pear php-xml php-cli php-soap php-intl php-json php-ldap php-xmlrpc php-zip php-json php-common php-opcache php-gmp php-pgsql make -y

Icinga2 chọkwara ndọtị php-imagick. Agbanyeghị, enweghị ike ịwụnye nke a dịka anyị mere na modul PHP ndị ọzọ.

Iji wụnye ndọtị ahụ, mee iwu ndị a:

$ dnf install -y ImageMagick ImageMagick-devel
$ sudo pecl install imagick

Wee gbanwee gaa na onye ọrụ mgbọrọgwụ wee tinye mgbakwunye na faịlụ PHP.INI.

$ su -
$ echo "extension=imagick.so" > /etc/php.d/20-imagick.ini

Iji tinye mgbanwe ndị a, malitegharịa sava weebụ Apache.

$ sudo systemctl restart httpd

Kwụpụ 2: Wụnye Icinga2 na RHEL 8

Iji tinye Icinga2, anyị kwesịrị ịgbakwunye ebe nchekwa Icinga ebe ọ bụ na anaghị akwado Icinga2 na ebe nchekwa AppStream.

Iji mee nke a, buru ụzọ mee ka ebe nchekwa EPEL rụọ ọrụ.

$ sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Na-esote, mee ka igodo nbinye aka GPG.

$ sudo rpm --import https://packages.icinga.com/icinga.key

Ọzọ, mepụta faịlụ nchekwa n'ime ndekọ aha /etc/yum.repos.d.

$ sudo vim  /etc/yum.repos.d/icinga2.repo

Tapawa ngọngọ koodu a

 
[icinga2]
name=Icinga 2 Repository for EPEL 8
baseurl=https://packages.icinga.com/epel/8/release
enabled=1

Chekwaa wee pụọ na faịlụ nchekwa. Mgbe ahụ melite ngwugwu cache,

$ sudo dnf makecache

Site na ebe nchekwa agbakwunyere, wụnye ngwugwu Icinga2 na ngwungwu Icinga2 ndị ọzọ metụtara.

$ sudo dnf install icinga2 icinga2-ido-mysql icinga2-selinux  vim-icinga2 -y

Na-esote, wụnye plugins Nagios nke a ga-eji na-enyocha ma ndị ọbịa anụ ahụ na nke mebere.

$ sudo dnf install nagios-plugins-all -y

Na-esote, mee ka modul Icinga2 ido-mysql na atụmatụ ndị ọzọ.

$ sudo icinga2 feature enable ido-mysql syslog command

Mgbe ahụ malitegharịa Icinga maka mgbanwe ndị a ga-etinye.

$ sudo systemctl restart icinga2

Kwụpụ 3: Mepụta ebe nchekwa data maka Icinga-IDO MySQL Module

Ihe njiri mara icinga2-IDO (Icinga Data Output) mysql bụ njirimara azụ azụ nke na-achịkọta ma na-ebupụ ozi nhazi na ọkwa niile n'ime nchekwa data. N'ihi nke a, anyị kwesịrị ịmepụta nchekwa data maka njirimara Icinga2-ido-mysql.

Ya mere, banye na MySQL nchekwa data nkesa:

$ sudo mysql -u root -p

Mepụta nchekwa data yana onye ọrụ nchekwa data maka Icinga2. Wee nye ohere niile dị na onye ọrụ nchekwa data na nchekwa data Icinga2.

> CREATE DATABASE icinga2;
> GRANT ALL PRIVILEGES ON icinga2.* TO 'icinga2_user'@'localhost' IDENTIFIED BY '[email ';

Tinye mgbanwe ndị ahụ wee pụọ na nkesa nchekwa data.

> FLUSH PRIVILEGES;
> EXIT;

Ọzọ, bubata atụmatụ nchekwa data dị ka ndị a. A ga-akpali gị maka paswọọdụ nke ị ga-enye paswọọdụ nchekwa data.

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

N'ịga n'ihu, dezie faịlụ nhazi ido-mysql.

$ sudo vim /etc/icinga2/features-available/ido-mysql.conf

Weghachite ihe mgbochi nchekwa data ma kọwaa nkọwa nchekwa data.

Chekwa ma pụọ.

Na-esote, malite ma mee ka Icinga2 nwee ike.

$ sudo systemctl start icinga2
$ sudo systemctl enable icinga2

Wee nyochaa ọkwa nke Icinga2 dị ka egosiri.

$ sudo systemctl status icinga2

Site na mmepụta dị n'okpuru ebe a, o doro anya na Icinga dị elu ma na-arụ ọrụ dịka a tụrụ anya ya.

Kwụpụ 4: Wụnye IcingaWeb2 na RHEL 8

IcingaWeb2 bụ ngwa nleba anya dabere na ebe nrụọrụ weebụ mepere emepe nke na-etinyekwa interface-ahịrị iwu. Ọ na-akwado atụmatụ Icinga azụ azụ dị ka Icinga-ido-mysql, Icinga core, Icinga2, na modul ndị ọzọ.

Iji wụnye IcingaWeb2, wụnye PowerTools site na iji iwu na-esonụ.

$ sudo dnf install 'dnf-command(config-manager)'
$ sudo dnf config-manager --set-enabled powertools

Ozugbo echichi mechara, wụnye IcingaWeb2 na CLI dị ka egosiri.

$ sudo dnf install icingaweb2 icingacli

Kwụpụ 5: Mepụta ebe nchekwa data maka IcingaWeb2

Dịka anyị mepụtara atụmatụ nchekwa data maka njirimara Icinga2-IDO-mysql, anyị kwesịkwara ịmepụta atụmatụ nke abụọ maka Icinga Web2.

Yabụ, ọzọ, banye na sava nchekwa data.

$ sudo mysql -u root -p

Mepụta nchekwa data na onye ọrụ nchekwa data maka IcingaWeb2 wee nye ikike niile onye ọrụ nchekwa data na nchekwa data Icinga Web2.

> CREATE DATABASE icingaweb2;
> GRANT ALL ON icingaweb2.* TO [email  IDENTIFIED BY '[email ';

Chekwaa mgbanwe wee pụọ.

> FLUSH PRIVILEGES;
> QUIT

Mgbe etinyere Icinga2, emepụtara faịlụ nhazi ọhụrụ maka Icinga2. Ị nwere ike ịlele ya dịka egosiri.

$ cat /etc/httpd/conf.d/icingaweb2.conf

Ịkwesịrị ịmalitegharị sava weebụ Apache maka mgbanwe ndị ị ga-abanye.

$ sudo systemctl restart httpd

Na mgbakwunye, ịkwesịrị ịtọ ọnọdụ SELinux ka ọ 'kwere' dị ka ndị a.

$ sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config

Kwụpụ 6: Ntọala Icinga2 zuru ezu site na ihe nchọgharị

Nzọụkwụ na ntinye nke Icinga2 bụ ịmepụta akara ntọala, nke bụ koodu pụrụ iche nke a ga-eji mee ihe maka nyocha na nzọụkwụ mbụ mgbe ị na-edozi Icinga2 na ihe nchọgharị.

Iji mepụta akara nzuzo, mee iwu:

$ sudo icingacli setup token create

Detuo ma debe akara ntọlite na nchekwa. Ọ bụrụ na ihe omume ahụ efunahụ gị token, ị nwere ike weghachite ya site na iji iwu a:

$ sudo icingacli setup token show

N'oge a na ntuziaka a, a na-enyocha nhazi niile. Ihe fọdụrụ bụ imecha nrụnye site na ihe nchọgharị weebụ. Iji mee nke a, chọgharịa URL nke egosiri

http://server-ip/icingaweb2/setup

Na ibe nnabata, mado token ntọlite nke ị mepụtara na mbụ.

Ozugbo ị madochara akara ahụ, pịa 'Ọzọ' ka ịga n'ihu. Nke a na-eduga gị na ibe 'Modules'. Nke a na-enye nkọwapụta nke modulu niile ị nwere ike ime. Site na ndabara, a na-eme ka modul 'nleba anya'.

Kwado modul ndị masịrị gị wee pịgharịa gaa na ala wee pịa 'Ọzọ' ka ịga n'ihu.

Na ngalaba a, hụ na ejula ihe niile achọrọ PHP, nke gụnyere modul PHP, ọba akwụkwọ na akwụkwọ ndekọ aha. Ọ bụrụ na ihe niile dị mma, pịgharịa gaa na ala wee pịa 'Ọzọ'.

Na ibe 'Nnyocha', hapụ ihe niile ka ọ dị wee pịa 'Ọzọ'.

Na ngalaba 'Database Resource', dejupụta nkọwa nchekwa data maka IcingaWeb2 dị ka akọwapụtara na Nzọụkwụ 5.

Iji gosi na nkọwapụta nchekwa data ziri ezi, pịgharịa gaa na ala wee pịa 'Nhazi nhazi'.

Ọ bụrụ na ihe niile na-aga nke ọma, ị ga-enweta ọkwa na akwadoro nhazi ahụ nke ọma.

Iji gaba na nzọụkwụ ọzọ, pịgharịa gaa na ala wee pịa 'Ọzọ'. Maka 'Authentication Backend' naanị pịa 'Ọzọ' ka ịnakwere ndabara.

Na nzọụkwụ ọzọ, mepụta onye ọrụ nchịkwa nke a ga-eji nweta wee banye na interface weebụ Icinga2.

Maka ngalaba 'nleba anya ngwa', nabata ndabara wee pịa 'Ọzọ'.

Nyochaa mgbanwe niile ị megoro ugbu a n'ụzọ. Ọ bụrụ na ihe niile dị mma, pịa 'Ọzọ' ma ọ bụrụ na ị na-eche na ị na-eme mgbanwe ọ bụla, pịa 'azụ' ma mee mgbanwe achọrọ.

Akụkụ na-esote bụ nhazi nke modul nlekota maka IcingaWeb2. Nke a bụ modul bụ isi maka Icinga Web 2 nke na-enye ọkwa na nlele akụkọ nwere ike nzacha siri ike maka nsuso mmemme dị mkpa.

Pịa 'Ọzọ' ka ịga n'ihu.

Na nzọụkwụ ọzọ, dejupụta fọm ahụ na nkọwa nchekwa data maka njirimara Icinga2-ido-mysql dị ka akọwapụtara na Nzọụkwụ 3.

Iji kwado nhazi ahụ, pịgharịa gaa na ala wee pịa 'Kwado nhazi'.

Ị ga-enweta ọkwa na akwadoro nhazi ahụ nke ọma.

Ka ịga n'ihu na nzọụkwụ ọzọ, pịgharịa gaa na ala wee pịa 'Ọzọ'. Maka 'Ụgbọ njem iwu', jiri 'Faịlụ iwu mpaghara' dị ka ụdị njem wee pịa 'Ọzọ'.

Na ngalaba 'Nlekota Nchekwa', pịa 'Ọzọ'.

Ọzọkwa, nyochaa nhazi niile maka modul nlekota Icinga2. Ọ bụrụ na ihe niile dị mma, pịa 'Mechaa' ma ọ bụghị laghachi azụ wee mee mgbanwe ndị dị mkpa.

Ọ bụrụ na ihe niile gara nke ọma na ntọala Icinga Web 2, ị ga-enweta ọkwa na edobela Icinga Web 2 nke ọma. Iji banye na interface weebụ, pịa njikọ 'Nbanye na Icinga Web 2'.

Nke a na-emepe emepe interface Icinga Web 2. Nye nkọwa akaụntụ Admin wee pịa 'nbanye'.

Nke a na-eduga gị na dashboard nlekota Icinga2 dị ka egosiri.

Ma nke ahụ bụ ya. Site n'ebe ahụ ị nwere ike nyochaa ndị ọrụ na ọrụ dị iche iche n'ime akụrụngwa netwọk gị. N'ime ntuziaka a, anyị ejegharịla gị site na ntinye nke Icinga Web 2 na RHEL 8, Rocky Linux, na AlmaLinux.