Установка агентов Proto Observability Platform
На этой странице:
- Описание
- Linux
- Windows
- Docker
- Kubernetes
- Работа агента через proxy
- Файлы конфигурации агента
- Проверка работы агента
- Логи агента
Описание
ProtoOBP агент автоматически собирает метрики, трейсы и логи и отправляет полученные данные на ProtoOBP Backend сервер.
Сбор трейсов приложения осуществляется с помощью трейсеров, автоматически инструментируя код следующих языков программирования:
Сбор метрик осуществляется автоматически для всех поддерживамых технологий
Схема взаимодействия компонентов ProtoOBP

Поддерживаемые технологии
Linux
Linux агент – установка
Агент работает на всех основных DEB/RPM дистрибутивах ОС Linux. Подробнее
- 
Скачайте и установите пакет с агентом для вашей ОС curl --header "PRIVATE-TOKEN:<your_token>" "https://git.proto.group/api/v4/projects/125/packages/generic/protoobp-agent/7.40.2/protoobp-agent_7.40.2_amd64.deb" --output protoobp-agent_7.40.2_amd64.deb apt install ./protoobp-agent_7.40.2_amd64.debЗначение <your_token>берется из лицензионного сертификата, полученного ранее от вендора, из раздела “Учетные данные -> Пароль”curl --header "PRIVATE-TOKEN:<your_token>" "https://git.proto.group/api/v4/projects/125/packages/generic/protoobp-agent/7.40.2/protoobp-agent_7.40.2_amd64.rpm" --output protoobp-agent_7.40.2_amd64.rpm rpm -ivh protoobp-agent_7.40.2_amd64.rpmЗначение <your_token>берется из лицензионного сертификата, полученного ранее от вендора, из раздела “Учетные данные -> Пароль”.В случае появления ошибки на Альт или Роса Линукс: ошибка: Неудовлетворенные зависимости: glibc-common нужен для protoobp-agent-1:7.40.2-1.x86_64установку агента необходимо выполнить следующей командой: rpm -ivh --nodeps protoobp-agent_7.40.2_amd64.rpm
- 
Убедитесь что агент корректно установлен, выполнив: protoobp-agent versionРезультат выполнения команды: Agent 7.40.2 - Meta: git.8.d01c4fd - Commit: d01c4fd - Serialization version: v5.0.32 - Go version: go1.18.8
Linux агент – конфигурация
- 
По умолчанию файл конфигурации агента расположен в каталоге /etc/protoobp-agent/
- 
Создайте файл protoobp.yaml:vim /etc/protoobp-agent/protoobp.yamlи укажите в нем следующее: api_key: my_api_key pobp_url: http://protoobp-backend # используйте httpS только если на сервере ProtoOBP Backend подключен доверенный сертификат apm_config: apm_non_local_traffic: true apm_pobp_url: http://protoobp-backend # используйте httpS только если на сервере ProtoOBP Backend подключен доверенный сертификат telemetry: enabled: false agent_telemetry: enabled: false process_config: enabled: false process_collection: enabled: false container_collection: enabled: false process_discovery: enabled: falseГде, - api_key- ваш токен из лицензионного сертификата
- pobp_url- адрес ProtoOBP Backend сервера
- apm_pobp_url- адрес ProtoOBP Backend сервера
 Полный пример конфигурации, можно посмотреть в файле protoobp.yaml.example
- 
Если на хосте запускаются Dockerконтейнеры, то необходимо добавить пользователяpobp-agentв группу Docker, чтобы агент мог собирать метрики по работе контейнеров, в дополнение к метрикам самого хоста:usermod -a -G docker pobp-agent
- 
Если на хосте запускаются Dockerконтейнеры с приложениями, в которые будут добавлены трейсеры:- При конфигурации трейсера для Docker контейнера с приложением, отсылающим трейсы в Агента, установленного на хосте (не в контейнере):
POBP_AGENT_HOST=host.docker.internal
- При запуске контейнера с приложением добавьте опцию extra_hostsв вашdocker-compose.yamlфайл:extra_hosts: - "host.docker.internal:host-gateway"host-gateway– это специальная строка-шаблон, появившаяся в Docker 20.10.0+, ее значение при использовании вextra_hostsбудет соответствовать IP адресу машины. Таким образом, по имениhost.docker.internalбудет доступен IP адрес машины.
 
- При конфигурации трейсера для Docker контейнера с приложением, отсылающим трейсы в Агента, установленного на хосте (не в контейнере):
- 
Запустите агента, выполнив: systemctl start protoobp-agentПри успешной настройке агента вы сможете увидеть новый хост в разделе Инфраструктура>Хостыв течение одной-двух минут.
Обратите внимание
Для отображения нового хоста следует обновить страницу браузера целиком (кнопкаОбновить в правом верхнем углу веб-консоли обновляет только значения метрик на дашборде, но не список серверов).
Linux агент – управление
ProtoOBP Agent запускается как systemd служба - protoobp-agent.
| Действие | Команда | 
|---|---|
| Запуск агента | systemctl start protoobp-agent | 
| Остановка агента | systemctl stop protoobp-agent | 
| Перезапуск службы | systemctl restart protoobp-agent | 
Windows
Windows агент – установка
- 
Скачайте .msiустановщик с агентом (замените<YOUR_TOKEN>на значение вашего токена из вашего лицензионного сертификата)curl --header "PRIVATE-TOKEN:<YOUR_TOKEN>" "https://git.proto.group/api/v4/projects/125/packages/generic/protoobp-agent/7.40.2/protoobp-agent-7.40.2-x64.msi" --output protoobp-agent-7.40.2-x64.msi[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 $webClient = New-Object System.Net.WebClient $webClient.Headers.Add("PRIVATE-TOKEN", "<YOUR_TOKEN>") $webClient.DownloadFile( "https://git.proto.group/api/v4/projects/125/packages/generic/protoobp-agent/7.40.2/protoobp-agent-7.40.2-x64.msi", "protoobp-agent-7.40.2-x64.msi" )
- 
Запустите .msiустановщик в графическом режиме и следуйте указаниям мастера установки агента, разрешите административные привилегии в момент запроса.- Для консольной установки используйте PowerShell команду (запуск PowerShell должен быть от Администратора):
Start-Process -Wait msiexec -ArgumentList '/qn /i protoobp-agent-7.40.2-x64.msi APIKEY="<YOUR-TOKEN>"'
 
- Для консольной установки используйте PowerShell команду (запуск PowerShell должен быть от Администратора):
GMSA
Использование GMSA не является обязательным. GMSA для установки и запуска агент может применяться в доменной структуре с ограничивающими доменными политиками безопасности или если при использовании стандартного способа установки агенту не хватает прав на запуск сервисов из-за ограничений безопасности.
Для использования агента с GMSA выполните следующие шаги:
- 
Создайте Security Group и добавьте в нее все компьютеры, на которых будет установлен агент с использованием GMSA: - Откройте Active Directory Users and Computers(ADUC).
- Перейдите в нужный Organizational Unit(OU).
- Сделайте клик правой кнопкой мыши и выберите New > Group.
- Назовите группу, например, ProtoOBPAgentsGroup
- Установите необходимый скоуп группы, например Domain local.
- Установите тип группы: Security.
- Добавьте в эту группу все компьютеры, которые будут использовать GMSA для установки и запуска агента.
 
- Откройте 
- 
Создайте GMSA c именем ProtoobpGMSA:- 
Октройте PowerShell с привилегиями Администратора. 
- 
Выполните следующую команду для создания GMSA, замените <YOUR_DOMAIN_CONTROLLER_NAME>на DNS имя вашего контроллера домена:New-ADServiceAccount ` -Name ProtoobpGMSA ` -DNSHostName <YOUR_DOMAIN_CONTROLLER_NAME> ` -PrincipalsAllowedToRetrieveManagedPassword ProtoOBPAgentsGroupУбедитесь, что команда выполнена без ошибок. В случае ошибок: - создайте Kds ключ:
Add-KdsRootKey -EffectiveTime ((Get-Date).AddHours(-10))
- проверьте, что указанная группа существует:
Get-ADGroup -Identity ProtoOBPAgentsGroup
- выполните создание GMSA еще раз:
New-ADServiceAccount ` -Name ProtoobpGMSA ` -DNSHostName <YOUR_DOMAIN_CONTROLLER_NAME> ` -PrincipalsAllowedToRetrieveManagedPassword ProtoOBPAgentsGroup
 
- создайте Kds ключ:
 
- 
- 
Подключите GMSA и убедитесь, что GMSA может быть использована на целевой машине. На целевой машине откройте PowerShell и выполните: Install-ADServiceAccount -Identity ProtoobpGMSAУбедитесь, что команда выполнена без ошибок. Проверьте, что GMSA успешно установлена: Test-ADServiceAccount -Identity ProtoobpGMSAОжидаемый вывод команды: TrueУстранение неполадок подключения GMSA на целевую машину: - проверьте, какие группы имеют разрешение использовать GMSA:
если группаGet-ADServiceAccount -Identity ProtoobpGMSA -Properties PrincipalsAllowedToRetrieveManagedPasswordProtoOBPAgentsGroupотсутствует в списке в разделеPrincipalsAllowedToRetrieveManagedPassword, обновите GMSA и добавьте группуProtoOBPAgentsGroup:Set-ADServiceAccount -Identity ProtoobpGMSA -PrincipalsAllowedToRetrieveManagedPassword ProtoOBPAgentsGroup
- проверьте, что машина является членом группы:
убедитесь, что в выводе есть имя текущего компьютра, если его нет – добавьте компьютер в группу:Get-ADGroupMember -Identity ProtoOBPAgentsGroupAdd-ADGroupMember -Identity ProtoOBPAgentsGroup -Members <ComputerName>
- выполните обновление групповых политик, удалите Kerberos тикеты и перезагрузите компьютер:
gpupdate /force klist purge Restart-Computer
 
- проверьте, какие группы имеют разрешение использовать GMSA:
- 
Установите агента с использованием GMSA: - Если агент ранее был установлен стандартным методом (запуск от новой учетной записи pobpagentuser, созданной на этапе установки агента), то необходимо полностью удалить агента и его файлы, перед использованием установки с использованием GMSA.- Через Control Panelудалите пакет агента (через графический интерфейс).
- Вручную удалите папку C:\ProgramData\Protoobp(обязательный шаг, иначе последующая установка завершится ошибкой)
 
- Через 
- Запустите .msiустановщик агента.
- Введите запрашиваемые ключ и адрес бэкенд сервера
- На этапе выбора учётной записи (Please enter the username) укажите созданную и установленную на этой машине GMSA в формате:<ВАШ_ДОМЕН>\ProtoobpGMSA$– обязательно с символом$в конце. Поле пароль обязательно оставьте пустым.
- Зайдите в веб-интерфейс агента, и выполните конфигурацию агента через веб-интерфейс.
- Откройте services.mscи убедитесь, что агент запускается от имени доменной GMSA:
  
 
- Если агент ранее был установлен стандартным методом (запуск от новой учетной записи 
Windows агент – конфигурация
- 
Запустите веб-консоль управления агентом ProtoOBP Agent Manager.
  
- 
Откроется веб-браузер с консолью управления. В случае запроса изменения настроек безопасности – добавьте в доверенные узлы http://127.0.0.1иabout:blank.
  
- 
Перейдите в раздел Settingsи в конфигурации агента укажите следующее:api_key: my_api_key pobp_url: http://<адрес_бекенд_сервера_protoobp> # используйте httpS только если на сервере ProtoOBP Backend подключен доверенный сертификат apm_config: apm_non_local_traffic: true apm_pobp_url: http://<адрес_бекенд_сервера_protoobp> # используйте httpS только если на сервере ProtoOBP Backend подключен доверенный сертификат enabled: true telemetry: enabled: false process_config: process_collection: enabled: falseПараметры: api_keyзначение, указанное в лицензионном сертификате, полученном ранее от вендора, в разделе Учетные данные -> Парольpobp_urlстрока вида http://<адрес_бекенд_сервера_protoobp>, где<адрес_бекенд_сервера_protoobp>- адрес вашего ProtoOBP Backend сервера, доступного для агентаapm_pobp_urlстрока вида http://<адрес_бекенд_сервера_protoobp>, где<адрес_бекенд_сервера_protoobp>– адрес вашего ProtoOBP Backend сервера, доступного для агентаПример окна конфигурации:  
- 
Перезапустите агента, для этого консоли управления кликните на Restart Agent.При успешной настройке агента вы сможете увидеть новый хост в разделе Инфраструктура>Хостыв течение одной-двух минут.
Обратите внимание
Для отображения нового хоста следует обновить страницу браузера целиком (кнопкаОбновить в правом верхнем углу веб-консоли обновляет только значения метрик на дашборде, но не список серверов).
Windows агент – управление
- 
Запустите ProtoOBP Agent Manager: 
  
- 
Для перезапуска агента в левом меню выберите и нажмите на раздел Restart Agent
  
Также после запуска ProtoOBP Agent Manager в системном трее доступна иконка с контекстным меню агента для управления агентом:

Для команд ниже используйте только привилегированную командную строку (run as Administrator)
| Действие | Команда | 
|---|---|
| Запуск агента | "C:\Program Files\Protoobp\Protoobp Agent\bin\agent.exe" start-service | 
| Остановка агента | "C:\Program Files\Protoobp\Protoobp Agent\bin\agent.exe" stopservice | 
| Перезапуск службы | "C:\Program Files\Protoobp\Protoobp Agent\bin\agent.exe" restart-service | 
Windows агент – типовые проблемы
Сервис не запускается
В случае, если службы Агента не запускаются с ошибкой
Access is denied:
- Убедитесь, что у служебного пользователя, от имени которого запускается агент, есть права Log on as a service. Инсталлятор добавляет это право, но в случае использования групповых доменнных политик это право может быть отозвано у служебной учетной записи. Необходимо настроить групповые политики на разрешение служебному пользователю осуществлятьLog on as a service.- откройте Computer Configuration>Windows Settings>Security Settings>Local Policies>User Rights Assignment
- локальный пользователь, создаваемый в процессе установки (pobpagentuser): 
- в случае использования GMSA – DomainName\ProtoobpGMSA$:
  
 
- откройте 
- Убедитесь, что служебный пользователь pobpagentuserявляется членом группыUsersна сервере. В случае использования GMSA такое право должно быть у этой учетной записи.
Ошибка “Сервис помечен для удаления”
В случае запуска процедуры удаления агента, файлы агента удаляются, но службы агента остаются видимы в системе, при попытке их удаления через командую строку выводится сообщение о том, что сервис “помечен для удаления”. В этом случае потребуется перезагрузка машины, чтобы произошло полное удаление сервисов. После перезагрузки возможно заново установить пакет агента. Это особенность операционной системы Windows.
Docker
Запуск Docker агента (отдельный контейнер)
- 
Подключитесь к Docker репозиторию ProtoOBP выполнив команду: sudo docker login --username <USERNAME> registry.git.proto.groupВаш <USERNAME>и пароль указаны в лицензионном сертификате, полученном ранее от вендора, в разделе “Учетные данные”. Пароль вводится интерактивно.
- 
Запустите агента docker run -d \ --cgroupns host \ --pid host \ --name protoobp-agent \ -v /var/run/docker.sock:/var/run/docker.sock:ro \ -v /proc/:/host/proc/:ro \ -v /sys/fs/cgroup/:/host/sys/fs/cgroup:ro \ -e POBP_API_KEY=<your_api_key> \ -e POBP_POBP_URL=http://<адрес_бекенд_сервера_protoobp> \ -e POBP_APM_POBP_URL=http://<адрес_бекенд_сервера_protoobp> \ -e POBP_PROCESS_CONFIG_PROCESS_COLLECTION_ENABLED=false \ registry.git.proto.group/protoobp/protoobp-artifacts/protoobp-agent:7.40.3Переменные окружения: POBP_API_KEYзначение, указанное в лицензионном сертификате, полученном ранее от вендора, в разделе Учетные данные -> ПарольPOBP_POBP_URLстрока вида http://<адрес_бекенд_сервера_protoobp>, где<адрес_бекенд_сервера_protoobp>- адрес вашего ProtoOBP Backend сервера, доступного для агентаPOBP_APM_POBP_URLстрока вида http://<адрес_бекенд_сервера_protoobp>, где<адрес_бекенд_сервера_protoobp>– адрес вашего ProtoOBP Backend сервера, доступного для агента
Запуск Docker агента (docker compose)
- 
Подключитесь к Docker репозиторию ProtoOBP выполнив команду: sudo docker login --username <USERNAME> registry.git.proto.groupВаш <USERNAME>и пароль указаны в лицензионном сертификате, полученном ранее от вендора, в разделе “Учетные данные”. Пароль вводится интерактивно.
- 
Добавьте в ваш docker-compose.yamlфайл следующее:protoobp-agent: container_name: protoobp-agent image: registry.git.proto.group/protoobp/protoobp-artifacts/protoobp-agent:7.40.3 pid: host volumes: - /var/run/docker.sock:/var/run/docker.sock:ro - /proc/:/host/proc/:ro - /sys/fs/cgroup/:/host/sys/fs/cgroup:ro - /etc/os-release:/host/etc/os-release:ro environment: - POBP_API_KEY=<your_api_key> - POBP_POBP_URL=http://<адрес_бекенд_сервера_protoobp> # используйте httpS только если на сервере ProtoOBP Backend подключен доверенный сертификат - POBP_PROCESS_CONFIG_PROCESS_COLLECTION_ENABLED=false - POBP_APM_POBP_URL=http://<адрес_бекенд_сервера_protoobp> # используйте httpS только если на сервере ProtoOBP Backend подключен доверенный сертификатПеременные окружения: POBP_API_KEYзначение, указанное в лицензионном сертификате, полученном ранее от вендора, в разделе Учетные данные -> ПарольPOBP_POBP_URLстрока вида http://<адрес_бекенд_сервера_protoobp>, где<адрес_бекенд_сервера_protoobp>- адрес вашего ProtoOBP Backend сервера, доступного для агентаPOBP_APM_POBP_URLстрока вида http://<адрес_бекенд_сервера_protoobp>, где<адрес_бекенд_сервера_protoobp>– адрес вашего ProtoOBP Backend сервера, доступного для агента
- 
Запустите агента, выполнив: docker compose up -d protoobp-agent
Kubernetes
После установки агента в системе появятся поды агента:
- protoobp
- protoobp-cluster-agent
Необходимые сетевые порты для работы Kubernetes агента:
| Source Name | Destination Name | Destination PORT/PROTO | Description | 
|---|---|---|---|
| поды агента	( protoobpиprotoobp-cluster-agent) | proto backend | 443/tcp | отправка данных (метрики, трейсы, логи) от агента на бэкенда | 
| под агента protoobp | под агента protoobp-cluster-agent | 5005/tcp | подключение агента к cluster-агенту | 
| поды приложений | под агента protoobp | 8125/udp | отправка метрик от приложения к агенту | 
| поды приложений | под агента protoobp | 8126/tcp | отправка трейсов от приложения к агенту | 
| IP k8s control plane | IP k8s ноды | 8000/tcp | подключение webhook автоматической инструментации приложений | 
Установка Kubernetes агента
Обратите внимание
Для работы с чартами Proto OBP необходимо использоватьhelm версии 3.x – версия 2.x не подходит, так как формат helm чартов отличается.
- 
Добавьте helmрепозиторий ProtoOBP:helm repo add --username <my_login> --password <my_password> protoobp https://git.proto.group/api/v4/projects/125/packages/helm/stableВаши логин и пароль указаны в лицензионном сертификате, полученном ранее от вендора, в разделе “Учетные данные”. 
- 
Добавьте secretдля скачивания Docker образов из репозитория ProtoOBP. Для этого воспользуйтесь готовым скриптомscript.sh:# Укажите имя пользователя login="my_login" # Укажите пароль password="my_password" # Укажите адрес репозитория registry="registry.git.proto.group" # Укажите namespace в котором будет установлен агент (по умолчанию protoobp) namespace="protoobp" ###################### # Скрипт set -o errexit echo 'Создаем Secret' kubectl create namespace ${namespace} kubectl create secret docker-registry protoobp-registry --docker-username=${login} --docker-password=${password} --docker-server=${registry} --namespace=${namespace}
- 
Создайте файл values.yamlс конфигурацией агентаtargetSystem: "linux" commonLabels: {} registry: registry.git.proto.group/protoobp/protoobp-artifacts # необходимо изменить в случае использования собственного Docker репозитория protoobp: apiKey: <ВАШ_API_KEY> # указан в лицензионном сертификате clusterName: <ИМЯ_КЛАСТЕРА> # задается вручную в соответствии с текущим реальным именем кластер pobp_url: http://<адрес_бекенд_сервера_protoobp> # используйте httpS только если на сервере ProtoOBP Backend подключен доверенный сертификат pobp_apm_url: http://<адрес_бекенд_сервера_protoobp> # используйте httpS только если на сервере ProtoOBP Backend подключен доверенный сертификат logLevel: INFO processAgent: enabled: false processCollection: false kubelet: tlsVerify: false clusterAgent: image: name: cluster-agent tag: 7.40.3 pullSecrets: - name: "protoobp-registry" env: ## этот раздел и переменная ниже добавляется только в случае использования локального репозитория Docker образов для компонентов Proto Observability Platform - name: POBP_ADMISSION_CONTROLLER_AUTO_INSTRUMENTATION_CONTAINER_REGISTRY value: docker.intranet/protoobp/protoobp-artifacts ## здесь указывается адрес локального репозитория - зеркала образов agents: image: name: protoobp-agent tag: 7.40.3 pullSecrets: - name: "protoobp-registry"Параметры: <ВАШ_API_KEY>значение, указанное в лицензионном сертификате, полученном ранее от вендора, в разделе Учетные данные -> Парольpobp_urlстрока вида http://<адрес_бекенд_сервера_protoobp>, где<адрес_бекенд_сервера_protoobp>- адрес вашего ProtoOBP Backend сервера, доступного для агентаapm_pobp_urlстрока вида http://<адрес_бекенд_сервера_protoobp>, где<адрес_бекенд_сервера_protoobp>– адрес вашего ProtoOBP Backend сервера, доступного для агента<ИМЯ_КЛАСТЕРА>имя кластера, которое будет отображаться в интерфейсе Proto Observability Platform 
- 
Установите helmчарт в ваш Kubernetes кластер (в примере ниже исползуется неймспейсprotoobp)Обратите вниманиеДля изменения параметров агентов Proto OBP допустимы только изменения в файлеvalues.yaml, изменять сам чарт не нужно.helm install protoobp -f values.yaml protoobp/protoobp --namespace protoobp
Использование hostPath ноды
Поды агента имеют несколько hostPath mount:
| Имя Mount | Описание | 
|---|---|
| procdir | Подключается в режиме read-only. Используется системными проверками. | 
| cgroups | Подключается в режиме read-only. Используется для сбора метаданных контейнеров. | 
| os-release-file | Подключается в режиме read-only. Используется для определения ОС. | 
| passwd | Подключается в режиме read-only. Используется для ассоциирования процессов с пользователями. | 
| runtimesocketdir | Подключается в режиме read-only. Используется для сбора метрик контейнеров. | 
| dsdsocket | Подключается в режиме read-write. Используется для приема метрик, опционально также может быть включен порт. | 
| apmsocket | Подключается в режиме read-write. Используется для приема трейсов, опционально также может быть включен порт. | 
Работа в непривилегированном режиме
Для максимальной совместимости и автоматизации сбора данных агент в контейнере по умолчанию запускается от пользователя root.
Использование не root пользователя может ограничить работу некоторых интеграций, которым необходимы данные хоста (ноды).
Пользователя, под которым запускается агент в контейнере, можно изменить, указав в values.yaml ID необходимого пользователя.
Обратите внимание
Для корректной работы агента в случае изменения ID пользователя необходима предварительная настройка хоста (ноды):
- пользователь, под которым запускается агент, должен иметь доступ к сокету Docker,CRI-Oилиcontainerd(в зависимости от используемого рантайма).
Внутри контейнера агента создается пользователь pobp-agent c ID = 101, рекомендуется использовать этого пользователя для предоставления доступа к сокету.
protoobp:
...
  securityContext:
      runAsUser: <USER_ID> 
      # UID пользователя, под которым будет запускаться Proto OBP агент
      supplementalGroups:
        - <GROUP_ID> 
        # ID группы, которая является владельцем сокета Docker или containerd
Дополнительная конфигурация для OpenShift
Особенности настройки агентов Proto OBP с OpenShift:
- необходимо указать создание SCC (Security Context Constraints) для агентов
- необходимо указать путь к сокету CRI, так как OpenShift использует CRI-O в качестве рантайма контейнеров
- необходимо добавить tolerationsдля запуска агентов наmasterиinfraнодах кластера
Для этого в файле values.yaml в разделе agents добавьте:
protoobp:
  criSocketPath: /var/run/crio/crio.sock
...
agents:
  useHostNetwork: true
  podSecurity:
    securityContextConstraints:
      create: true
  tolerations:
    - effect: NoSchedule
      key: node-role.kubernetes.io/master
      operator: Exists
    - effect: NoSchedule
      key: node-role.kubernetes.io/infra
      operator: Exists
clusterAgent:
  podSecurity:
    securityContextConstraints:
      create: true
...
Изменение параметров Kubernetes агента
После внесения изменений в файл values.yaml можно применить изменения с помощью команды:
helm upgrade protoobp -f values.yaml protoobp/protoobp --namespace protoobp
Или воспользуйтесь полным удалением агента и переустановкой.
Удаление Kubernetes агента
Удалить ProtoOBP агента из Kubernetes кластера, можно выполнив (используемый в примере неймспейс – protoobp, замените при использовании нестандартного неймспейса):
helm uninstall protoobp -n protoobp
Работа агента через proxy
- 
Настройка прокси-сервера. В качестве примера может использоваться прокси-сервер Nginx и минимальная конфигурация: user www-data; worker_processes auto; error_log /var/log/nginx/error.log; pid /run/nginx.pid; load_module /usr/lib/nginx/modules/ngx_stream_module.so; events { worker_connections 1024; } stream { server { listen 80; proxy_ssl_verify off; proxy_ssl on; proxy_pass proto-backend:443; } }Где proto-backend– адрес вашего бэкенд сервера.
- 
Настройка агента для использования прокси. В используемых адресах вместо адресов бэкенда укажите адрес прокси сервера: api_key: your-api-key pobp_url: http://nginx-proxy skip_ssl_validation: true apm_config: apm_non_local_traffic: true apm_pobp_url: http://nginx-proxy telemetry: enabled: false database_monitoring: metrics: pobp_url: nginx-proxy activity: pobp_url: nginx-proxy samples: pobp_url: nginx-proxyГде nginx-proxy– адрес вашего прокси сервера.
- 
Примените изменения, перезапустив агента. 
Файлы конфигурации агента
Основной конфигурационный файл агента:
| Платформа | Путь и имя файла | 
|---|---|
| Linux | /etc/protoobp-agent/protoobp.yaml | 
| Windows | %ProgramData%\Protoobp\protoobp.yaml | 
Файлы конфигурации модулей для мониторинга технологий находятся в папке <путь к папке конфигурации>/conf.d/<технология>.d/..
Путь к папке конфигурации зависит от платформы:
| Платформа | Путь | 
|---|---|
| Linux | /etc/protoobp-agent/conf.d/ | 
| Windows | %ProgramData%\Protoobp\conf.d | 
Например, для мониторинга MySQL на агента Linux путь к файлу конфигурации MySQL будет иметь вид:
/etc/protoobp-agent/conf.d/mysql.d/conf.yaml
Проверка работы агента
| Платформа | Команда | 
|---|---|
| Docker | sudo docker exec -it protoobp-agent agent status | 
| Kubernetes | kubectl exec -it <AGENT_POD_NAME> -- agent status | 
| Linux | sudo protoobp-agent status | 
| Windows | Для команды ниже используйте только привилегированную командную строку (run as Administrator) "C:\Program Files\Protoobp\Protoobp Agent\bin\agent.exe" status | 
Логи агента
Логи работы агента располагаются в следующих локациях:
| Платформа | Путь | 
|---|---|
| Linux | /var/log/protoobp/ | 
| Windows | C:\ProgramData\Protoobp\logs | 
Логи установки агента располагаются в следующих локациях:
| Платформа | Путь и имя файла | 
|---|---|
| Linux | $(pwd)/protobop-agent-install.log | 
| Windows | %TEMP%\MSI*.LOG |