Challenge yourself

DevOps Observability

The module covers key aspects of observability: traces, metrics and logging. It is designed to assess understanding of metrics, structured and unstructured logging, and distributed tracing in modern systems.

Metrics and monitoring

Для успешной подготовки к оценке по теме наблюдаемости, метрик и мониторинга, важно понимать ключевые аспекты на разных уровнях экспертизы.

Начальный уровень (Novice)
На начальном уровне следует сосредоточиться на основных понятиях, таких как определение метрик и их роль в наблюдаемости. Необходимо изучить различия между системными и прикладными метриками, а также понять, что такое база данных временных рядов (TSDB) и ее значимость для хранения метрик. Рекомендуется ознакомиться с примерами различных баз данных временных рядов, чтобы иметь представление о доступных инструментах.

Средний уровень (Intermediate)
На среднем уровне внимание должно быть уделено более сложным концепциям, таким как различие между счетчиками и датчиками в метриках. Важно освоить использование гистограмм и их применение в мониторинге. Также необходимо изучить методы настройки алертинга на основе метрик, включая практические примеры для лучшего понимания процесса.

Продвинутый уровень (Advanced)
На продвинутом уровне акцент следует делать на интеграции различных источников данных в единую систему мониторинга, учитывая разнообразие форматов и протоколов. Важно изучить механизмы обработки и хранения больших объемов метрик в реальном времени, в том числе и в распределенных инфраструктурах. Также следует ознакомиться с организацией процесса эскалации инцидентов для обеспечения быстрого реагирования на критические события, что является ключевым для поддержания надежности системы.

Logging

Начальный уровень (Novice)
На начальном уровне важно понимать основные концепции, связанные с логами и их ролью в наблюдаемости. Рекомендуется изучить, что такое логи, их назначение и как они помогают в мониторинге состояния системы. Также стоит ознакомиться с базовыми понятиями агрегации логов и ротации, а также с инструментами для централизованного логирования, чтобы иметь представление о том, как организовать сбор и хранение логов в различных средах.

Средний уровень (Intermediate)
На этом уровне акцент делается на более глубокое понимание структурированных и неструктурированных логов, а также на практические аспекты их сбора и обработки. Необходимо изучить методы организации сбора логов из различных инфраструктур, включая локальные машины и Kubernetes. Важно также разобраться в вопросах работы с конфиденциальными данными в логах и понять принципы работы сборщиков логов на примере популярных инструментов, таких как EKF/ELK стек, а таке Loki и Grafana.

Продвинутый уровень (Advanced)
На продвинутом уровне требуется комплексное понимание форматов логирования и их влияния на анализ данных. Следует изучить методы реализации трассировки запросов в микросервисной архитектуре и их связь с логированием. Важным аспектом является организация хранения и архивирования логов в соответствии с требованиями нормативных актов, таких как GDPR, что требует знания лучших практик и инструментов для обеспечения соответствия.

Tracing

Начальный уровень (Novice)
На начальном уровне важно понять основные концепции трассировки, включая её отличие от журналов и метрик. Рекомендуется изучить базовые термины, такие как трассировка, спан и идентификатор трассировки. Также полезно ознакомиться с основными инструментами для трассировки, чтобы иметь представление о том, что доступно для использования.

Средний уровень (Intermediate)
На среднем уровне следует углубиться в практические аспекты реализации трассировки в микросервисах. Это включает изучение методов подключения инструментов трассировки и понимание, как объединить трассировку с логированием для создания единой системы мониторинга. Важно также освоить использование спанов и их атрибутов для более детального анализа производительности.

Продвинутый уровень (Advanced)
На продвинутом уровне акцент делается на сложные аспекты распределенной трассировки. Необходимо изучить стратегии выявления узких мест производительности и проблемы, с которыми можно столкнуться при внедрении распределенной трассировки. Также важно понять роль распространения контекста в трассировке и как это влияет на взаимодействие между микросервисами.