среда, 17 ноября 2021 г.

Установка Open Source Telegraf для vRealize Operations

Начиная с версии 8.0, в vRealize Operations добавили функцию мониторинга (Application and OS Monitoring) через UCP Telegraf агент. Данный агент устанавливается в гостевую ОС, собирает метрики с ОС и приложений и передает их в vROps. Хотя UCP Telegraf агент просто устанавливается и настраивается прямо из консоли vROps, он поддерживает довольно скромный набор метрик и приложений.

Поэтому в vROps 8.6, наряду с UCP Telegraf агентом, добавили поддержку Open Source Telegraf агента. Open Source Telegraf поддерживает большое число различных plugin'ов: https://docs.influxdata.com/telegraf/v1.20/plugins/

Это расширяет перечень сценариев использования vROps, позволяя мониторить ОС Windows или Linux внутри ВМ, работающих в vSphere или других гипервизорах, на физических серверах и даже в контейнерах.

В этой статье я рассмотрю пример установки и настройки OS Telegraf агента для гостевой ОС Windows.

Для начала вам потребуется работающая инсталляция vRealize Operations версии 8.6 или новее. Проверьте, что в vROps добавлены лицензии vROps Enterprise или Application Monitoring Add-On, необходимые для мониторинга приложений.

Для передачи метрик Telegraf агента в vROps используется специальный виртуальный апплайнс Cloud Proxy. Для установки Cloud Proxy выполните следующие действия:

1. Загрузите актуальную версию OVA шаблона Cloud Proxy с портала VMware Customer Connect.

2. В консоли vROps на вкладке Data Sources -> Cloud Proxies скопируйте уникальный ключ установки (one-time key).


3. В консоли vSphere разверните ВМ Cloud Proxy из OVA шаблона. При кастомизации укажите One Time Key, который вы получили на шаге 2.

4. Запустите ВМ Cloud Proxy, подождите несколько минут и проверьте, что Cloud Proxy корректно зарегистрировался в vROps. В консоли vROps на вкладке Data Sources -> Cloud Proxies статус ВМ должен отображаться как Online.

5. По умолчанию Cloud Proxy не принимает метрики от Open Source Telegraf агента. Чтобы это исправить, подключитесь к локальной консоли Cloud Proxy через vSphere Web Console, войдите в систему под учетной записью root (при первом входе система попросит задать новый пароль) и отредактируйте файл /etc/httpd-south/httpd.conf. Найдите и раскомментируйте две секции в файле (начинаются с 54 строчки и с 238 строчки):

JkMount /opensource/* vcopsarc

и

<Location /opensource/default/metric>

  SSLVerifyClient None

  SSLOptions +StdEnvVars

  SSLRenegBufferSize 1048600

 </Location>

6. Перезапустите сервис Cloud Proxy:

systemctl restart httpd-south 

Дополнительная информация по настройке Cloud Proxy для работы с OS Telegraf приведена в документе: https://docs.vmware.com/en/vRealize-Operations/8.6/com.vmware.vcom.config.doc/GUID-E5E8A68F-53A0-447A-B3B7-99B6C844E89C.html

Для установки Telegraf агента выполните следующие шаги:

1. Загрузите архив Telegraf агента с сайта: https://portal.influxdata.com/downloads/

2. Создайте в гостевой ОС, которую планируете мониторить, следующие папки:

C:\telegraf

C:\telegraf\telegraf.d

3. Распакуйте архив и поместите исполняемый файл telegraf.exe в папку C:\telegraf\, .conf файл вам не потребуется.

Настройка Telegraf агента может выполнять в двух режимах: Managed и Unmanaged. Managed режим позволяет связать объект операционной системы с объектом виртуальной машиной, в которой ОС работает. Для Managed агента требуется, чтобы ВМ запускалась на vSphere и мониторилась той же инсталляцией vROps, с которой будет настраиваться интеграция Telegraf агента. Режим Unmanaged используется, если вы запускаете ВМ на стороннем гипервизоре, на физическом сервере или не настраивали интеграцию vROps с vSphere. В качестве примера мы рассмотрим вариант настройке Telegraf агент в Managed режиме.

4. Чтобы немного упростить работу, воспользуемся скриптом для автоматического создания конфигурационного файла Telegraf агента open_source_telegraf_monitor.ps1. Загрузить скрипт можно по адресу: https://<CloudProxy-IP>/downloads/salt/open_source_telegraf_monitor.ps1 , где <CloudProxy-IP> - IP адрес ВМ с Cloud Proxy. Если в процессе загрузки скрипта возникает ошибка, воспользуйтесь рекомендациями, приведенными в статье: https://docs.vmware.com/en/vRealize-Operations/8.6/com.vmware.vcom.config.doc/GUID-31189349-5A92-4105-92C9-84E3BFCC1790.html

Скрипт запускается с несколькими параметрами:

open_source_telegraf_monitor.ps1 -v <vROps_IP> -t <AUTHENTIFICATION_TOKEN> -d <TELEGRAF_CONFIG_DIR> -c <CP_IP> -e <telegraf_exe_path>

Список параметров:

  • vROps_IP: IP адрес сервера vROps.
  • AUTHENTIFICATION_TOKEN: Токен администратора для аутентификации на сервере vROps. Это нужно для того, чтобы скрипт мог найти ВМ по имени и IP адресу и указать правильный vcId и vmId в создаваемом .conf файле. Инструкция по получению токена приведена ниже. 
  • TELEGRAF_CONFIG_DIR: Telegraf configuration directory. В данном примере используется C:\telegraf\telegraf.d.
  • CP_IP: IP адрес ВМ с Cloud Proxy.
  • telegraf_exe_path - Путь к исполняемому файлу telegraf.exe. В данном примере используется C:\telegraf\telegraf.exe

Для получения токена аутентификации вы можете сгенерировать REST API вызов с помощью POSTMAN, либо использовать скрипт на PowerShell (предварительно заменив <VROPS_LOGIN>, <VROPS_PASSWORD> и <VROPS_IP на имя, пароль локального админа и IP адрес vROps):

Дополнительная информация об Authentication Token в vROps: https://docs.vmware.com/en/vRealize-Operations/8.6/com.vmware.vcom.api.doc/GUID-C3F0A911-A587-40F7-9998-13D4880A0C2B.html 

Получив токен запустите скрипт open_source_telegraf_monitor.ps1 с нужными параметрами.

В результате будет создан файл конфигурации C:\telegraf\telegraf.d\cloudproxy-http.conf. Внутри файла будут указаны параметры vmId и vcid, которые используются для связи объекта ОС с объектом ВМ в vROps.

5. Отредактируйте C:\telegraf\telegraf.d\cloudproxy-http.conf файл, добавив туда описание собираемых метрик. В качестве примера я выложу .conf файл, в котором собираются Performance Counter'ы для процессора, логических дисков, памяти и процесса telegraf.

Вы можете добавить в .conf файл дополнительные input plugin'ы для мониторинга других метрик ОС или приложений. Примеры таких конфигураций приведены в документе: https://docs.vmware.com/en/vRealize-Operations/8.6/com.vmware.vcom.config.doc/GUID-FA70A401-C338-4CDF-AD14-F31185D6138B.html#GUID-FA70A401-C338-4CDF-AD14-F31185D6138B

6. Выполните тестовый запуск Telegraf агента:

telegraf.exe --config c:\telegraf\telegraf.d\cloudproxy-http.conf --test

Если .conf файл содержит корректные настройки, в консоли отобразится перечень собираемых метрик.

7. Запустить агент для постоянной работы можно двумя способами.

Первый вариант - добавить команду telegraf.exe --config c:\Telegraf\telegraf.d\cloudproxy-http.conf в планировщик задач Windows и запускать ее при старте ОС.

Второй вариант - зарегистрировать Telegraf как сервис Windows. Для этого выполните команды:

telegraf.exe --service install --config "C:\telegraf\telegraf.d\cloudproxy-http.conf"

telegraf.exe --service start

8. После запуска Telegraf агента подождите, пока пройдет несколько циклов сбора метрик (>10 минут) и проверьте, что в интерфейсе vROps появился соответствующий объект Windows OS, связанный с объектом ВМ, а на вкладке Metrics можно видеть метрики, которые собирает Telegraf агент.


На этом установка и настройка Open Source Telegraf агента закончена.

Комментариев нет:

Отправить комментарий