ѕодпишитесь на наш Telegram-канал Ѕудьте в курсе последних новостей 👇 😉 ѕодписатьс€
ѕоддержим в трудное врем€ —пециальное предложение на техническую поддержку вашей »“ - инфраструктуры силами наших экспертов ѕодобрать тариф
ѕоставка оборудовани€ √аранти€ и помощь с настройкой. —кидка дл€ наших читателей по промокоду WIKIMERIONET  упить
»нтерфейс статистики Merion Mertics показывает ключевые диаграммы и графики по звонкам, а также историю звонков в формате, который легко поймет менеджер ѕопробовать бесплатно
¬недрение
офисной телефонии
Ўаг на пути к созданию доступных унифицированных коммуникаций в вашей компании ¬недрить
»нтеграци€ с CRM ѕомогаем навести пор€док с данными
и хранить их в единой экосистеме
ѕодключить
»“ Ѕезопасность ”мна€ информационна€ безопасность дл€ вашего бизнеса «аказать
ћерион Ќетворкс

9 минут чтени€

Icinga - это бесплатное средство мониторинга с открытым исходным кодом дл€ вашего дата-центра. Ёто приложение дл€ мониторинга компьютерных систем и работы сети, которое провер€ет состо€ние готовности вашей сети и компьютерных ресурсов, уведомл€ет о перебо€х в работе системы, генерирует данные о производительности ваших ресурсов, а также обеспечивает высокую степень работоспособности и возможность настройки мониторинга распределЄнных систем со встроенной функцией кластера.

Icinga была создана в 2009 году в качестве разветвлени€ средства мониторинга Nagios. Ќо потом была заново переписана на —++ и стала одним из самых попул€рных инструментов мониторинга в интернете. —лово "»цинга" - это «улусское слово, означающее "оно ищет", или "оно обозревает", или "оно исследует".

¬ этом учебном пособии мы покажем вам, как установить и настроить инструмент мониторинга Icinga 2 на сервере LTS Ubuntu 20.04. ћы установим Icinga 2 из официального репозитори€, а затем настроим icingaweb2, облегченный и расшир€емый веб-интерфейс дл€ системы мониторинга icinga2.


ѕредпосылки

ƒл€ этого руководства мы установим icinga2 и icingaweb2, использу€ сервер Ubuntu 20.04 с 2 √Ѕ оперативной пам€ти. Ќо эти данные мен€ютс€ в зависимости от размера вашей »“-инфраструктуры.


„то мы будем делать?

  • ”становка Icinga2 и Nagios Monitoring Plugins;
  • ”становка и настройка базы данных MySQL;
  • ”становка и настройка модул€ Icinga MySQL;
  • ”становка Apache2 и PHP-пакетов;
  • ”становка и настройка Icingaweb2;
  • ”становка Icinga2 Stack Post.

Ўаг 1 - ”становка Icinga2 и системы мониторинга Nagios

—перва мы добавим репозиторий icinga2 дл€ Ubuntu 20.04 и установим пакеты icinga2 и плагины мониторинга Nagios. ƒобавьте GPG ключ Icinga2 в вашу систему.

curl https://packages.icinga.com/icinga.key | apt-key add -

“еперь перейдите в директорию '/etc/apt/sources.list.d' и создайте новый репозиторий 'icinga-focal.list'.

cd /etc/apt/sources.list.d/
vim icinga-focal.list

¬ставьте следующую конфигурацию репозитори€.

deb http://packages.icinga.com/ubuntu icinga-focal main
deb-src http://packages.icinga.com/ubuntu icinga-focal main

Ќажмите сохранить и закройте. «атем обновите все доступные репозитории и установите подключаемые модули Icinga2 и Nagios Monitoring с помощью команды apt ниже.

sudo apt update
sudo apt install icinga2 monitoring-plugins
curl https://packages.icinga.com/icinga.key | apt-key add -

ѕосле завершени€ установки запустите службу Icinga2 и добавьте сервис в автозагрузку.

systemctl start icinga2
systemctl enable icinga2

ѕосле этого проверьте службу icinga2, использу€ приведенную ниже команду.

systemctl status icinga2

Ќиже приведен результат, который вы получите.

systemctl status icinga2

¬ результате сервис icinga2 запущен и работает на Ubuntu 20.04 FocalFossa.


Ўаг 2 - ”становка и настройка базы данных MySQL

Ќа этом этапе мы установим последнюю версию сервера MySQL на нашем Ubuntu 20.04 и установим пароль по умолчанию дл€ пользовател€ MySQL с root правами. ”становите MySQL сервер с помощью команды apt, приведенной ниже.

sudo apt install mysql-server mysql-client

ѕосле этого запустите службу MySQL и добавьте еЄ в автозагрузку.

systemctl start mysql
systemctl enable mysql

» сервис MySQL готов и запущен. ƒалее мы зададим пароль дл€ root - пользовател€ MySQL с помощью командной строки 'mysql_secure_installation', которые предоставлены MySQL-пакетами. «апустите команду 'mysql_secure_installation', котора€ представлена ниже.

mysql_secure_installation

“еперь вам будет предложено настроить новый пароль дл€ пользовател€ root, введите надежный пароль, а затем введите "Y" дл€ прочих конфигураций.

Press y|Y for Yes, any other key for No: 
Please set the password for root here.

New password: 
Re-enter new password:

Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y

¬ результате завершена установка сервера MySQL и сконфигурирован корневой пароль по умолчанию.

mysql_secure_installation

Ўаг 3 - ”становка и настройка модул€ Icinga MySQL

ѕосле установки сервера MySQL мы установим модуль icinga2 дл€ поддержки MySQL под названием 'icinga2-ido-mysql'. ”становка 'icinga2-ido-mysql' возможна с помощью команды apt, приведенной ниже.

sudo apt install icinga2-ido-mysql

“еперь вам будет предложено включить функцию icinga2 ido-mysql, выберите "ƒа", чтобы продолжить.

включить функцию icinga2 ido-mysql

—конфигурируйте 'icinga2-ido-mysql'с помощью команды dbconfig, затем выберите "Yes" дл€ продолжени€.

—конфигурируйте 'icinga2-ido-mysql'с помощью команды dbconfig

¬ведите свой пароль дл€ 'icinga2-ido-mysql'.

¬ведите свой пароль дл€ 'icinga2-ido-mysql'

ѕовторите пароль дл€ 'icinga2-ido-mysql'.

ѕовторите пароль дл€ 'icinga2-ido-mysql'

¬ результате установка пакета 'icinga2-ido-mysql' была завершена, и был создан новый пользователь MySQL 'icinga2'.

«атем, чтобы Icinga работала с новой версией MySQL, мы настроим MySQL пользовател€ 'icinga2' с аутентификацией по встроенному паролю MySQL.

¬ойдите в командную строку MySQL, использу€ нижеприведенную команду.

mysql -u root -p

“еперь измените аутентификацию пользовател€ 'icinga2@localhost' с помощью собственного плагина аутентификации MySQL, использу€ следующий запрос.

ALTER USER icinga2@localhost IDENTIFIED WITH mysql_native_password BY 'aqwe123@#$';
flush privileges;

¬ведите 'exit', чтобы выйти из командной строки MySQL, а пользователь MySQL 'icinga2' теперь будет использовать родной плагин аутентификации.

ƒалее, включите функцию 'ido-mysql' и проверьте все включенные плагины, использу€ следующую команду.

icinga2 feature enable ido-mysql
icinga2 feature list

‘ункци€ 'ido-mysql' будет включена, чтобы применить новую конфигурацию, перезапустите службу icinga2.

systemctl restart icinga2

“аким образом, установка и настройка 'icinga2-ido-mysql' была завершена.

установка и настройка 'icinga2-ido-mysql' была завершена

Ўаг 4 - ”становка Apache2 и PHP-пакетов

Ќа этом шаге, мы установим пакеты Apache и PHP дл€ icingaweb2 и мы будем использовать PHP 7.3, который доступен в репозитории PPA, потому что на данный момент icingaweb2 еще не поддерживаетс€ в новой версии PHP 7.4.

—начала установите пакет 'python3-software-properties' и добавьте репозиторий PHP PPA, использу€ следующую команду.

sudo apt install python3-software-properties
sudo add-apt-repository ppa:ondrej/php

ƒалее установите Apache и PHP пакеты с помощью команды apt, описанной ниже.

sudo apt install apache2 php7.3 php7.3-common php7.3-gd php7.3-ldap php7.3-intl php7.3-curl libapache2-mod-php7.3 php7.3-mysql php7.3-pgsql php7.3-xml

ѕосле того, как вс€ установка будет завершена, отредактируйте конфигурацию 'php.ini' с помощью vim-редактора.

vim /etc/php/7.3/apache2/php.ini

—нимите комментарий с опции 'date.timezone' и введите свой часовой по€с.

date.timezone = Asia/Singapore

–аскомментируйте конфигурацию 'cgi.fix_pathinfo' и измените значение на '0'.

cgi.fix_pathinfo=0 

—охраните и закройте. ƒалее перезапустите службу Apache2 и добавьте ее в автозагрузку.

systemctl restart apache2
systemctl enable apache2

—лужба Apache2 запущена и работает, проверьте еЄ, использу€ следующую команду.

systemctl status apache2

Ќиже приведен результат, который вы получите.

systemctl status apache2

¬ результате была завершена установка Apache и PHP пакетов дл€ icingaweb2.


Ўаг 5 - ”становка и настройка Icingaweb2

ѕосле установки Apache и PHP-пакетов мы установим пакет icingaweb2 и создадим новую базу данных MySQL дл€ icingaweb2. Ќачните установку пакетов icingaweb2 и icingacli с помощью команды apt.

sudo apt install icingaweb2 icingacli

ѕосле завершени€ установки сгенерируйте токен icingaweb2 дл€ установки с помощью приведенной ниже команды.

icingacli setup token create

Ќиже приведен результат, который вы получите.

The newly generated setup token is: 9b871ead0a60c94f

“еперь скопируйте код токена в надЄжное место, он будет использован дл€ установки icingaweb2. ƒалее войдите в командную строку MySQL, использу€ нижеприведенную команду mysql.

mysql -u root -p

“еперь создайте новую базу данных и пользовател€, использу€ следующие запросы.

create database icingaweb2;
create user icingaweb2@localhost identified with mysql_native_password by "icingaweb2pass";
grant all privileges on icingaweb2.* to icingaweb2@localhost with grant option;
flush privileges;

¬ведите 'exit', чтобы выйти из командной строки MySQL.

¬ведите 'exit', чтобы выйти из командной строки MySQL

¬ результате этого установка icingaweb2 завершена и создана нова€ база данных icingaweb2.


Ўаг 6 - ”становка Icinga2 и Icinga Stack Post

ќткройте веб-браузер и введите IP-адрес сервера, как показано ниже. «амените IP-адрес на IP-адрес своего сервера.

http://IP_адрес/icingaweb2/setup

¬ставьте код токена установки в поле и нажмите кнопку 'ƒалее'.

¬ставьте код токена

“еперь вам нужно выбрать модуль Icinga дл€ установки, оставить модуль 'Monitoring' и нажать 'ƒалее'.

выбрать модуль Icinga дл€ установки

ѕосле этого Icinga проверит состо€ние среды дл€ его установки. ”бедитесь, что все необходимые модули наход€тс€ в зеленом состо€нии, за исключением 'ћодулей PostgreSQL', затем нажмите 'ƒалее'.

все необходимые модули наход€тс€ в зеленом состо€нии

“еперь вам нужно выбрать јутентификацию дл€ доступа к icingaweb2, выбрать 'Database ' (Ѕаза данных) и нажать 'Next ' (ƒалее).

выбрать јутентификацию дл€ доступа к icingaweb2

¬ведите все данные базы данных дл€ 'icingaweb2' и нажмите 'Validate Configuration' (ѕроверить конфигурацию) дл€ тестировани€. ѕосле того, как все прошло успешно, нажмите кнопку 'Next ' (ƒалее).

¬ведите все данные базы данных дл€ 'icingaweb2'

“еперь дл€ аутентификации Backend Authentication выберите 'icingaweb2' и нажмите 'Next ' (ƒалее).

дл€ аутентификации Backend Authentication выберите 'icingaweb2'

¬ведите логин и пароль администратора дл€ icingaweb2 и нажмите 'ƒалее' еще раз.

логин и пароль администратора дл€ icingaweb2

¬ разделе Application Configuration ( онфигураци€ приложени€) оставьте всЄ по умолчанию и нажмите 'ƒалее'.

¬ разделе Application Configuration ( онфигураци€ приложени€) оставьте всЄ по умолчанию

ѕодтвердите все настройки и нажмите "ƒалее".

ѕодтвердите все настройки и нажмите ƒалее

» вы получите страницу приветстви€ на icingaweb2. —нова нажмите "ƒалее", чтобы настроить backend мониторинга.

настроить backend мониторинга

”становите им€ Backend как 'icinga2' с типом 'IDO', затем нажмите 'ƒалее'.

”становите им€ Backend как 'icinga2' с типом 'IDO'

“еперь вам нужно настроить MySQL IDO backend ресурс дл€ приложени€ icinga2. ¬ведите данные базы данных дл€ icinga2 и нажмите кнопку 'Validate Configuration'.

ѕосле успешного завершени€ нажмите кнопку 'ƒалее'.

ѕосле успешного завершени€ нажмите кнопку 'ƒалее'

ƒл€ 'Command Transport' выберите 'Local Command File' и оставьте его по умолчанию. «атем нажмите 'ƒалее'.

ƒл€ 'Command Transport' выберите 'Local Command File'

ƒл€ службы Monitoring Security оставьте всЄ по умолчанию и нажмите 'ƒалее'.

ƒл€ службы Monitoring Security оставьте всЄ по умолчанию и нажмите 'ƒалее'

ѕодтвердите все настройки и нажмите кнопку '√отово'.

одтвердите все настройки и нажмите кнопку '√отово'

“еперь установка Icinga 2 и Icinga web 2 завершена, нажмите кнопку 'Login to Icinga Web 2', и вы будете перенаправлены на страницу входа.

установка Icinga 2 и Icinga web 2 завершена

¬ведите пользовател€, которого вы настроили в самом начале и нажмите кнопку "¬ойти".

¬ведите пользовател€, которого вы настроили в самом начале

», наконец, установка и настройка icinga2 и icingaweb2 на сервере Ubuntu 20.04 успешно завершена.

установка и настройка icinga2 и icingaweb2 на сервере Ubuntu 20.04 успешно завершена