По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие
наши статьи:
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
После завершения установки запустите службу Icinga2 и добавьте сервис в автозагрузку.
systemctl start icinga2
systemctl enable icinga2
После этого проверьте службу 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 и сконфигурирован корневой пароль по умолчанию.
Шаг 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'с помощью команды dbconfig, затем выберите "Yes" для продолжения.
Введите свой пароль для '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' была завершена.
Шаг 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
Ниже приведен результат, который вы получите.
В результате была завершена установка 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.
В результате этого установка icingaweb2 завершена и создана новая база данных icingaweb2.
Шаг 6 - Установка Icinga2 и Icinga Stack Post
Откройте веб-браузер и введите IP-адрес сервера, как показано ниже. Замените IP-адрес на IP-адрес своего сервера.
http://IP_адрес/icingaweb2/setup
Вставьте код токена установки в поле и нажмите кнопку 'Далее'.
Теперь вам нужно выбрать модуль Icinga для установки, оставить модуль 'Monitoring' и нажать 'Далее'.
После этого Icinga проверит состояние среды для его установки. Убедитесь, что все необходимые модули находятся в зеленом состоянии, за исключением 'Модулей PostgreSQL', затем нажмите 'Далее'.
Теперь вам нужно выбрать Аутентификацию для доступа к icingaweb2, выбрать 'Database ' (База данных) и нажать 'Next ' (Далее).
Введите все данные базы данных для 'icingaweb2' и нажмите 'Validate Configuration' (Проверить конфигурацию) для тестирования. После того, как все прошло успешно, нажмите кнопку 'Next ' (Далее).
Теперь для аутентификации Backend Authentication выберите 'icingaweb2' и нажмите 'Next ' (Далее).
Введите логин и пароль администратора для icingaweb2 и нажмите 'Далее' еще раз.
В разделе Application Configuration (Конфигурация приложения) оставьте всё по умолчанию и нажмите 'Далее'.
Подтвердите все настройки и нажмите "Далее".
И вы получите страницу приветствия на icingaweb2. Снова нажмите "Далее", чтобы настроить backend мониторинга.
Установите имя Backend как 'icinga2' с типом 'IDO', затем нажмите 'Далее'.
Теперь вам нужно настроить MySQL IDO backend ресурс для приложения icinga2. Введите данные базы данных для icinga2 и нажмите кнопку 'Validate Configuration'.
После успешного завершения нажмите кнопку 'Далее'.
Для 'Command Transport' выберите 'Local Command File' и оставьте его по умолчанию. Затем нажмите 'Далее'.
Для службы Monitoring Security оставьте всё по умолчанию и нажмите 'Далее'.
Подтвердите все настройки и нажмите кнопку 'Готово'.
Теперь установка Icinga 2 и Icinga web 2 завершена, нажмите кнопку 'Login to Icinga Web 2', и вы будете перенаправлены на страницу входа.
Введите пользователя, которого вы настроили в самом начале и нажмите кнопку "Войти".
И, наконец, установка и настройка icinga2 и icingaweb2 на сервере Ubuntu 20.04 успешно завершена.
Windows и Linux являются очень производительными операционными системами, и у каждой из них есть множество плюсов и минусов, которые мы можем обсудить. Но как часто вы задумываетесь о потенциале сценариев и автоматизации двух операционных систем? Мы решили посмотреть, что можно делать с помощью скриптовых функций, поставляемых с Windows и Linux.
Немного истории: PowerShell
PowerShell - это среда автоматизации и задач Microsoft, удобная для управления конфигурацией. PowerShell использует компоненты, называемые командлетами, которые встроены в PowerShell. Дополнительные функции доступны через модули. Они устанавливаются из галереи PowerShell непосредственно из командной строки.
PowerShell отличается от Bash, потому что он предназначен для взаимодействия со структурами .NET изначально в Windows. Это означает, что он может передавать объекты и данные между сценариями, приложениями и сеансами. Каждый объект имеет свой собственный набор свойств, что делает обработку данных в PowerShell еще более детальной. Данные могут быть указаны как числа (целые числа), слова (строки), логические (истина и ложь) и многие другие типы. Это означает, что вы можете по-настоящему определиться с тем, как ваши скрипты обрабатывают ввод и вывод данных.
Немного истории: Bash
Системы Linux и Unix всегда выигрывали от структурирования многопользовательской терминальной среды. Это означает, что вы можете запускать дополнительные сессии в той же системе и запускать сценарии и приложения, не влияя на основные сессии, в которые вошли другие пользователи. Это сильно отличалось от ранних систем Windows и DOS, которые были однопользовательскими средами с одной сессией, до появления Windows NT в середине 90-х годов.
Первоначальная оболочка, поставляемая с Unix, была известна как оболочка Bourne, названная в честь ее создателя Стивена Борна. Bash (Bourne again Shell) является преемником оболочки Bourne с открытым исходным кодом. Bash получил широкое распространение, когда Linux был создан в начале 90-х годов, поэтому он используется до сих пор.
Существует множество функций, которые делают Bash очень популярным, главными из которых являются стабильность системы и то, что это открытый исходный код. Из-за этого он встречается практически в каждом дистрибутиве Linux. Все эти факторы делают его одной из наиболее часто используемых сред сценариев для ИТ-специалистов.
Когда использовать PowerShell
Администрирование Windows стало намного проще с тех пор, как разработка PowerShell стала частью среды Microsoft. Вместо того, чтобы бороться с неудобными пакетными файлами и планировщиком Windows, системные администраторы получают доступ к новому набору инструментов с впечатляющими приложениями и функциями.
PowerShell может уточнять детали для создания эффективных скриптов, а также некоторых коммерчески доступных приложений. PowerShell может извлекать данные прямо из подсистемы WMI, предоставляя вам в режиме реального времени глубокую информацию обо всем, от идентификаторов процессов и счетчиков обработчиков.
PowerShell включен в платформу .NET, поэтому вы можете создавать великолепно выглядящие меню и формы winform. Вы можете использовать PowerShell, чтобы делать что угодно - от запросов к базам данных SQL до захвата ваших любимых RSS-каналов прямо в сеанс PowerShell для дальнейших манипуляций. Это настоящий швейцарский нож для системного администрирования в среде Windows.
Когда использовать Bash
Если вы используете системы Linux, значит, вы знаете о необходимости автоматизации задач. Ранние ленточные накопители использовались для резервного копирования с архивированием tar. Эти операции могут быть написаны в Bash, а затем запущены через расписание cron. Сегодня мы воспринимаем подобные вещи как должное, но многие задачи приходилось выполнять вручную до создания таких сред, как Bash. Все, что связано с манипуляциями с файлами, такими как архивирование, копирование, перемещение, переименование и удаление файлов, подходит Bash.
Также возможны более сложные манипуляции с файлами. Вы можете найти файлы, созданные в определенные даты, и для каких файлов были изменены права доступа CHMOD и владельца. Bash также отлично подходит для создания интерактивных меню для запуска скриптов и выполнения системных функций. Они выполняются в неграфической среде, но работают очень хорошо. Это отлично подходит для обмена вашими библиотеками скриптов с другими.
Отличия
PowerShell и Bash в чем-то похожи, но также очень разные. Вот четыре основных отличия.
PowerShell по-разному обрабатывает данные
PowerShell отличается от Bash способом обработки данных. PowerShell - это язык сценариев, но он может передавать данные в разных форматах таким образом, чтобы он выглядел как язык программирования. PowerShell также имеет дело с областями действия в своих скриптах.
Использование переменных с $session, $script и $cache дает вашим сценариям дополнительную гибкость, позволяя передавать переменные другим командам в том же сценарии или сеансе PowerShell.
Bash - это CLI
Bash - это CLI (Command Language Interpreter), что означает интерпретатор командного языка. Как и PowerShell, Bash может передавать данные между командами по каналам. Однако эти данные отправляются в виде строк. Это ограничивает некоторые вещи, которые вы можете делать с выводом ваших скриптов, например математические функции.
PowerShell - это и CLI, и язык
Интегрированная среда сценариев PowerShell по умолчанию (ISE - Integrated Scripting Environment), поставляемая с Windows, показывает, как можно быстро и легко создавать сценарии, не жертвуя прямым доступом к командной строке. По умолчанию верхний раздел позволяет набирать строки кода сценария и быстро его тестировать.
Окно ниже представляет собой командную строку PowerShell, которая дает вам быстрый доступ для выполнения отдельных команд. Это дает вам лучшее из обоих миров между языком сценариев и оболочкой командной строки. ISE - отличный инструмент для быстрого создания прототипов решений.
PowerShell и Bash - мощные инструменты
Среда, в которой вы работаете, определит, какой инструмент вы выберете. Системные администраторы Linux, пишущие сценарии в Bash, считают, что освоить сценарии PowerShell относительно легко. Навыки написания сценариев PowerShell также в определенной степени переносятся на сценарии Bash.
Основными различиями между этими двумя языками сценариев являются синтаксис и обработка данных. Если вы понимаете такие концепции, как переменные и функции, тогда изучение любого из этих языков становится проще.
На дворе 1988 год – «Microsoft» выпустила операционную систему «MS DOS 4.0», на вершине Эвереста проведена первая в истории телетрансляция, а за окном неспешно протекает эпоха дутых, бесформенных курток :). Казалось бы, все здорово, но ребята из CCITT решают подлить масла в огонь и релизят первое описание ISDN (Integrated Services Digital Network), о котором мы и поговорим.
А что это?
В целом, ISDN это набор стандартов для передачи голоса, видео, блоков данных сети передачи данных и других сервисов по обычным каналам ТфОП (PSTN) - телефонной сети общего пользования. Одновременно. До появления Integrated Services Digital Network, телефонные системы рассматривались как инструмент передачи голоса, с некоторыми сервисами на сети.
ISDN использует временное мультиплексирование TDM (Time Division Multiplexing) и может работать с голосом и данными по одним и тем же линиям. В классических телефонных системах такого и близко не было :)
Сам по себе ISDN представляет гибрид, обеспечивая как доступ в сеть с коммутацией каналов, так и в сеть с коммутацией пакетов. Обеспечивая цифровую передачу голоса или данных, ISDN обеспечивает высокое качество передаваемых данных. По скорости: разгон до 64 кбит/с по абонентской линии и до 128 кбит/с по BRI интерфейсу в обе стороны (загрузка/передача).
В контексте семиуровневой модели OSI (Open Systems Interconnection), ISDN уютно расположился на 1, 2 и 3 уровнях (физический, канальный и сетевой). К первому уровню мы можем отнести BRI/PRI интерфейсы, то есть именно физические соединения, ко второму, протокол контроль ошибок физический линии (LAPD), а на третьем, то есть сетевом, расположился ОКС7 (SS7, Signaling System 7).
ISDN интерфейсы
Мы можем отметить следующие интерфейсы стандарта ISDN:
Basic Rate Interface (BRI) - в BRI интерфейсе существуют два B – канала, которые созданы для передачи данных и 1 D – канал, которые переносит сигнализацию. B – каналы разгоняются до 64 кбит/с, а D – канал гоняет на скорости 16 кбит/c. Кстати, B – канала живут свои жизнью независимо – например, по первому может установиться TCP/IP сессия, а по второму передаваться факс;
Более подробно про BRI можно почитать в нашей статье;
Primary Rate Interface (PRI) - слышали про Е1 - поток? ИКМ 30? Это оно и есть. Условно говоря, PRI состоит из D – сигнального канала (двух, в случае Е1) и от 23 до 30 B – каналов, или как их еще называют, тайм слотов (от TDM).;
Мы тут сравнивали PRI и SIP. Почитать можно тут :)
Broadband-ISDN (B-ISDN) - это так называемый «широкополосный ISDN». Это некое уточнение, спецификация к стандарту, которая расширяет параметры обычного ISDN. Он создан для сетевых служб, которые требуют широкую полосу пропускания;
ISDN службы
Условно, сервисы, которые отдает ISDN можно поделить на три категории:
Передача информации - если говорить прямым языком, «перенос» данных (голос, видео и данные) между пользователями. Сервис живет на нижних трех уровнях модели OSI. ISDN сможет «переносить» данные поверх сетей с коммутацией – каналов/пакетов/фреймов. В данном случае, ISDN не производит никаких манипуляций с содержимым блоков данных;
Телеслужбы - то, что живет от 4 до 7 уровня модели OSI. Вот тут, сеть может менять содержимое пакетов по определенным алгоритмам. ISDN сможет работать с телетекстом, факсом, видеоконференциями. То есть по факту, это некие данные, которые исходят от приложений;
Дополнительные услуги - голосовая почта, вторая линия прочие сервисы, которые могут строить компании поверх ISDN. И зарабатывать на этом :);
Основные принципы ISDN
Как мы сказали в начале статьи, ISDN живет по правилам, описанные CCITT (сейчас это всем известный ITU-T). Вот на чем ребята из ITU – T делают основные акценты:
Поддержка разнородных приложений в ISDN;
Поддержка не только голосовых сервисов;
Акцент на 64 кбитных коннекциях;
Интеллектуальность сети;
Распределенная по уровням архитектура ISDN (по аналогии с OSI);
Огромное разнообразие конфигурации сети;