Как установить 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

Изучение 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. Прочтите эту статью, чтобы узнать больше