На старте проекта было принято решение не пытаться развертывать системы на ОС Windows, предвидя сложность развертывания и дальнейшей поддержки. За основу взяли виртуальную машину с Ubuntu Server.
Было принято решение развертывать сервисы в docker, т.к. шаблоны для запуска были доступны у обоих проектов.
После нескольких попыток запустить Kitsu на публично доступном docker-compose файле - задача стала несколько сложнее и сам проект потребовал небольшого рефакторинга и фиксации версий приложений.
Рефакторинг увенчался успехом, система была сдана в работу и в ней завели первый проект.
При планировании сбора метрик с рабочих станций сразу было понятно, что задача будет сложной, т.к. обработка видео производится на GPU, а сбор метрик с нескольких GPU (или хотя бы с одного GPU в удобном виде) отсутствовал в шаблонах, которые были “из коробки” или найдены в публичном доступе.
Также задачу усложняло то, что для сбора метрик с NVMe дисков требовались отдельно установленные утилиты.
Для сбора метрик были использованы Libre Hardware Monitor в связке с Smartmon Tools.
После того, как нужные метрики о состоянии GPU были найдены в WMI, было принято решение написать свой шаблон сбора метрик с этих устройств, так как другие шаблоны были неэффективны - они постоянно запускали утилиту nvidia smi. Получение данных напрямую через WMI было в этом случае наиболее привлекательным.
Для сбора метрик была выбрана схема с активным zabbix agent 2, так как часть рабочих станций была подключена по VPN.
После того, как всё было настроено, мы провели презентацию для заказчика и рассказали о том, как устроена система, про кастомизацию, постройку дашбордов под потребности и оперативный поиск проблем на рабочих станциях по накопленным метрикам.