Всем привет, дорогие администраторы и DevOps! Сегодня мы с вами погрузимся в забавный мир мониторинга с помощью того самого Prometheus. Если вы когда-нибудь задавались вопросом: «А как же мне следить за моими серверами Linux, чтобы они не упали в обморок от нагрузок?», то вы попали по адресу!

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

Шаг 1: Установка Prometheus

Начнем с установки. Взгляните на этот пример для Ubuntu (в большинстве случаев используемая distro среди администраторов, которые любят устраивать горизонтальные шутки):

sudo apt update
sudo apt install prometheus

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

Шаг 2: Настройка конфигурации

Теперь перейдем к самой интересной части — настройке. Конфигурационный файл находите по пути /etc/prometheus/prometheus.yml. Откройте его любимым текстовым редактором. Если вы всё еще не выбрали редактор, то, может, пора попробовать vim? 😀

Добавим в конфигурацию наши серверы Linux, которые хотим мониторить. К примеру:

scrape_configs:
  - job_name: 'my_linux_servers'
    static_configs:
      - targets: ['192.168.1.1:9100', '192.168.1.2:9100']

Здесь мы указали два сервера с IP-адресами и портом, на котором будет работать Node Exporter. Не забудьте установить Node Exporter на ваши сервера, иначе Prometheus будет как человек в темноте — бродить без цели!

Шаг 3: Установка Node Exporter

На ваших серверах Linux один простой шаг, чтобы Node Exporter комфортно себя чувствовал:

wget https://github.com/prometheus/node_exporter/releases/latest/download/node_exporter-.linux-amd64.tar.gz
tar xvf node_exporter-.linux-amd64.tar.gz
cd node_exporter-.linux-amd64
./node_exporter &

Не забудьте заменить <version> на актуальную! Все, и ваш сервер теперь будет радостно делиться своей метрикой загрузки CPU и прочим с вашим Prometheus.

Шаг 4: Убедитесь, что всё работает

Запустите Prometheus и перейдите в ваш браузер на http://localhost:9090. Заходите во вкладку «Targets» и наслаждайтесь, наблюдая, как ваши серверы общаются с Prometheus. Если всё настроено правильно, должны появиться ваши сервера со статусом UP. Если нет, смешите команду systemctl restart prometheus — это всегда помогает!

Шаг 5: Уведомления

Чтобы вы не пропустили, когда ваши серверы «падают», подключим Alertmanager. Uстановите и настройте его так же, как вы настраивали Prometheus. Конфигурация там будет напоминать настройки вашего Wi-Fi : всегда нужно проверять дважды.

route:
  receiver: 'email_notifications'

receivers:
- name: 'email_notifications'
  email_configs:
  - to: 'your-email@example.com'

Теперь, если сервер упадет, вы сможете получить уведомление и, возможно, вспомните о задолбавшем админском юморе: «Почему администратор всегда работает в вечернее время? Потому что у него больше шансов быть единорогом в кулаке!».

Вот так, друзья, вы настроили мониторинг с использованием Prometheus. Надеемся, что ваши сервера будут в порядке, а вы будете получать только радугу данных вместо капли пота на лбу. Удачи и веселого администрирования!