Мониторинг виртуальных сред
Для мониторинга VMware®, XenServer®, MySQL®, Microsoft SQL Server®, Oracle®, DB2® и SAP R3® используется Discovery PFMS®.
RHEV
Red Hat® Enterprise Virtualization (RHEV) — одна из наиболее часто используемых технологий компаниями, чья ИТ-инфраструктура базируется на операционной системе Red Hat. Pandora FMS предлагает возможность мониторинга виртуальных архитектур на базе RHEV с помощью RHEV Monitoring Plugin.
Архитектура для мониторинга
- Data Centers.
- Host Clusters.
- Storage Domains.
- Networks.
- Hosts.
- Virtual Machines.
Pandora FMS использует официальный API, предоставляемый системой виртуализации RHEV.
Мониторинг с помощью RHEV Monitoring Plugin
Для мониторинга установленной операционной системы на виртуальных машинах рекомендуется использовать Агент Pandora FMS вместо API RHEV.
Мониторинг виртуальных сред RHEV основан на следующих компонентах:
- Плагин Агента (plugin), который выполняет задачи автообнаружения и сбора данных. Плагин Агента отвечает за отправку информации в Pandora FMS. - Скрипт (script) распознавания, который обновляет различные значения для обнаруженных сущностей, что необходимо для правильной работы расширений плагина. - RHEV Viewer и RHEV Manager: это расширения, которые позволяют выполнять операции выключения/включения виртуальных машин прямо из веб-консоли Pandora FMS.
Чтобы использовать скрипт распознавания, необходимо активировать Discovery server. Для того чтобы определенные переменные API отражали реальное значение связанной виртуальной машины, необходимо установить Агент RHEV; всю информацию об этом можно найти в документации RHEV.
Внутренняя работа плагина RHEV
RHEV Monitoring Plugin извлекает информацию через веб-API, предоставляемый средой виртуализации RHEV.
Если требуется только информация для мониторинга, единственное, что нужно настроить, — это плагин Агента, который будет выполнять эту задачу. Конфигурация плагина позволяет выбрать элементы для мониторинга и настроить их Модули. После создания XML-файлов плагин Агента отправляет их, используя либо Tentacle, либо копируя их в локальный каталог, в зависимости от выбранного метода передачи.
Если вы также собираетесь использовать расширения RHEV Viewer и RHEV Manager, вам потребуется использовать скрипт распознавания. Скрипт распознавания отвечает за обновление переменных для каждого из Агентов, обнаруженных в Pandora FMS, в соответствии со значениями, настроенными в RHEV. Эти переменные необходимы для корректного отображения сущностей в расширении RHEV Viewer и правильного управления виртуальными машинами с помощью расширения RHEV Manager.
Предварительные требования для установки плагина RHEV
Для плагина Агента требуется следующее программное обеспечение:
curl.perl-XML-Simple.- EndPoint PFMS и
tentacle_clientот Pandora FMS.
Red Hat
В системах на базе Red Hat® вы можете установить зависимости с помощью команды:
dnf install perl-XML-Simple curl
SLES
В системах на базе SUSE вы можете установить зависимости с помощью команды:
zypper install perl-XML-Simple curl
Debian/Ubuntu
В системах на базе Debian/Ubuntu вы можете установить зависимости с помощью команды:
apt-get install libxml-simple-perl curl
Загрузка сертификата RHEV
Перед использованием плагина необходимо загрузить сертификат, позволяющий устанавливать HTTPS-соединение с API RHEV. Для этого выполните следующую команду:
curl -o rhevm.cer http://[RHEVM-HOST]:8080/ca.crt
Где [rhevm-host] — имя сервера, на котором работает API RHEV.
После загрузки сертификата можно проверить корректность подключения к API с помощью следующей команды, используя символы переноса строки \:
curl -X GET \ -H "Accept: application/xml" \ -u [USER:PASS] \ --cacert [CERT] https://[RHEVM-HOST]:8443/api
Со следующими значениями:
USER: user @domain для подключения к API.PASS: Пароль пользователя, под которым будет выполняться подключение к API.CERT: Путь к сертификату, загруженному на предыдущем шаге.RHEVM-HOST: адрес хоста (host), на котором работает API.
Если выполнение команды пройдет успешно, она вернет вывод в формате XML с общей информацией об API RHEV.
Предварительные замечания по конфигурации RHEV
В среде виртуализации RHEV возможно наличие нескольких сущностей с одинаковым именем. Это представляет проблему, так как в Pandora FMS эти сущности будут преобразованы в Агентов, имена которых должны быть уникальными. Кроме того, это создаст проблемы при парсинге (parsear) результата, возвращаемого API в формате XML, с ошибкой вида:
Warning: <data_center> element has non-unique value in 'name' key attribute Default at ./plugin-rhev.pl line 199
Для решения этой проблемы необходимо следовать номенклатуре имен для сущностей среды виртуализации RHEV, при которой имена не повторяются.
Установка плагина RHEV для Агента
Для установки плагина Агента достаточно скопировать скрипт rhev-plugin.pl и конфигурационный файл rhev-plugin.conf в каталог машины, где установлен Агент Pandora FMS, который будет запускать плагин. Плагин можно запускать на Агенте, установленном на той же машине, что и сервер Pandora FMS, или на другой машине.
Чтобы запустить плагин, необходимо добавить в конфигурационный файл Агента (по умолчанию /etc/pandora/pandora_agent.conf) следующую строку:
module_plugin /root/rhev-plugin.pl /root/rhev-plugin.conf
При добавлении этой строки плагин Агента будет выполнять свои функции при каждом запуске.
Мониторинг виртуальной архитектуры RHEV
Чтобы просмотреть результат выполнения плагина Агента, используйте меню Operation → Monitoring → Views → Agent Detail. При нажатии на имя Агента можно будет увидеть Модули мониторинга, созданные плагином, а также другие связанные данные.
Плагин создает Агента в Pandora FMS для каждой из сущностей, обнаруженных при поиске архитектуры RHEV. Для каждого типа сущностей автоматически создается ряд определенных Модулей, отслеживающих важную информацию по каждой из них.
Если выбранный Агент соответствует Хосту (Host), а не виртуальной машине, модули мониторинга будут другими.
Плагин RHEV также отслеживает события, происходящие внутри виртуальной архитектуры. Плагин создаст Модуль для каждого отслеживаемого события внутри каждой затронутой сущности. Данными для Модулей, созданных на основе событий, являются данные самого события: время происшествия, описание события.
В дополнение к Агентам и Модулям, относящимся непосредственно к архитектуре RHEV, в Агенте, запускающем плагин, создается Модуль с именем по умолчанию RHEV Plugin.
Модули агента виртуальной архитектуры RHEV
Data Center
- Status: Состояние Центра Данных.
Storage Domain
- Available Space: Доступное пространство в Домене Хранения.
- Committed Space: Выделенное пространство в Домене Хранения.
- Used Space: Используемое пространство в Домене Хранения.
- Percent Free Space: Процент свободного пространства в Домене Хранения.
Network
- Status: Состояние виртуальной сети.
- STP Status: Состояние функции Spanning Tree Protocol.
Cluster
- Overcommit Percent: Процент перераспределения ресурсов (overcommit) кластера.
- Transparent HugePages: Состояние функции Transparent HugePages.
- High threshold: Верхний порог в политиках планирования.
- Low threshold: Нижний порог в политиках планирования.
- Threshold duration: Длительность порогов в политиках планирования.
Host
- Status: Состояние Хоста (Host).
- Buffers size: Размер буферов.
- Cache size: Размер кэша.
- Cached swap: Объем кэшированной памяти Swap (в байтах).
- Free memory: Объем свободной памяти (в байтах).
- Percent free memory: Процент свободной памяти.
- Swap cached percent: Процент кэшированной памяти Swap.
- Swap free: Объем свободной памяти Swap (в байтах).
- Swap free percent: Процент свободной памяти Swap.
- Total Memory: Общий объем памяти Хоста (в байтах).
- Total Swap: Общий объем памяти Swap (в байтах).
- Used memory: Общий объем используемой памяти (в байтах).
- Used Swap: Общий объем используемой памяти Swap (в байтах).
- Nic [x] TX и Nic [x] RX: Скорость передачи сетевого интерфейса [x] (в байтах/секунду). Генерируется для каждого обнаруженного сетевого интерфейса.
- Nic [x] errors TX и Nic [x] errors RX: Количество ошибок передачи сетевого интерфейса [x]. Генерируется для каждого обнаруженного сетевого интерфейса.
- User CPU: Процент CPU, используемого пользователем.
- System CPU: Процент CPU, используемого системой.
- CPU Idle: Процент бездействия CPU.
- CPU Load: Средняя нагрузка CPU за последние 5 минут.
- KSM CPU: Процент CPU, используемого KSM.
- Active VM: Количество активных виртуальных машин на Хосте.
- Migrating VM: Количество виртуальных машин в процессе миграции на Хосте.
- Total VM: Общее количество виртуальных машин на Хосте.
- Fence Status: Статус фенсинга (fencing) хоста.
Virtual Machine
- Status: Состояние виртуальной машины.
- Disk [x] read и Disk [x] write: Скорость чтения и записи диска x (байт/секунду). Генерируется для каждого обнаруженного диска (хранилища).
- Disk [x] size: Размер диска x (в байтах). Генерируется для каждого обнаруженного диска.
- Disk [x] status: Состояние диска x. Генерируется для каждого обнаруженного диска.
- Nic [x] TX и Nic [x] RX: Скорость передачи и приема для сетевого интерфейса [x] (в байтах/секунду). Генерируется для каждого обнаруженного сетевого интерфейса.
- Nic [x] errors TX и Nic [x] errors RX: Количество ошибок передачи и приема для сетевого интерфейса [x]. Генерируется для каждого обнаруженного сетевого интерфейса.
- Installed memory: Объем установленной памяти (в байтах).
- Percent free memory: Процент свободной памяти.
- Used memory: Объем используемой памяти (в байтах).
- Stateless: Состояние функции Stateless.
- HA Status: Состояние функции HA (высокой доступности).
- Total CPU: Общий процент CPU, используемого виртуальной машиной.
- Hypervisor CPU: Процент CPU гипервизора, используемого виртуальной машиной.
- Guest CPU: Процент CPU Хоста, который использует виртуальная машина.
События
- Event [x]: Описание события x, произошедшего в системе. Будет создано по одному для каждого события, обнаруженного в затронутых Агентах.
Управление и визуализация архитектуры RHEV
Задачи распознавания
Существует возможность создания пользовательских задач распознавания благодаря Discovery server.
Установка расширений RHEV View и RHEV Manager
Для установки расширений достаточно скопировать содержимое папки extensions, которая находится внутри архива с плагином, в соответствующую папку extensions Консоли Pandora FMS. Выполните следующую команду:
cp -R extensions/* <pandora_console_dir>/enterprise/extensions/
С этого момента расширения для мониторинга RHEV будут доступны.
Использование расширения RHEV View
Чтобы использовать расширение RHEV View, просто выберите пункт RHEV View в подменю Monitoring.
Расширение отобразит карту со всеми компонентами архитектуры RHEV, обнаруженными плагином.
Использование расширения RHEV Manager
Расширение RHEV Manager доступно в представлении операций агентов Pandora FMS, которые соответствуют виртуальным машинам в архитектуре виртуализации RHEV.
Это расширение использует команду curl, поэтому необходимо, чтобы она была установлена и доступна для веб-сервера, на котором работает веб-консоль Pandora FMS.
Чтобы получить доступ к расширению, нажмите кнопку с логотипом Red Hat, которую вы найдете рядом с другими вкладками агента.
Расширение позволяет управлять виртуальными машинами (включать, выключать и приостанавливать) без необходимости открывать консоль управления RHEV. В расширении отображается текущее состояние виртуальной машины с помощью цветового кода:
- Зеленый = Включена.
- Оранжевый = Приостановлена.
- Серый = Остановлена.
Список доступных состояний, в которые можно перевести виртуальную машину, отображается при нажатии кнопки Change Status.
Если вы выберете состояние Stop для остановки виртуальной машины, расширение подключится к API RHEV и отправит команду. Результатом станет изменение состояния виртуальной машины и обновление списка опций.
Переход между некоторыми состояниями не является автоматическим, например, из состояния Stop в Start. В этом случае расширение будет показывать состояние виртуальной машины по мере его изменения в архитектуре виртуализации.
Конфигурация плагина RHEV для Агента
Настройка плагина Агента осуществляется с помощью конфигурационного файла, имя которого по умолчанию — rhev-plugin.conf.
По умолчанию плагин Агента выбирает все сущности и создает все соответствующие Модули со значениями по умолчанию для имени и описания. Все эти аспекты, а также общие переменные плагина, можно настроить через конфигурационный файл.
Конфигурационный файл плагина RHEV
Конфигурационный файл имеет две четко разграниченные области: глобальные переменные и конфигурация мониторинга.
Раздел глобальных переменных начинается с токена Configuration и содержит информацию о настройке плагина. В этом разделе разрешены следующие параметры:
- module_name: Имя модуля Агента со статусом выполнения плагина.
- server: Имя хоста, на котором работает API RHEV.
- user: Пользователь в формате user @domain для подключения к API.
- pass: Пароль для подключения к API.
- cert: Путь к сертификату для подключения к API.
- temporal: Временный каталог.
- logfile: Файл журнала (лог).
- transfer_mode: Режим передачи. Может принимать значения:
localилиtentacle. - tentacle_ip: IP-адрес сервера Tentacle, на который будет отправляться информация. Обычно он находится на той же машине, что и сервер Pandora FMS. Эта опция используется только если
transfer_modeимеет значениеtentacle. - tentacle_port: Порт сервера Tentacle. Эта опция используется только если
transfer_modeимеет значениеtentacle. - tentacle_opts: Опции отправки данных для Tentacle. Эта опция используется только если
transfer_modeимеет значениеtentacle.
Раздел конфигурации мониторинга разделен на несколько подразделов. Первый подраздел имеет токен Reject и служит для перечисления сущностей среды виртуализации, которые будут исключены из мониторинга. Чтобы исключить сущность, необходимо указать ее имя в этом списке:
#Dismissed entities Reject mv1 mv_Windows10 mv_WebServer1 …
Можно исключить все сущности одного типа, например, все хосты, все виртуальные машины и т. д. Токены для каждой сущности: all_dc (Data Center), all_host (Hosts), all_network (Networks), all_storage (Storage Domain), all_cluster (Cluster), all_vm (Virtual Machines). Примеры:
#Dismissed entities Reject all_dc all_host all_network all_storage all_cluster all_vm
Второй раздел имеет токен Rename и служит для изменения имен сущностей, отслеживаемых через плагин. Эта функция очень полезна, если вы хотите объединить мониторинг EndPoint с данными, извлеченными из API, в одном и том же Агенте Pandora FMS. Настройка этого раздела выполняется путем указания сначала старого имени, а затем нового, разделенных пробелом:
#Rename entities Rename mv_WebServer1 WebServer1 mv_Windows10 Windows10 Test …
Следующие подразделы соответствуют конфигурации мониторинга для каждой сущности. У каждой сущности есть свой токен: DataCenter, StorageDomain, Network, Cluster, Host, VM. Для каждой из этих сущностей можно определить модули, которые будут отключены, или задать пользовательские значения для имени, описания и диапазонов максимумов и минимумов для состояний «Warning» и «Critical»:
#VM Modules VM status disabled errors_total_tx name = Errors TX Net [%s]; desc = Total network TX errors; limits = 60 70 71 100 memory_used name = Memory in use; desc = Memory used by the virtual machine; limits = 256 1024 1025 2048 …
Каждая строка конфигурации модулей мониторинга соответствует двум доступным опциям:
<module> disabled: Модуль НЕ будет создан.<module> name = <name>; desc = <description>; limits = <min_warning> <max_warning> <min_critical> <max_critical>: Модуль будет создан с указанным именем и описанием, а также будут определены пороги для максимумов и минимумов значений «Warning» и «Critical».
Очень важно учитывать структуру строк конфигурационного файла и, прежде всего, следить за тем, чтобы символ ; стоял вплотную к имени и описанию модуля. Эти две строки НЕ эквивалентны (обратите внимание на пробелы перед символом ; ):
errors_total_tx name = Net TX Errors [%s]; desc = Total Network TX Errors; limits = 60 70 71 100 #Correct errors_total_tx name = Net TX Errors [%s] ; desc = Total Network TX Errors ; limits = 60 70 71 100 #Incorrect
Модули обозначаются короткими именами — эквивалентными именами, которые проще вводить в командной строке. Таблица соответствия коротких и полных имен приведена в следующем разделе.
Практический пример настройки для виртуальных машин, раздел VM:
Для мониторинга виртуальных машин в разделе VM конфигурационного файла определен ряд включенных или отключенных модулей. В частности: модуль status был отключен, а для модулей errors_total_tx и memory_used были заданы пользовательские значения. Остальные модули, не указанные в списке, будут созданы со значениями по умолчанию. При такой конфигурации модуль memory_used примет следующие значения:
- Имя: Память в использовании.
- Описание: Память, используемая виртуальной машиной.
- Min Warning: 256.
- Max Warning: 1024.
- Min Critical: 1025.
- Max Critical: 2048.
Модули генерируются динамически, например, модули дисков или интерфейсов, из которых создается по одному для каждого обнаруженного элемента. Они имеют специальный синтаксис для имени Модуля:
errors_total_tx name = Net TX Errors [%s]; desc = Total Network TX Errors; limits = 60 70 71 100
В этих случаях, поскольку имя содержит динамическую часть, разрешается использовать макрос %s, который будет заменен плагином на переменную часть имени Модуля.
Например, модуль errors_total_tx по умолчанию называется:
Nic [nic1] errors TX
Он будет переименован в
Errors TX Net [nic1]
Где nic1 — динамическая часть имени модуля.
Все ошибки, связанные с конфигурационным файлом, записываются в лог, определенный в конфигурационном файле, и, кроме того, отправляются как асинхронный Модуль в Pandora FMS, который будет отображаться как Модуль внутри Агента, запускающего плагин.
В дополнение к разделам для каждого элемента архитектуры, конфигурационный файл содержит общий раздел для Событий. Этот раздел определяется токеном EventCodes, в нем перечисляются коды событий для мониторинга; например:
EventCodes 30 920 980 509 956
Если вы не определите этот раздел, мониторинг событий производиться не будет.
Распределение нагрузки мониторинга между несколькими EndPoint
С помощью конфигурационного файла плагина Агента можно распределить нагрузку по мониторингу инфраструктуры виртуализации RHEV.
Для этого сущности для мониторинга распределяются между различными Агентами. Предположим, у вас следующая архитектура:
DC1 | |- Cluster 1.1 |- c1.1mv1 |- c1.1mv2 |- c1.1mv3 |- Cluster 1.2 |- c1.2mv1 |- c1.2mv2 |- c1.2mv3 DC2 | |- Cluster 2.1 |- c2.1mv1 |- c2.1mv2 |- c2.1mv3 |- Cluster 2.2 |- c2.2mv1 |- c2.2mv2 |- c2.2mv3
Один из способов распределения нагрузки — назначение по одному Datacenter каждому из EndPoint; для этого мы будем использовать функцию исключения сущностей из мониторинга (токен Reject).
Первый EndPoint отслеживает Datacenter DC1 и исключает сущности DC2.
Reject DC2 Cluster 2.1 Cluster 2.2 c2.1mv1 c2.1mv2 c2.1mv3 c2.2mv1 c2.2mv2 c2.2mv3
Второй EndPoint отслеживает Datacenter DC2 и исключает сущности DC1.
Reject DC1 Cluster 1.1 Cluster 1.2 c1.1mv1 c1.1mv2 c1.1mv3 c1.2mv1 c1.2mv2 c1.2mv3
Нагрузку также можно распределить на основе кластеров. Например, для каждого кластера двух центров данных будет назначен один из первых четырех агентов.
EndPoint 1, мониторинг Cluster 1.1 и исключение остальных сущностей.
Reject DC1 Cluster 1.2 c1.2mv1 c1.2mv2 c1.2mv3 DC2 Cluster 2.1 Cluster 2.2 c2.1mv1 c2.1mv2 c2.1mv3 c2.2mv1 c2.2mv2 c2.2mv3
EndPoint 2, мониторинг Cluster 1.2 и исключение остальных сущностей.
Reject DC1 Cluster 1.1 c1.1mv1 c1.1mv2 c1.1mv3 DC2 Cluster 2.1 Cluster 2.2 c2.1mv1 c2.1mv2 c2.1mv3 c2.2mv1 c2.2mv2 c2.2mv3
EndPoint 3, мониторинг Cluster 2.1 и исключение остальных сущностей.
Reject DC1 Cluster 1.1 Cluster 1.2 c1.1mv1 c1.1mv2 c1.1mv3 c1.2mv1 c1.2mv2 c1.2mv3 DC2 Cluster 2.2 c2.2mv1 c2.2mv2 c2.2mv3
EndPoint 4, мониторинг Cluster 2.2 и исключение остальных сущностей.
Reject DC1 Cluster 1.1 Cluster 1.2 c1.1mv1 c1.1mv2 c1.1mv3 c1.2mv1 c1.2mv2 c1.2mv3 DC2 Cluster 2.1 c2.1mv1 c2.1mv2 c2.1mv3
Конфигурация исключенных сущностей полностью гибкая, и нагрузку можно разделить, назначая несколько сущностей каждому EndPoint.
Nutanix
Работа плагина Nutanix
Плагин Nutanix® — это программа на языке Perl, которая подключается к Nutanix PRISM® REST API, извлекая необходимые метрики для мониторинга следующих элементов:
- Кластеры (Clusters) Nutanix®.
- Устройства хранения.
- Контейнеры.
- Виртуальные машины.
- Хосты (Hosts).
- Состояние процессов репликации.
Требования плагина Nutanix
Чтобы получить информацию из REST API, необходимо:
- IP-адрес / FQDN портала.
- Пользователь (usuario) с правами на чтение в API.
- Пароль (contraseña) данного пользователя.
Что касается передачи результатов мониторинга в Pandora FMS, необходимо:
- Режим передачи информации (modo de transferencia de la información): локально или через Tentacle.
- В случае локальной передачи — путь к каталогу, в который должны доставляться XML-файлы с результатами, а также права на запись в этом каталоге.
- В случае передачи через Tentacle необходимо иметь возможность подключения к IP-адресу или FQDN сервера Pandora FMS, порту, используемому вашей установкой Tentacle, знать местоположение клиента Tentacle, а также любые заданные дополнительные параметры.
Установка плагина Nutanix
Загрузите необходимые файлы плагина из библиотеки модулей. Перенесите файлы на удаленный компьютер, с которого вы хотите осуществлять мониторинг инфраструктуры Nutanix®, и извлеките файлы плагина:
tar xvzf pandora_nutanix.tar.gz
Конфигурация плагина Nutanix
Объявляются следующие поля:
Nutanix API configuration
nx_fqdn: Адрес основного сервера Prism.nx_port: Порт, на котором опубликован REST API (по умолчанию 9440).nx_user: Пользователь с правами на чтение в REST API.nx_pass: Пароль данного пользователя.use_https: Использовать https (1) или нет (0).nx_rest_version: Версия API Rest (по умолчанию 'v1').
Nutanix agent configuration
agent_interval: Интервал Агентов, генерируемых плагином (по умолчанию 300).agent_group: Группа, к которой будут относиться созданные Агенты (если 'autocreate_group' закомментировано в настройках вашего PandoraServer), по умолчаниюNutanix.module_interval: Интервал Модулей созданных агентов (коэффициент умножения, по умолчанию 1).module_tags: Теги, связанные с новыми модулями созданных агентов.module_group: Группа, к которой будут относиться новые Модули.
Конфигурация передачи данных на сервер Pandora FMS
mode: Режим передачи данных, «local» или «tentacle».tentacle_ip: IP-адрес сервера Pandora FMS, применяется только в режиме Tentacle.tentacle_port: Порт, на котором слушает сервис Tentacle.tentacle_opts: Любые дополнительные параметры, настроенные в вашем сервисе Tentacle.tentacle_client: Полный путь к вашему клиенту Tentacle.temp: Временный рабочий каталог.local_folder: Путь доставки для режима передачи данных «local».
Фильтры
cluster_monitoring: Включить (1) или нет (0) мониторинг кластеров.storage_monitoring: Включить (1) или нет (0) мониторинг устройств хранения.container_monitoring: Включить (1) или нет (0) мониторинг контейнеров хранения.vm_monitoring: Включить (1) или нет (0) мониторинг виртуальных машин.host_monitoring: Включить (1) или нет (0) мониторинг серверов виртуальных машин (узлов Nutanix).pd_monitoring: Включить (1) или нет (0) мониторинг доменов защиты.
Персонализация
cluster_agent_header: Префикс для имени Агента устройств типа кластер (cluster).storage_agent_header: Префикс для имени Агента устройств типа устройство хранения.host_agent_header: Префикс для имени Агента устройств типа сервер виртуальных машин (узлы Nutanix).container_agent_header: Префикс для имени Агента устройств типа контейнеры хранения.vm_agent_header: Префикс для имени Агента устройств типа виртуальная машина.pd_agent_header: Префикс для имени Агента устройств типа домен защиты.
Правила генерации Модулей
vm_stat: Правило для добавления Модулей мониторинга виртуальных машин, по умолчаниюhypervisor_cpu_usage_ppm|hypervisor_memory_usage_ppm|.*avg.*, это указывает на дополнительные Модули, которые будут созданы, когда имя метрики совпадает с регулярными выражениями, указанными в этом поле. Добавьте значение.*для мониторинга всех доступных метрик.host_stat: Правило для добавления Модулей мониторинга серверов виртуальных машин (узлов Nutanix), по умолчаниюhypervisor_cpu_usage_ppm|hypervisor_memory_usage_ppm|.*avg.*, это указывает на дополнительные Модули, которые будут созданы, когда имя метрики совпадает с регулярными выражениями, указанными в этом поле. Добавьте значение.*для мониторинга всех доступных метрик.pd_stat: Правило для добавления Модулей мониторинга доменов защиты, по умолчаниюreplication_transmitted_bandwidth_kBps|replication_total_transmitted_bytes, это указывает на дополнительные Модули, которые будут созданы, когда имя метрики совпадает с регулярными выражениями, указанными в этом поле. Добавьте значение.*для мониторинга всех доступных метрик.
Переименование сущностей
RENAME aaa TO bbb: Правило для переименования сущностей, можно определить столько директив, сколько элементов необходимо переименовать.
Исключение сущностей
REJECT aaa: Правило для исключения сущностей из мониторинга, можно определить столько директив, сколько элементов необходимо исключить.
Выполнение плагина Nutanix
Рекомендуется запускать плагин удаленно с компьютера, имеющего доступ как к серверу Pandora FMS, так и к отслеживаемой инфраструктуре Nutanix®.
Запуск вручную:
./pandora_nutanix-linux-x64 pandora_nutanix.conf
Вы можете автоматизировать выполнение плагина в системном планировщике cron, добавив следующую строку в /etc/crontab.
/5 * * * * root /path/to/plugin/pandora_nutanix-linux-x64 /path/to/plugin/pandora_nutanix.conf
XenServer
См. информацию об использовании DISCO Package для XenServer в Discovery PFMS.
OpenNebula
Работа плагина OpenNebula
Плагин Pandora FMS для мониторинга сред OpenNebula написан на языке Perl. Он запускается локально на сервере OpenNebula и извлекает всю необходимую информацию, используя собственные команды управления OpenNebula. Позволяет отслеживать следующие типы элементов:
- Кластеры (Clusters).
- Хосты (Hosts).
- Виртуальные машины.
- Ресурсы хранения.
Требования плагина OpenNebula
Крайне важно, чтобы система, в которой запускается плагин, соответствовала следующим требованиям:
- Наличие Perl в системе.
- Пользователь с правами на выполнение следующих команд:
onehost.onecluster.onedatastore.
Работа плагина была успешно протестирована в системах OpenNebula 5.X.X.
Установка плагина OpenNebula
Загрузите свою копию плагина Pandora FMS для OpenNebula из библиотеки модулей. Необходимо извлечь содержимое архива в энергонезависимый каталог, из которого вы сможете его запустить, используя либо агент Pandora FMS, либо системный cron.
unzip pandora_OpenNebula.zip
Конфигурация плагина OpenNebula
Конфигурация передачи данных на сервер Pandora FMS
mode: Режим передачи данных, «local» или «tentacle».tentacle_ip: IP-адрес сервера Pandora FMS, применяется только в режиме tentacle.tentacle_port: Порт, на котором слушает сервис Tentacle.tentacle_opts: Любые дополнительные параметры, настроенные в вашем сервисе Tentacle.tentacle_client: Полный путь к вашему клиенту Tentacle.temp: Временный рабочий каталог.local_folder: Путь доставки для режима передачи данных «local».
Настройка Агента
agent_interval: Интервал агента, по умолчанию 300.agent_group: Группа Агента, по умолчанию OpenNebula.
Персонализация Модулей OpenNebula
MODULE_GROUP: Группа модулей, по умолчанию OpenNebula.MODULE_INTERVAL: Интервал модулей (множитель), по умолчанию 1.MODULE_TAGS: Теги для Модулей.
Персонализация имен
cluster_agent_header: Префикс для имени Агента устройств типа кластер.host_agent_header: Префикс для имени Агента устройств типа сервер виртуальных машин.storage_agent_header: Префикс для имени Агента устройств типа устройство хранения.vm_agent_header: Префикс для имени Агента устройств типа виртуальная машина.
Фильтры
cluster_monitoring: Включить (1) или нет (0) мониторинг кластеров.host_monitoring: Включить (1) или нет (0) мониторинг серверов виртуальных машин.storage_monitoring: Включить (1) или нет (0) мониторинг устройств хранения.vm_monitoring: Включить (1) или нет (0) мониторинг виртуальных машин.
Переименование сущностей
RENAME aaa TO bbb: Правило для переименования сущностей, можно определить столько директив, сколько элементов необходимо переименовать.
Исключение сущностей
REJECT aaa: Правило для исключения сущностей из мониторинга, можно определить столько директив, сколько элементов необходимо исключить.
Выполнение плагина OpenNebula
Чтобы запланировать выполнение через системный cron, можно добавить следующую строку в /etc/crontab :
/5 * * * * root "<path>/pandora_opennebula" "<path>/pandora_opennebula.conf"> /dev/null 2>&1
При запуске плагина вручную вывод должен быть похож на следующий:
[root@valhalla ~]# ./pandora_opennebula pandora_opennebula.conf [root@valhalla ~]# echo $? 0
IBM HMC
Этот плагин позволяет отслеживать оборудование виртуализации IBM AIX через консоль управления оборудованием HMC. Этот плагин будет собирать информацию обо всех логических разделах, созданных в среде AIX, управляемой системой HMC, создавая Агента для каждого управляемого сервера, каждого логического раздела и каждого сервера виртуального ввода-вывода (IO).
Для сбора информации через SSH плагин может использовать три режима работы:
- На основе expect с использованием скрипта ssh_launcher.sh.
- На основе Net::SSH::Perl.
- На основе Net::SSH::Expect.
Для дополнения полученной информации также будут выполняться запросы к REST API, по умолчанию по адресу:
https://fqdn:12443/rest/api/{root_element}
Требования плагина IBM HMC
Параметры, которые должны быть предоставлены подразделением, запрашивающим услуги мониторинга:
- Имя пользователя для аутентификации в системе HMC (только для чтения).
- Пользователь должен иметь разрешение на подключение к REST API и на вход в оболочку (shell) HMC для выполнения (как минимум) следующих команд:
- lssyscfg.
- lshwres.
- Пароль данного пользователя.
- Местоположение (FQDN/IP) HMC (например,
myhmc.mydomain). - Базовый URL-адрес API rest HMC, похожий на:
https://myhmc.mydomain:12443
Модули, генерируемые плагином
Параметры, отслеживаемые плагином (сгруппированы по типу элементов):
Current logical partitions.Max logical partitions.Max memory available.Max memory installed.Proc pool DefaultPool current proc units.Proc pool DefaultPool max proc units.Proc pool DevelopmentPool current proc units.Proc pool DevelopmentPool max proc units.Proc pool ProductionPool current proc units.Proc pool ProductionPool max proc units.Proc pool TestPool current proc units.Proc pool TestPool max proc units.Proc pool VIOPool current proc units.Proc pool VIOPool max proc units.Processor pools configured.Processor units available.Processor units installed.State.UUID.Virtual proc units max.
LPAR:
Auto start: Конфигурация автозапуска логических разделов.LPAR type: Тип логического раздела.LPAR UUID: Используется для запросов к HMC API.Max memory: Максимальный объем памяти.Max memory: Доступная память.Processor units available: Доступные единицы обработки.Processor units current: Установленные единицы обработки.RMC IP address: IP-адрес RMC.RMC state: Состояние RMC в LPAR.State: Состояние логического раздела.Virtual proc units: Виртуальные единицы обработки, назначенные этому LPAR.
Virtual IO:
Auto start: Конфигурация автозапуска логических разделов.LPAR type: Тип логического раздела.LPAR UUID: Используется для запросов к HMC API.Max memory: Максимальный объем памяти.Max memory current: Доступная память.Processor units available.: Доступные единицы обработки.Processor units current: Установленные единицы обработки.RMC IP address: IP-адрес RMC.RMC state RMC: Состояние RMC в LPAR.State: Состояние логического раздела.Virtual proc units: Виртуальные единицы обработки, назначенные этому LPAR.
Конфигурация плагина IBM HMC
Конфигурация связи IBM HMC с сервером Pandora FMS
mode: Режим передачи данных, «local» или «tentacle».tentacle_ip: IP-адрес сервера Pandora FMS, применяется только в режиме tentacle.tentacle_port: Порт, на котором слушает сервис tentacle.tentacle_opts: Любые дополнительные параметры, настроенные в сервисе tentacle.tentacle_client: Полный путь к вашему клиенту tentacle.temp: Временный рабочий каталог.local_folder: Путь доставки для режима передачи данных «local».
Настройка доступа к HMC
hmc_host: IP или FQDN консоли HMC.hmc_user: Пользователь с правами на чтение.hmc_pass: Пароль.as_agent_plugin: Вывод плагина будет возвращаться в формате XML для запусков по расписанию Агентом Pandora FMS (as_agent_plugin = 1). Или стандартный вывод (as_agent_plugin = 0) для запусков по расписанию через системный cron или в качестве плагина сервера.
Настройка агента IBM HMC
agent_name: Опционально, указать имя для родительского Агента, по умолчанию `hostname`.agent_interval: Интервал Агента, по умолчанию 300 секунд.agent_group: Группа Агента, по умолчанию IBM.
Персонализация модулей IBM HMC
module_group: Группа Модулей, по умолчанию IBM.module_interval: Интервал Модулей (множитель), по умолчанию 1.module_tags: Теги для модулей.
Переименование сущностей
Для переименования сущностей используется блочное переименование:
rename MyLPAR_NAME TO my new name MyLPAR_NAME2 TO my second new name rename_end
Выполнение плагина IBM HMC
Плагин Pandora FMS для мониторинга систем IBM AIX через HMC развертывается следующим образом:
При настройке параметра as_agent_plugin в значение 1 (запуск как плагин агента):
module_plugin /usr/bin/perl pandora_hmc.pl pandora_hmc.conf
При настройке параметра as_agent_plugin в значение 0 (запуск как плагин сервера):
# /etc/crontab */5 * * * * root /usr/bin/perl /root/hmc/pandora_hmc.pl /root/vmware/pandora_hmc.conf
HPVM
Работа плагина HPVM
Этот плагин позволяет отслеживать оборудование виртуализации HPVM. Он запускается как плагин Агента, генерируя параллельно еще по одному агенту для каждого виртуализированного оборудования, размещенного в отслеживаемой системе.
Для сбора информации используются локальные команды.
Требования плагина HPVM
Проверьте каждый из следующих шагов:
- Развернуть Агент Pandora FMS на оборудовании, которое необходимо отслеживать.
- Наличие пользователя с правами на выполнение плагина.
- Этот пользователь должен иметь права на выполнение команды
hpvmstatusдля интерпретации вывода:
hpvmstatus.hpvmstatus -X.hpvmstatus -r -X.
Установка плагина HPVM
Загрузите копию плагина Pandora FMS для HPVM HP Virtualization Manager monitoring из библиотеки модулей. Вы можете запланировать выполнение с помощью коллекций и развернутого Агента Pandora FMS или извлечь содержимое архива в энергонезависимый каталог, откуда вы сможете запускать его через cron вашей системы.
unzip pandora_HPVM.zip
Конфигурация плагина HPVM
Конфигурация связи HPVM с сервером Pandora FMS
mode: Режим передачи данных, «local» или «tentacle».tentacle_ip: IP-адрес сервера Pandora FMS, применяется только в режиме tentacle.tentacle_port: Порт, на котором слушает сервис Tentacle.tentacle_opts: Любые дополнительные параметры, настроенные в вашем сервисе Tentacle.tentacle_client: Полный путь к вашему клиенту Tentacle.temp: Временный рабочий каталог.local_folder: Путь доставки для режима передачи данных «local».
Настройка Агента HPVM
agent_name: Опционально, указать имя для родительского Агента, по умолчаниюhostname.agent_interval: Интервал Агента, по умолчанию 300.agent_group: Группа, к которой будут относиться агенты, по умолчанию HPVM.
Персонализация модулей HPVM
module_group: Группа Модулей.module_interval: Интервал Модулей (множитель), по умолчанию 1.module_tags: Теги для Модулей.
Выполнение плагина HPVM
При запуске плагина из Агента Pandora FMS в конфигурационном файле Агента появится запись:
module_plugin /usr/bin/perl pandora_hpvm.pl pandora_hpvm.conf
Для ручной проверки настройте плагин в соответствии с описанными шагами, и его можно будет запустить так:
perl pandora_hpvm.pl pandora_hpvm.conf


