Перейти к основному содержимому
Версия: 2.4.0 (последняя)

Основные настройки

Значения всех конфигурационных параметров Image API, перечисленных в этом разделе, настраиваются в файле конфигурации ./cfg/image-api.values.yaml.

ВНИМАНИЕ!

После редактирования файла сохраните его и обновите Image API в кластере с помощью команды:

./cli.sh image-api install

Настройки

Название поляОписание
image_pull_policyРегулирует политику загрузки из registry образов контейнера для развертывания экземпляра деплоймента Image API.

Доступны следующие значения поля:

  • Alwayskubelet (агент узлов в Kubernetes) выполняет загрузку образа из registry.
  • Never — загрузка образа из registry не предусмотрена. Если образ уже присутствует локально, kubelet попытается выполнить запуск контейнера, в противном случае, произойдет сбой загрузки.
  • IfNotPresent — образ загружается только в случае, если отсутствует локально.
processing.services[*].configs[*].use_avx2Использование набора команд AVX2 позволяет ускорить работу рекогнайзеров.
processing.services[*].configs[*].use_cudaОпределяет использование видеокарты сервисом. Доступно в сервисе face-detector-template-extractor.
processing.services.[*].replicasЗначение реплик сервиса.
processing.services[*].configs[*].downscale_ rawsamples_to_preferred_sizeПри включенном поле все сэмплы уменьшаются до предпочтительного размера в целях уменьшения потребления памяти, при этом происходит снижение производительности. Рекомендуется оставить поле отключенным.
processing.enable_ingressВключить проксирование на сервисы image-api через ingress.
processing.enable_resource_managementВключить использования управления ресурсами под (pods) в кластере.
processing.enable_hpaВключить Horizontal Pod Autoscaler для деплойментов. Необходим установленный metric-server.
processing.enable_node_selectorАктивировать использование обозначенных nodeSelector’ов в подах (pods). Необходимые лейблы должны быть назначены нодам кластера с помощью команды:
kubectl label nodes <node_name> type=<type>
  • "type": "processing" — нода для вычислений.
  • "type": "generic" — обычная нода.

Настройка модулей

Модуль — это вариант реализации сервиса Image API. Например, для сервиса liveness-estimator доступны следующие модули:

  • liveness-estimator
  • spoofing-estimator

Для смены модуля найдите в файле ./cfg/image-api.values.yaml конфиг интересующего сервиса в processing.services и поменяйте в нем значение поля module.

Пример конфига сервиса quality-assessment-estimator:

quality-assessment-estimator:
…………
module: quality-assessment-estimator
…………

Перечень доступных модулей для каждого сервиса Image API:

СервисМодули
face-detector-face-fitter
  • face-detector-face-fitter — стандартный модуль
body-detector
  • body-detector — стандартный модуль
age-estimator
  • age-estimator — стандартный модуль
emotion-estimator
  • emotion-estimator — стандартный модуль
gender-estimator
  • gender-estimator — стандартный модуль
mask-estimator
  • mask-estimator — стандартный модуль
face-detector-liveness-estimator
  • face-detector-liveness-estimator — стандартный модуль
verify-matcher
  • verify-matcher — стандартный модуль
face-detector-template-extractor
  • face-detector-template-extractor — стандартный модуль
quality-assessment-estimator
  • quality-assessment-estimator — стандартный модуль
template-extractor
  • template-extractor — стандартный модуль
liveness-estimator
  • spoofing-estimator — (нацелен на точное распознавание атак)
  • liveness-estimator — стандартный модуль

Масштабирование

В случае когда нагрузка возрастает, для стабилизации работы Image API предусмотрено масштабирование деплойментов, описанных в пункте Установка Image API в кластер в ручном режиме:

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

kubectl scale deployment <deployment_name> --replicas <count>

где <deployment_name> — наименование деплоймента (например, face-detector-face-fitter-dep), а <count> — количество реплик деплоймента (pods).

Для сохранения состояния масштабирования установите значение replicas под ключом интересующего сервиса в processing.services в файле ./cfg/image-api.values.yaml и перезапустите развертывание командой:

./cli.sh image-api install