Мониторинг. · 10 min read · Oct 26, 2025

Как установить решение для мониторинга Sensu на Debian 11

Sensu — это система мониторинга инфраструктуры и приложений с открытым исходным кодом, предназначенная как для мониторинга контейнеров, так и для не контейнерного мониторинга и многоклаудной инфраструктуры. Sensu является масштабируемым, безопасным и интегрированным решением для мониторинга вашей технологии и серверной инфраструктуры. Его можно использовать для мониторинга серверов, состояния приложений и услуг, а также для отправки уведомлений об оповещениях на несколько целевых адресов с интеграцией сторонних разработчиков.

В этом руководстве вы узнаете, как установить программное обеспечение мониторинга Sensu на сервер Debian 11. Вы также узнаете, как настроить Sensu CLI для управления Sensu. Наконец, вы узнаете, как настроить мониторинг сервера с помощью Sensu через Sensu Agent.

Предварительные требования

Для развертывания Sensu вам понадобятся следующие требования:

  • Один сервер Debian 11 с 4 ГБ ОЗУ и 2 ЦП. Это требование сильно зависит от вашей инфраструктурной среды.
  • Непривилегированный пользователь с правами sudo/администратора.
  • Линукс-машина будет использоваться в качестве цели для мониторинга.

Добавление репозитория Sensu

Чтобы начать установку Sensu, вам нужно добавить репозиторий пакетов Sensu на все ваши системы, как на Sensu Backend, так и на целевые серверы.

Репозиторий Sensu доступен на packagecloud.io, который можно добавить в вашу систему вручную или через предоставленный скрипт bash от packagecloud.io.

Перед добавлением репозитория Sensu выполните команду apt ниже для установки основных зависимостей пакетов. Нажмите Y и Enter, когда будет предложено подтвердить установку.

sudo apt install debian-archive-keyring curl gnupg apt-transport-https

Теперь выполните следующую команду, чтобы добавить репозиторий Sensu. Этот скрипт bash автоматически добавит репозиторий Sensu и GPG-ключ на ваши серверы Debian.

curl -s https://packagecloud.io/install/repositories/sensu/stable/script.deb.sh | sudo bash

добавить репозиторий

Если вы хотите вручную добавить репозиторий Sensu, выполните следующие шаги:

Создайте каталог для хранения GPG-ключа репозитория Sensu.

mkdir -p /etc/apt/keyrings/  
curl -fsSL https://packagecloud.io/sensu/stable/gpgkey | gpg --dearmor > /etc/apt/keyrings/sensu_stable-archive-keyring.gpg

Добавьте репозиторий Sensu с помощью следующей команды. Этот репозиторий предназначен для Debian 11 Bullseye и последней стабильной версии Sensu.

cat <

добавить репозиторий sensu

Теперь вы можете обновить и обновить индекс пакетов Debian, используя следующую команду apt.

sudo apt update

обновить репозиторий

Установка Sensu Backend

Основное сердце решения мониторинга Sensu — это “Sensu Backend”, который предоставляет HTTP API, который может использоваться администратором через командную строку “sensuctl”. WebSocket API, который будет использоваться “Sensu Agent” для мониторинга, а также предоставляет веб-интерфейс для управления Sensu.

Кроме того, Sensu использует “ etcd “ для хранения данных, особенно при развертывании большого кластера Sensu.

Чтобы установить Sensu Backend, выполните команду apt ниже. Установка начнется автоматически.

sudo apt install sensu-go-backend

установить sensu backend

После завершения установки загрузите образец конфигурации Sensu backend в “/etc/sensu/backend.yml”. Затем отредактируйте файл “/etc/sensu/backend.yml” с помощью следующей команды.

sudo curl -L https://docs.sensu.io/sensu-go/latest/files/backend.yml -o /etc/sensu/backend.yml  
sudo nano /etc/sensu/backend.yml

Раскомментируйте следующую конфигурацию.

cache-dir: "/var/cache/sensu/sensu-backend"  
config-file: "/etc/sensu/backend.yml"  
  
log-level: "debug"  
state-dir: "/var/lib/sensu/sensu-backend"

Когда вы закончите, сохраните и закройте файл.

Далее выполните следующую команду systemctl, чтобы запустить службу Sensu Backend и включить ее. Служба Sensu Backend будет автоматически запущена при старте системы.

sudo systemctl start sensu-backend  
sudo systemctl enable sensu-backend

настроить sensu backend

Проверьте и подтвердите службу Sensu backend, используя команду ниже. Вы должны увидеть, что служба Sensu Backend в настоящее время работает и включена.

sudo systemctl status sensu-backend

проверить службу sensu backend

После запуска Sensu backend вы теперь инициализируете установку и конфигурацию Sensu Backend. Это можно сделать с помощью командной строки “sensu-backend init”, которая предоставляется пакетом Sensu Backend.

Кроме того, во время инициализации Sensu Backend вы настроите администратора и пароль для вашего решения мониторинга Sensu.

Выполните следующую команду, чтобы создать новые системные переменные окружения для администратора Sensu и пароля. В этом примере вы создадите нового администратора Sensu “ adminsensu “ с паролем “ SensuRocks “.

export SENSU_BACKEND_CLUSTER_ADMIN_USERNAME=adminsensu  
export SENSU_BACKEND_CLUSTER_ADMIN_PASSWORD=SensuRocks

Теперь начните инициализацию Sensu backend, используя команду ниже. Вы должны увидеть процесс инициализации, и Sensu будет хранить данные внутри хранилища данных “etcd”.

sensu-backend init

инициализировать sensu backend

Чтобы проверить и подтвердить вашу установку Sensu backend, вы выполните проверку состояния Sensu через команду curl к HTTP API Sensu, который работает на порту по умолчанию “8080”.

Выполните команду curl ниже, чтобы проверить состояние вашей установки Sensu backend. Вы должны увидеть сообщение на экране терминала, например, “ health: OK “.

curl http://127.0.0.1:8080/health

Вы также можете посетить веб-интерфейс Sensu через TCP-порт “ 3000 “. Откройте веб-браузер и посетите IP-адрес вашего сервера с добавлением порта 3000 (т.е.: http://192.168.5.100:3000). И вы должны увидеть страницу входа в Sensu.

Введите имя администратора “ adminsensu “ с паролем “ SensuRocks “. Затем нажмите “ SIGN-IN “, чтобы войти в веб-интерфейс Sensu.

страница входа в sensu

Теперь вы должны увидеть панель управления веб-администрированием Sensu.

веб-интерфейс sensu

Установка командной строки Sensuctl

В Sensu администратор может управлять решением мониторинга Sensu через панель управления веб-администрированием Sensu и через терминал командной строки, используя “ sensuctl “.

sensuctl “ — это инструмент командной строки для управления ресурсами Sensu. Он использует HTTP API для связи с Sensu Backend, что позволяет вам создавать, читать и удалять ресурсы, события и сущности.

sensuctl “ можно установить на нескольких операционных системах, таких как Linux, Windows и macOS. Функция “sensuctl” аналогична панели управления веб-интерфейсом Sensu, и вы можете установить ее на своем локальном рабочем месте или на защищенном сервере “bastion” вашей инфраструктуры.

Для систем на базе Debian/Ubuntu выполните следующую команду apt ниже, чтобы установить инструмент командной строки “ sensuctl “. Установка начнется автоматически.

sudo apt install sensu-go-cli

установить sensu cli

После завершения установки выполните следующую команду “ sensuctl “, чтобы начать конфигурирование и подключение к API сервера Sensu Backend.

sensuctl configure

Вам будет предложено следующее конфигурирование:

  • Для метода аутентификации выберите “имя пользователя/пароль”.
  • Введите URL API Sensu Backend вашего сервера. В этом примере мы настроим “sensuctl” на том же сервере, поэтому хост будет localhost или “127.0.0.1”. А порт по умолчанию для HTTP API Sensu — “8080” - http://127.0.0.1:8080.
  • Для конфигурации пространства имен выберите “default”.
  • Для формата вывода вы можете выбрать стиль “табличный” или использовать формат вывода “yaml”.
  • Наконец, введите имя администратора и пароль для вашего Sensu Backend.

Теперь вы завершили базовую конфигурацию “ sensuctl “ и подключились к серверу API Sensu Backend.

настроить sensuctl

Выполните следующую команду “ sensuctl “, чтобы проверить вашу конфигурацию. Вы должны увидеть подробные конфигурации API “ sensuctl “.

sensuctl config view

просмотр конфигурации sensuctl

Кроме того, “sensuctl” также предоставляет автозаполнение для вашей оболочки. Если вы используете bash, вам нужно установить пакет “bash-completion” и добавить некоторую конфигурацию в файл конфигурации “ ~/.bashrc “.

Выполните следующую команду apt, чтобы установить пакет “bash-completion”.

sudo apt install bash-completion

Теперь отредактируйте конфигурацию “~/.bashrc” с помощью следующей команды.

sudo nano ~/.bashrc

Добавьте следующую конфигурацию в файл.

if [ -f /usr/share/bash-completion/bash_completion ]; then  
. /usr/share/bash-completion/bash_completion  
elif [ -f /etc/bash_completion ]; then  
. /etc/bash_completion  
fi  
  
source <(sensuctl completion bash)

Когда вы закончите, сохраните и закройте файл.

Затем перезагрузите текущую сессию вашей оболочки, используя команду ниже.

source ~/.bashrc

Наконец, введите команду “ sensuctl “ и нажмите кнопку TAB, чтобы получить все доступные параметры команд. Вы должны получить все доступные параметры команды “ sensuctl “.

sensuctl TAB

автозаполнение sensuctl

Установка Sensu Agent

Чтобы мониторить хост или машину с помощью Sensu, вы должны установить пакет Sensu Agent на всех ваших хостах. Sensu Agent доступен для почти всех дистрибутивов Linux и Windows.

Чтобы установить Sensu Agent на системе Linux, убедитесь, что репозиторий Sensu добавлен.

Для систем на базе Debian/Ubuntu выполните следующую команду apt, чтобы установить пакет Sensu Agent. Теперь установка начнется.

sudo apt install sensu-go-agent

После завершения установки загрузите конфигурацию Sensu Agent в “ /etc/sensu/agent.yml “. Затем отредактируйте конфигурацию “ /etc/sensu/agent.yml “ с помощью команды ниже.

sudo curl -L https://docs.sensu.io/sensu-go/latest/files/agent.yml -o /etc/sensu/agent.yml  
sudo nano /etc/sensu/agent.yml

Раскомментируйте следующие конфигурации. Не забудьте изменить “name” здесь на имя хоста системы и “ backend-url “ на IP-адрес сервера Sensu Backend.

В этом примере мы добавим машину Debian с именем хоста “ linux-host1 “ и доступной в пространстве имен “ default “. Сервер Sensu Backend здесь — “ 192.168.5.100 “ с портом WebSocket API Sensu Backend по умолчанию “ 8081 “.

name: "linux-host1"  
namespace: "default"  
...  
backend-url:  
  - "ws://192.168.5.100:8081"  
cache-dir: "/var/cache/sensu/sensu-agent"  
config-file: "/etc/sensu/agent.yml"

Когда вы закончите, сохраните и закройте файл.

Далее выполните следующую команду, чтобы запустить службу Sensu Agent и включить ее для автоматического запуска при загрузке системы.

sudo systemctl start sensu-agent  
sudo systemctl enable sensu-agent

настроить sensu agent

Теперь выполните следующую команду, чтобы проверить и подтвердить службу Sensu Agent. Вы должны увидеть, что Sensu Agent работает и включен.

sudo systemctl status sensu-agent

проверить sensu agent

Теперь вернитесь в ваш веб-браузер и выберите пространство имен “ default “. И вы должны увидеть новый хост-объект “ linux-host1 “, который доступен.

Вы также можете проверить это из командной строки терминала, используя команду “ sensuctl “ ниже. Вы должны увидеть, что агент “ linux-host1 “ добавлен в решение мониторинга Sensu.

sensuctl entity list --format tabular

Мониторинг ресурсов сервера с помощью проверок

Sensu Agent работает, чтобы предоставить способ для узла агента или целевого сервера к Sensu Backend через WebSocket API. Чтобы мониторить ресурсы сервера, такие как использование ЦП, использование пропускной способности и использование диска, вам нужно будет настроить “Подписку” и создать несколько “Проверок” на ее основе. Затем вы можете добавить несколько “Подписок” к Sensu Agent или целевому серверу.

Чтобы мониторить ресурсы сервера с помощью Sensu, вам нужно будет выполнить следующие шаги:

  • Создать Подписку
  • Зарегистрировать ресурсы времени выполнения Sensu
  • Определить команду Проверок для проверки системных ресурсов

Перед тем как продолжить, выполните следующую команду “sensuctl”, чтобы создать новую подписку с именем “ system “ для сущности “ linux-host1 “.

sensuctl entity update linux-host1

Вам будет предложено ответить на следующие вопросы:

  • Для “Класса сущности” оставьте по умолчанию “ agent “ и нажмите ENTER.
  • Для “Подписок” введите имя подписки “ system “ и нажмите ENTER.

В Sensu “ Проверки “ в основном просто определяют команду, которая может использоваться для мониторинга ресурсов сервера. “ Проверки “ — это командная строка, которую вы можете определить на основе “Активов” и “Подписок” Sensu для всех ваших нужд мониторинга. Чтобы создать “ Проверки “, вы настроите динамические активы времени выполнения через команду “sensuctl”. Все активы Sensu можно найти на https://bonsai.sensu.io/.

Теперь выполните команду “ sensuctl “ ниже, чтобы создать и зарегистрировать активы Sensu для мониторинга использования ЦП. Вы должны увидеть сообщение о выводе, например, “добавлен актив: sensu/check-cpu-usage:0.2.2”. В этом примере мы также переименуем имя актива по умолчанию в “check-cpu-usage” с опцией “-r”.

sensuctl asset add sensu/check-cpu-usage:0.2.2 -r check-cpu-usage

добавить активы

Теперь выполните следующую команду, чтобы проверить список активов Sensu. Вы должны увидеть актив “ check-cpu-usage “, доступный в Sensu.

sensuctl asset list

список активов sensu

Далее выполните следующую команду, чтобы создать команду “ Проверки “ для мониторинга использования ЦП. В этом примере вы создадите новую команду проверки с именем “ check_cpu “, которая будет доступна на подписке “system” и основана на активе “ check-cpu-usage “. Вы также можете изменить параметры здесь в опции “–command”. И вы должны получить сообщение о выводе, например, “ Создано “.

sensuctl check create check_cpu \  
--command 'check-cpu-usage -w 75 -c 90' \  
--interval 60 \  
--subscriptions system \  
--runtime-assets check-cpu-usage

Выполните следующую команду “ sensuctl “, чтобы проверить и подтвердить “ check_cpu “. Вы должны увидеть детали “ Проверки “ для “ check_cpu “, которую вы только что создали.

sensuctl check info check_cpu --format yaml

информация о проверке sensuctl

Теперь вы можете проверить событие мониторинга “ check_cpu “ с помощью команды ниже. Вы должны увидеть, что мониторинг использования ЦП для “ linux-host1 “ настроен и завершен.

sensuctl event list --format tabular

список событий проверки sensuctl

Теперь перейдите к панели управления Sensu и выберите пространство имен “ default “. В меню “ Сущность “ вы должны увидеть, что агент “ linux-host1 “ добавлен в систему мониторинга Sensu.

проверка сущностей sensu

Теперь, если вы нажмете на детали агента “ linux-host1 “, вы увидите мониторинг “ Проверки “ для “ check_cpu “, которую вы только что создали.

мониторинг sensu

Теперь вы можете добавить и создать больше “Проверок” для вашей системы мониторинга.

Заключение

Теперь вы выполнили установку решения для мониторинга Sensu на сервере Debian 11. Вы также узнали основные функции использования команды Sensuctl для управления Sensu backend. Кроме того, вы успешно мониторили машину Linux через Sensu Agent и настроили “проверки” для мониторинга вашего целевого сервера.

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.