Как установить Icinga 2 и Icinga Web 2 в Ubuntu 16.04

Icinga 2 - это широко используемая система мониторинга сетевых ресурсов с открытым исходным кодом, а Icinga Web 2 является официальным веб-интерфейсом для Icinga 2.

В этом уроке я объясню, как установить их на сервер Ubuntu 16.04.

Предпосылки

  • Недавно развернутый экземпляр сервера Vultr Ubuntu 16.04.
  • Пользователь sudo. Чтобы узнать больше о создании пользователя sudo в Ubuntu, см. Инструкции по Debian в другом учебнике по Vultr .

Шаг 1: Обновите систему

Войдите с терминала SSH как пользователь sudo, а затем обновите систему до последнего стабильного состояния, используя следующие команды:

sudo apt-get update -y
sudo apt-get upgrade -y
sudo shutdown -r now

После перезагрузки используйте того же пользователя sudo для входа в систему.

Шаг 2: Установите Apache

Установите Apache, используя следующую команду:

sudo apt-get install apache2 -y

Удалите страницу приветствия Ubuntu Apache по умолчанию:

sudo rm /var/www/html/index.html

В целях безопасности вы должны запретить Apache /var/www/htmlпредоставлять посетителям файлы и каталоги в корневом веб-каталоге :

sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/apache2/apache2.conf

Запустите сервис Apache и запустите его при загрузке:

sudo systemctl start apache2.service
sudo systemctl enable apache2.service

Шаг 3: Настройте брандмауэр UFW

По умолчанию брандмауэр UFW отключен на вновь развернутом экземпляре сервера Vultr Ubuntu 16.04. Используйте следующие команды, чтобы включить брандмауэр UFW и разрешить входящий трафик SSH, HTTP и HTTPS:

sudo ufw app list
sudo ufw allow OpenSSH
sudo ufw allow in "Apache Full"
sudo ufw enable

Шаг 4: Установите MariaDB

4.1) Используйте следующую команду для установки MariaDB:

sudo apt-get install mariadb-client mariadb-server -y

4.2) Запустите сервис MariaDB:

sudo systemctl start mysql.service
sudo systemctl enable mysql.service

4.3) Безопасная установка MariaDB:

sudo /usr/bin/mysql_secure_installation

Во время интерактивного процесса ответьте на вопросы один за другим, как показано ниже:

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

Примечание : замените <your-password>свой собственный пароль root MySQL.

4.4) Измените плагин аутентификации rootпользователя MySQL :

sudo mysql -u root -p

Для входа используйте пароль root MariaDB, который вы установили ранее.

В оболочке MySQL:

UPDATE mysql.user SET authentication_string=PASSWORD('<your-password>'), plugin='mysql_native_password' WHERE user='root';
FLUSH PRIVILEGES;
EXIT;

Примечание : замените <your-password>свой собственный пароль root MySQL.

Шаг 5: Установите PHP

Установите PHP 7.0 и несколько расширений для Icinga 2 и Icinga Web 2:

sudo apt-get install php7.0 libapache2-mod-php7.0 php7.0-gd php7.0-intl php7.0-xml php7.0-ldap php7.0-mysql php7.0-pgsql php-imagick -y

Установите текущую версию Composer:

cd
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === 'e115a8dc7871f15d853148a7fbac7da27d6c0030b848d9b3dc09e2a0388afed865e6a3d6b3c0fad45c48e2b5fc1196ae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

Примечание . Указанные выше команды могут устареть в будущем, поэтому вы всегда должны получать последнюю версию с официального сайта Composer .

По сути удобства перемещения сценария Composer composer.pharк /usr/local/binи переименовать его composer:

sudo mv ~/composer.phar /usr/local/bin/composer

Установите zip и распакуйте:

sudo apt-get install zip unzip -y

Установите компонент ZendFramework Db с помощью Composer:

composer require zendframework/zend-db

Затем вам нужно установить правильный часовой пояс для вашего компьютера, который можно определить на официальном сайте PHP . Например, если ваш экземпляр сервера находится в центре данных Vultr Los Angeles, то значение часового пояса для него равно America/Los_Angeles.

Откройте файл конфигурации PHP с помощью редактора vi:

sudo vi /etc/php/7.0/apache2/php.ini

Найдите строку:

;date.timezone =

Измените это на:

date.timezone = America/Los_Angeles

Сохранить и выйти:

:wq!

Перезапустите службу Apache, чтобы новые настройки вступили в силу:

sudo systemctl restart apache2.service

Шаг 6: Установите Icinga 2 и его плагины

Настройте репо Icinga APT:

cd
wget -O - http://packages.icinga.org/icinga.key | sudo apt-key add -
sudo add-apt-repository 'deb http://packages.icinga.org/ubuntu icinga-xenial main'
sudo apt-get update

Установите Icinga 2 и несколько плагинов с помощью репозитория Icinga APT:

sudo apt-get install icinga2 nagios-plugins -y

Чтобы узнать больше о плагинах Icinga 2, посетите веб-сайт проекта «Плагины мониторинга» .

Запустите сервис Icinga 2:

sudo systemctl start icinga2.service
sudo systemctl enable icinga2.service

По умолчанию программа Icinga 2 включает три функции: проверку, основной журнал и уведомление. Вы можете подтвердить это с помощью следующей команды:

sudo icinga2 feature list

Шаг 7: Настройте модули Icinga 2 IDO

7.1) Установите модули IDO (Icinga Data Output) для MySQL

sudo apt-get install icinga2-ido-mysql

В Configuring icinga2-ido-mysqlмастере, когда вас спросят, хотите ли вы включить функцию ido-mysql Icinga 2, выберите <No>. Мы вручную включим эту функцию позже.

Когда вас спросят, хотите ли вы настроить базу данных для icinga2-ido-mysql, выберите <No>. Вместо этого вы можете вручную создать базу данных, как описано в шаге 7.2.

7.2) Создание базы данных для Icinga 2

Войдите в оболочку MySQL от имени пользователя root:

sudo mysql -u root -p

Используйте пароль root MariaDB, который вы установили в шаге 4 для входа.

В оболочке MySQL создайте базу данных с именем icingaи пользователь базы данных icingaс паролем icinga, а затем предоставьте привилегии для этой базы данных этому пользователю базы данных.

CREATE DATABASE icinga;
GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga.* TO 'icinga'@'localhost' IDENTIFIED BY 'icinga';
FLUSH PRIVILEGES;
EXIT;

7.3) Импорт схемы Icinga 2 IDO

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

При появлении запроса введите корневой пароль MariaDB, чтобы завершить работу.

7.4) Включить модуль IDO MySQL

sudo vi /etc/icinga2/features-available/ido-mysql.conf

Найдите эти строки:

user = "icinga2",
password = "",
host = "localhost",
database = "icinga2"

Измените их, как показано ниже:

user = "icinga"
password = "icinga"
host = "localhost"
database = "icinga"

Сохранить и выйти:

:wq!

Включите функцию ido-mysql:

sudo icinga2 feature enable ido-mysql
sudo systemctl restart icinga2.service

Шаг 8: Установите Icinga Web 2

8.1) Настройка внешнего командного канала

sudo icinga2 feature enable command
sudo systemctl restart icinga2.service
sudo icinga2 feature list

Прежде чем вы сможете отправлять команды Icinga 2 с помощью веб-интерфейса, вам необходимо добавить www-dataпользователя в icingacmdгруппу:

sudo groupadd icingacmd
sudo usermod -a -G icingacmd www-data

Используйте следующую команду для подтверждения вашей настройки:

id www-data

8.2) Установить пакеты Icinga Web 2

sudo apt-get install icingaweb2 icingaweb2-module-monitoring icingaweb2-module-doc icingacli -y

Укажите корневой веб-каталог Apache на местоположение, указанное в Icinga Web 2:

sudo icingacli setup config webserver apache --document-root /usr/share/icingaweb2/public
sudo systemctl restart apache2.service

8.3) Настройка базы данных Icinga Web 2

sudo mysql -u root -p

CREATE DATABASE icingaweb2;
EXIT;

8.4) Загрузите схему базы данных Icinga Web 2

mysql -u root -p icingaweb2 < /usr/share/icingaweb2/etc/schema/mysql.schema.sql

8.5) Создание токена настройки для последующего использования в мастере веб-установки Icinga Web 2

sudo icingacli setup token create

8.6) Запустите мастер установки Icinga 2 в веб-интерфейсе.

Укажите в своем веб-браузере следующий URL:

http://<your-serve-ip>/icingaweb2/setup

8.7) На странице приветствия введите созданный ранее токен настройки, а затем нажмите Nextкнопку.

8.8) На странице «Модули» выберите один или несколько модулей, которые вы хотите включить (по крайней мере, Monitoringмодуль необходим), а затем нажмите Nextкнопку.

8.9) На странице «Требования» убедитесь, что все необходимые элементы выполнены, а затем нажмите Nextкнопку.

8.10) На странице Аутентификация вам нужно выбрать метод аутентификации при доступе к Icinga Web 2. Здесь вы можете выбрать Database, а затем нажать Nextкнопку.

8.11) На странице ресурсов базы данных заполните все обязательные поля, как показано ниже, и нажмите Nextкнопку.

  • Имя ресурса *: icingaweb_db
  • Тип базы данных *: MySQL
  • Host *: localhost
  • Имя базы данных *: icingaweb2
  • Имя пользователя *: root
  • Пароль *: <MariaDB-root-пароль>

8.12) На странице «Аутентификационный бэкэнд», используя имя бэкенда по умолчанию icingaweb2, нажмите Nextкнопку для продолжения.

8.13) На странице администрирования настройте первую административную учетную запись Icinga Web 2 (допустим, что это так icingaweb2admin) и пароль (допустим, что это так icingaweb2pass), а затем нажмите Nextкнопку.

8.14) На странице «Конфигурация приложения» вы можете настроить параметры конфигурации приложения и ведения журнала в соответствии со своими потребностями. На данный момент вы можете использовать значения по умолчанию, перечисленные ниже, и нажать Nextкнопку, чтобы продолжить.

  • Показать стеки: проверено
  • Тип хранилища пользовательских настроек *: База данных
  • Тип ведения журнала *: системный журнал
  • Уровень ведения журнала *: ��шибка
  • Префикс приложения *: icingaweb2

8.15) На странице обзора дважды проверьте свою конфигурацию, а затем нажмите Nextкнопку.

8.16) На странице приветствия конфигурации модуля мониторинга нажмите Nextкнопку.

8.17) На странице «Мониторинг бэкэнда» используйте имя icingaи тип бэкэнда по умолчанию IDO, а затем нажмите Nextкнопку.

8.18) На странице «Мониторинг ресурсов IDO» введите данные базы данных IDO, которые вы настроили ранее, и нажмите Nextкнопку.

  • Название ресурса *: icinga_ido
  • Тип базы данных *: MySQL
  • Host *: localhost
  • Имя базы данных *: icinga
  • Имя пользователя *: icinga
  • Пароль *: icinga

8.19) На странице Command Transport все еще используйте эти значения по умолчанию, перечисленные ниже. Нажмите на Nextкнопку, чтобы двигаться дальше.

  • Транспортное имя *: icinga2
  • Тип транспорта *: Локальный командный файл
  • Командный файл *: /var/run/icinga2/cmd/icinga2.cmd

8.20) На странице безопасности мониторинга по-прежнему используйте значение по умолчанию:

  • Защищенные пользовательские переменные: * pw *, * pass *, community

Нажмите Nextкнопку, чтобы перейти на следующую страницу.

8.21) На странице обзора дважды проверьте свою конфигурацию и нажмите Finishкнопку.

8.22) С поздравлениями! нажмите Login to Icinga Web 2кнопку, чтобы перейти на страницу входа в Icinga Web 2. Для входа используйте учетную запись администратора Icinga Web 2 и пароль, которые вы установили ранее. Не стесняйтесь изучать панель инструментов Icinga Web 2.

На этом мы завершаем наш урок. Спасибо за чтение.



Leave a Comment

Как установить платформу интернет-магазина LiteCart в Ubuntu 16.04

Как установить платформу интернет-магазина LiteCart в Ubuntu 16.04

LiteCart является бесплатной платформой для покупок с открытым исходным кодом, написанной на PHP, jQuery и HTML 5. Это простой, легкий и простой в использовании софтвар для электронной коммерции.

Как установить Anchor CMS на CentOS 7 LAMP VPS

Как установить Anchor CMS на CentOS 7 LAMP VPS

Используете другую систему? Anchor CMS - это сверхпростая и чрезвычайно легкая бесплатная система управления контентом (CMS) с открытым исходным кодом.

Настройка NFS Share на Debian

Настройка NFS Share на Debian

NFS - это сетевая файловая система, которая позволяет компьютерам получать доступ к файлам через компьютерную сеть. Это руководство объясняет, как вы можете выставлять папки через NF

Как установить Matomo Analytics на Fedora 28

Как установить Matomo Analytics на Fedora 28

Используете другую систему? Matomo (ранее Piwik) - это аналитическая платформа с открытым исходным кодом, открытая альтернатива Google Analytics. Источник Matomo размещен o

Как установить PHP 7.3 на веб-сервере Arch Linux

Как установить PHP 7.3 на веб-сервере Arch Linux

Предварительные условия Сервер Vultr, работающий до последней версии Arch Linux (см. Эту статью). Работающий веб-сервер с доступом Apache или Nginx Sudo. Команды требуют

Настройте сервер TeamTalk в Linux

Настройте сервер TeamTalk в Linux

TeamTalk - это система конференц-связи, которая позволяет пользователям вести высококачественные аудио / видео-беседы, текстовый чат, передавать файлы и обмениваться экранами. Это я

Как установить Backdrop CMS 1.8.0 на CentOS 7 LAMP VPS

Как установить Backdrop CMS 1.8.0 на CentOS 7 LAMP VPS

Используете другую систему? Backdrop CMS 1.8.0 - это простая и гибкая, удобная для мобильных устройств, бесплатная система с открытым исходным кодом (CMS), которая позволяет нам

Как получить доступ к Vultr VPS

Как получить доступ к Vultr VPS

Vultr предоставляет несколько различных способов доступа к вашему VPS для настройки, установки и использования. Учетные данные для доступа Учетные данные для доступа к вашему VPS по умолчанию

Как установить Ranger Terminal File Manager в Linux

Как установить Ranger Terminal File Manager в Linux

Ranger - это файловый менеджер на основе командной строки с привязками клавиш VI. Он предоставляет минималистичный и приятный интерфейс curses с видом на иерархию каталогов.

Как использовать HTTPS на веб-сервере Arch Linux

Как использовать HTTPS на веб-сервере Arch Linux

Предварительные условия Сервер Vultr, работающий до последней версии Arch Linux (см. Эту статью). Работающий веб-сервер, доступ к Apache или Nginx Sudo Требуются команды t

Настройте Magento на CentOS 6

Настройте Magento на CentOS 6

Если вы хотите разместить свой инвентарь в Интернете или просто магазин технических аксессуаров, Magento - отличное решение для электронной коммерции в Интернете. Это статья

Как собрать Brotli из исходного кода на Ubuntu 18.04 LTS

Как собрать Brotli из исходного кода на Ubuntu 18.04 LTS

Используете другую систему? Brotli - это новый метод сжатия с лучшей степенью сжатия, чем GZIP. Его исходный код размещен на этом Githu

Использование MySQL Views в Debian 7

Использование MySQL Views в Debian 7

Введение В MySQL есть замечательная функция, известная как views. Представления хранятся запросы. Думайте о них как о псевдониме для длинного запроса. В этом руководстве

Как установить AirSonic на CentOS 7

Как установить AirSonic на CentOS 7

Используете другую систему? AirSonic - это бесплатный и потоковый сервер с открытым исходным кодом. В этом уроке я проведу вас через процесс развертывания

Как установить OrangeScrum на CentOS 7

Как установить OrangeScrum на CentOS 7

OrangeScrum - это бесплатный инструмент управления проектами с открытым исходным кодом, который широко используется в малом и среднем бизнесе. В этой статье я проведу вас через

Отключить или ограничить root-вход через SSH в Linux

Отключить или ограничить root-вход через SSH в Linux

Разрешение входа в систему через SSH обычно считается плохой практикой безопасности во всей индустрии технологий. Вместо этого вы можете выполнять чувствительные административные

Как установить Subrion 4.1 CMS на Ubuntu 16.04 LAMP VPS

Как установить Subrion 4.1 CMS на Ubuntu 16.04 LAMP VPS

Используете другую систему? Subrion 4.1 CMS - это мощная и гибкая система управления контентом с открытым исходным кодом (CMS), которая обеспечивает интуитивно понятный и понятный контент.

Как установить Vtiger CRM с открытым исходным кодом на CentOS 7

Как установить Vtiger CRM с открытым исходным кодом на CentOS 7

Vtiger CRM - это популярное приложение для управления взаимоотношениями с клиентами, которое может помочь предприятиям увеличить продажи, обеспечить обслуживание клиентов и увеличить прибыль. я

Как установить DokuWiki на Ubuntu 16.04 LTS

Как установить DokuWiki на Ubuntu 16.04 LTS

Используете другую систему? DokuWiki - это вики-программа с открытым исходным кодом, написанная на PHP, для которой не требуется база данных. Хранит данные в текстовых файлах. DokuWik

Создание внешнего интерфейса HTML 5 RDP / SSH с использованием гуакамоле в Ubuntu 16.04 LTS

Создание внешнего интерфейса HTML 5 RDP / SSH с использованием гуакамоле в Ubuntu 16.04 LTS

Введение Цель этого руководства - избавиться от общедоступных соединений SSH и общедоступных RDP. Поместив все это за очень удобный клиент HTML5

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

6 невероятных фактов о Nintendo Switch

6 невероятных фактов о Nintendo Switch

Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.

Технические обещания, которые все еще не выполнены

Технические обещания, которые все еще не выполнены

Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.

Функциональные возможности уровней эталонной архитектуры больших данных

Функциональные возможности уровней эталонной архитектуры больших данных

Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.

Как ИИ может вывести автоматизацию процессов на новый уровень?

Как ИИ может вывести автоматизацию процессов на новый уровень?

Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.

Телемедицина и удаленное здравоохранение: будущее уже здесь

Телемедицина и удаленное здравоохранение: будущее уже здесь

Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше