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 =
Trueclient =имя_узла_zabbixaddress =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Команда
mamonsuagentпредоставляет доступ ко всем доступным метрикам из командной строки. Вы можете задать одно из следующих действий: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.
