mamonsu
mamonsu — агент мониторинга для сбора метрик операционной системы и Postgres Pro.
Синтаксис
mamonsu
{report
| tune
}
mamonsu
agent действие
mamonsu
zabbix {template
| host
| hostgroup
} zabbix-action
Описание
mamonsu
— это активный агент мониторинга для Postgres Pro. Исполненный на базе zabbix
, mamonsu
реализует расширяемое кросс-платформенное решение для сбора и визуализации множества метрик Postgres Pro и операционной системы.
Агент mamonsu
включает следующие компоненты:
Руководящий процесс, контролирующий все выполняющиеся потоки.
Модули, определяющие какие метрики собирать и как представлять собранные данные.
Чтобы обеспечить стабильное подключение к наблюдаемой системе, модули mamonsu
используют пул соединений Postgres Pro. При необходимости вы можете добавить собственные дополнительные модули для наблюдения за метриками, важными в вашей системе.
Установка и подготовка
Для использования mamonsu
вам потребуется настроенный сервер и учётная запись zabbix
.
Предварительно собранный пакет mamonsu
распространяется вместе с Postgres Pro Standard, но устанавливается отдельным инсталлятором. Завершив установку Postgres Pro Standard и mamonsu
, выполните следующие действия, чтобы начать сбор метрик:
Если вы начинаете с нуля, настройте ваш сервер Postgres Pro и подготовьте пустую базу данных. За подробностями обратитесь к Разделу 19.2.
Выполните начальный запуск
mamonsu
. Вы должны указать IP-адрес сервера, за которым будете наблюдать, а также имя базы данных, имя и пароль пользователя Postgres Pro, используя которыеmamonsu
будет подключаться к серверу. Если пароль не требуется, параметр-W
можно опустить.mamonsu bootstrap --host
ip_сервера
--dbnameимя_базы_данных
--usernameимя_пользователя
-Wпароль
В результате
mamonsu
создаёт в указанной базе данных несколько таблиц с префиксомmamonsu
. Не удаляйте эти таблицы, так как они нужны для работыmamonsu
.mamonsu
позволяет управлять некоторой функциональностьюzabbix
из командной строки. Вы можете создавать и удалять узлы и группы узловzabbix
, а также создавать, удалять или импортировать шаблоныzabbix
. Если вы будете выполнять команды, связанные сzabbix
, настройте следующие переменные окружения для вашего сервераzabbix
:Задайте в переменных
ZABBIX_USER
иZABBIX_PASSWD
имя и пароль вашей учётной записиzabbix
, соответственно.Задайте в переменной
ZABBIX_URL
адресhttp://zabbix/
Если вы установите указанные переменные, вы можете опустить эти параметры в последующих командах:
--url=http://zabbix/ --user=
имя_пользователя_zabbix
--password=пароль_пользователя_zabbix
Если у вас ещё нет узла
zabbix
, создайте группу узловzabbix
и узел, на котором будут собираться метрики:mamonsu zabbix hostgroup create
ид_группы_узлов
mamonsu zabbix host createимя_узла
ид_группы_узлов
ид_шаблона
IP_адрес
Отредактируйте конфигурационный файл
agent.conf
, предоставляемый в составеmamonsu
. По умолчаниюagent.conf
размещается в каталоге установкиmamonsu
.Настройте параметры, связанные с
zabbix
. Вы должны указать в полеaddress
адрес сервераzabbix
и имя узлаzabbix
, который будет получать собираемые метрики. Узлы, доступные для вашей учётной записи, вы можете увидеть в веб-интерфейсеzabbix
на странице (Конфигурация) > (Узлы).[zabbix] ; включён по умолчанию enabled =
True
client =имя_узла_zabbix
address =ip_сервера_zabbix
Укажите базу данных и имя пользователя Postgres Pro для установления подключения. В следующем примере мы подключаемся к базе данных
postgres
с именем пользователяpostgres
. Если пароль не требуется, задайте в полеpassword
значениеNone
.mamonsu
начнёт собирать метрики, начиная с этой базы данных, и попытается подключиться к другим базам данных, существующим в системе. По умолчаниюmamonsu
считывает метрики каждые 10 мс. Вы можете изменить этот интервал, скорректировав параметрquery_timeout
. Если ваш сервер Postgres Pro работает с нестандартным портом, не забудьте указать его номер в параметреport
.[postgres] ; включён по умолчанию enabled = True user = postgres database = postgres ; пустой пароль password = None port = 5432 query_timeout = 10
По умолчанию
mamonsu
будет собирать метрики как Postgres Pro, так и системы. Если требуется, вы можете запретить сбор метрик того или иного типа, установив для параметраenabled
значениеFalse
в соответствующем разделе файлаagent.conf
.[system] ; включён по умолчанию enabled = True
Экспортируйте шаблон для системы
zabbix
:mamonsu export template template.xml
mamonsu
генерирует файлtemplate.xml
в текущем каталоге.Импортируйте
template.xml
вzabbix
:mamonsu zabbix template export template.xml --url=http://zabbix/ --user=
имя_пользователя_zabbix
--password=пароль_пользователя_zabbix
Чтобы загрузить шаблон через веб-интерфейс
zabbix
, воспользуйтесь своей учётной записьюzabbix
и перейдите на страницу Templates (Шаблоны) > Import (Импорт).Добавьте шаблон к целевому узлу. Для этого в веб-интерфейсе выберите ваш узел, перейдите на страницу Templates (Шаблоны), щёлкните Add (Добавить), выберите шаблон
PostgresPro-Linux
и затем щёлкните Update (Обновить).
Завершив настройку, запустите mamonsu
:
service mamonsu start
mamonsu
считывает параметры из файла конфигурации и начинает мониторинг вашей системы.
Параметры
mamonsu
позволяет вам управлять сбором метрик и некоторыми параметрами zabbix
непосредственно из командной строки. Программа mamonsu
может принимать следующие параметры.
report
Вывести подробную информацию об используемом оборудовании и параметрах Postgres Pro.
tune
Оптимизировать конфигурацию системы с учётом собранной информации об используемом оборудовании и параметрах Postgres Pro.
agent
Команда
mamonsu
agent
предоставляет доступ ко всем доступным метрикам из командной строки. Вы можете задать одно из следующих действий:version
Вывести версию
mamonsu
.metric-list
Вывести список доступных метрик.
metric-get
имя_метрики
Получить указанную метрику. Список доступных метрик можно получить, воспользовавшись командой
metric-list
.
zabbix template
Управляет шаблонами
zabbix
, выполняя одно из действий, описанных в Подразделе «Действия zabbix».zabbix host
Управляет узлами
zabbix
, выполняя одно из действий, описанных в Подразделе «Действия zabbix».zabbix hostgroup
Управляет группой узлов
zabbix
, выполняя одно из действий, описанных в Подразделе «Действия zabbix».
Действия zabbix
Используя mamonsu
, вы можете управлять некоторой функциональностью сервера zabbix
из командной строки. А именно, вы можете создавать или удалять узлы и группы узлов zabbix
, а также генерировать, импортировать и удалять шаблоны zabbix
с помощью описанных ниже команд. В них имя_объекта
должно соответствовать типу объекта zabbix
в команде: template (шаблон), host (узел) или hostgroup (группа узлов).
list
Вывести список доступных шаблонов, узлов или групп узлов.
show
имя_объекта
Вывести информацию об указанном шаблоне, узле или группе узлов.
id
имя_объекта
Вывести идентификатор указанного объекта.
delete
ид_объекта
Удалить указанный объект.
create
имя_группы_узлов
create
имя_узла
ид_группы_узлов
ид_шаблона
ip_адрес
Создать новый узел или группу узлов.
export
имя_шаблона
Сгенерировать шаблон
zabbix
.info
Вывести подробную информацию об указанном узле в зависимости от следующих параметров:
templates
ид_узла
Вывести список шаблонов, доступных для заданного узла.
hostgroups
ид_узла
Показать группы узлов, к которым относится указанный узел.
graphs
ид_узла
Показать, какие графики доступны для указанного узла.
Использование
Сбор показателей
Чтобы просмотреть список доступных метрик, выполните следующую команду:
mamonsu agent metric-list
Чтобы просмотреть определённую метрику, выполните:
mamonsu agent metric-get имя_метрики
где имя_метрики
— имя метрики, представляющей интерес. Вы можете просмотреть графики по собранным метрикам в веб-интерфейсе zabbix
, в меню (Графики).
Чтобы создать отчёт по используемому оборудованию и конфигурации Postgres Pro, выполните:
mamonsu report
Проанализировав аппаратную конфигурацию, mamonsu
может помочь вам произвести общую оптимизацию вашей системы и сервера Postgres Pro:
mamonsu tune
Добавление дополнительных модулей
Для добавления дополнительного модуля в mamonsu
выполните следующие действия:
Установите путь к каталогу модулей в файле конфигурации и поместите файлы модулей в указанный каталог.
[plugins] directory = /etc/mamonsu/plugins
Повторите экспорт шаблона
zabbix
:mamonsu -c agent.conf -e template.xml
Загрузите обновлённый
template.xml
на серверzabbix
.