Настройка мониторинга Prometheus для серверов Linux
Всем привет, дорогие администраторы и 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. Надеемся, что ваши сервера будут в порядке, а вы будете получать только радугу данных вместо капли пота на лбу. Удачи и веселого администрирования!