Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

810 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Развертывание системы наблюдаемости на платформе Yandex Cloud по модели GitOps

Цель

Разработать масштабируемую систему наблюдаемости микросервисов на базе OpenTelemetry для платформы Yandex Cloud с автоматизированным развертыванием по модели GitOps.

Задачи

  • Сформировать требования к системе наблюдаемости на основе анализа инфраструктуры Yandex Cloud и спецификаций сервиса Monium.
  • Спроектировать архитектуру облачной инфраструктуры и стека OpenTelemetry.
  • Разработать декларативное описание инфраструктуры и стека OpenTelemetry, реализовать процессы доставки по модели GitOps.
  • Провести комплексное тестирование развернутой инфраструктуры и корректности работы стека наблюдаемости, а также сравнительный анализ производительности микросервисного приложения до и после развёртывания стека OpenTelemetry.

Требования

Функциональные:

  • Интеграция с Monium.
  • Комплексный сбор данных телеметрии.
  • Корреляция сигналов телеметрии.
  • Автоматическая инструментация - внедрение агентов для сбора телеметрии без модификации исходного кода.

Нефункциональные:

  • Использование управляемых сервисов Yandex Cloud - минимальные трудозатраты.
  • Декларативное описание инфраструктуры и стека наблюдаемости.
  • Автоматизация процессов CI/CD - GitOps-конвейер GitLab и ArgoCD.
  • Масштабируемость в каждой зоне доступности.
  • Адаптивность к числу зон доступности: от одной до четырёх.
  • Производительность - деградация времени отклика прикладных сервисов не более 10%.
  • Безопасность - полное отсутствие секретов в Git. Интеграция с сервисами Яндекс.Облака для хранения секретов.

Перспективы

  • Уменьшение размера хранимой телеметрии за счёт интеграции механизма выборочного сохранения трассировок (tail-based sampling): отбрасывание части успешных фоновых трасс, но при этом сохраняются все трассы, содержащие ошибки, превышение порогов или иные аномальные признаки.
  • Внедрение непрерывного профилирования (Continuous Profiling) на базе протокола OTLP Profiles. Это позволит не только зафиксировать факт задержки, но и детально проанализировать использование ресурсов (CPU/RAM) на уровне кода. Интеграция данного функционала (в рамках планов развития платформы Яндекс Monium по поддержке сигналов Profiling) позволит получить диагностику производительности в рамках единого интерфейса.
  • Переход к концепции наблюдаемость как код (Observability-as-Code). Она предполагает декларативное описание метрик, дашбордов, каналов уведомлений и правил алертинга внутри приложения. Приложение будет развёрнуто в облачной инфраструктуре вместе с полностью настроенным мониторингом и окружением для аналитики.

Licence

The licence can be changed. By default this project has the MIT Licence.

About

Вигла (греч. βίγλα, от лат. vigilia)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages