29.03.2023

Средства системного администратора Linux

По состоянию на 2015 год администратор, работавший в версиях Linux того времени, имел скудный набор средств автоматизации и администрирования. Выходить из сложившейся ситуации приходилось при помощи скриптов, написанных индивидуальными разработчиками на Python, bash и Perl. Для работы над значительно большим массивом данных уже требовалось серьезное энтерпрайз-решение, разработанное Oracle, IBM, либо RedHat.

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

Средства мониторинга

Настроив его работу и заставив SLA полноценно функционировать, системный администратор должен задуматься о мониторинге. Зачастую он сводится к двум разновидностям.

  • С выводом оповещений.
  • С демонстрацией статистики по ключевым и второстепенным показателям.

Администратору не нужно отдельно настраивать каждое предупреждение по каждому показателю в системе. Теме не менее, сбор статистических сведений для обнаружения аномальной работы – задача обязательная. Для этого используется несколько продуктов.

  • InfluxDB и Grafana. Сюда входят отдельные базы данных для сбора и обработки статистики из ряда источников. Связка характеризуется обширным функционалом возможностей для обработки данных.
  • Icinga. Используется, чтобы агенты могли получать события и уведомления по триггерам.

Отдельного упоминания заслуживает Netdata. Это продукт, одновременно объединяющий функции системы мониторинга и агента. В удобном интерфейсе присутствует дашборд, упрощающий аналитику статистических данных, триггеров и заранее настроенных графиков. Все, что необходимо сделать после инсталляции – это указать каналы передачи и варианты оповещений, на которые нужно обращать внимание при работе. Кроме того, в Netdata поддерживаются модули на Go, Python и так далее.

Работа над логами

Учитывая, что в процессе работы неизбежно увеличится число обслуживаемых хостов, системный администратор обязан продумать схему сбора логов. Для Линукса подходят решения с открытым исходным кодом. Ярким примером тому служат:

  • Graylog2;
  • ELK;
  • Loki;
  • Logstash.

Если число хостов, подлежащих администрированию, является относительно небольшим, достаточно использовать syslog-ng. Этого вполне хватит, чтобы хранить лог-файлы через порт UDP 514. Тут можно удобно развести сообщения в отдельные директории, исходя из сервиса, даты, источника и так далее.

Резервное копирование и управление пакетами

Чтобы централизованно управлять набором программного обеспечения, а также следить за появлением обновлений, отличным вариантом становится RedHat Spacewalk. Это решение очень часто используется в энтерпрайзе и в государственных структурах. Компания Oracle доработала и усовершенствовала кодовую базу RedHat Spacewalk, выпустив отдельный продукт под названием Oracle Databases. Этот вариант подойдет, если не хочется переплачивать за покупку дистрибутива.

Для резервного копирования разработано решение Veeam. Оно не только упрощает создание бэкапов, но еще и прекрасно предоставляет поддержку. В процессе работы также нужно выделить отдельный софт для обслуживания директории /etc. Тут на помощь приходит etckeeper.

В общей сложности, средства системного администрирования Linux нужно подбирать с учетом специфики конкретно взятой ситуации. Тем не менее, при выборе стоит ссылаться и на практические отзывы пользователей.