Поделиться через


Рекомендации по проектированию надежной стратегии мониторинга и оповещения

Применяется к этой рекомендации проверки надежности платформы Azure Well-Architected Framework:

RE:10 Измеряйте и моделировайте индикаторы работоспособности решения. Непрерывно фиксируйте время простоя и другие данные надежности из рабочей нагрузки, а также из отдельных компонентов и ключевых потоков.

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

Определения

Термин Определение
Метрики Числовые значения, собираемые через регулярные интервалы. Метрики описывают некоторые аспекты системы в определенное время.
Журналы ресурсов Данные, создаваемые системой. Он предоставляет сведения о состоянии системы.
Следы Данные, предоставляющие сведения о пути, по которому запрос перемещается через службы и компоненты.

Основные стратегии проектирования

Перед созданием стратегии мониторинга и оповещения выполните следующие задачи для рабочей нагрузки в рамках планирования надежности:

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

Выполните следующие рекомендации для разработки стратегии мониторинга и оповещений, которая соответствует требованиям вашего бизнеса.

Реализация общей стратегии мониторинга

  • Разберитесь в разнице между метриками, логами и трассировками.

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

  • Перенаправьте все журналы диагностики в централизованный приемник данных и платформу аналитики, например, рабочую область Log Analytics. Если у вас есть требования к суверенитету данных региона, необходимо использовать локальные приемники данных в регионах, которые соответствуют этим требованиям.

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

  • Если рабочие нагрузки подвержены одной или нескольким платформам соответствия требованиям, некоторые журналы компонентов, обрабатывающие конфиденциальную информацию, также применяются к этим платформам. Отправьте соответствующие журналы компонентов в систему управления безопасностью и событиями (SIEM), например Microsoft Sentinel.

  • Создайте политику хранения журналов, которая включает долгосрочные требования к хранению, которые платформы соответствия налагают на рабочую нагрузку.

  • Используйте структурированное ведение журнала для всех сообщений журнала для оптимизации запросов к данным журнала.

  • Настройте оповещения для срабатывания, когда значения превышают критические пороги, что соответствует изменению состояния модели работоспособности, например, от зеленого к желтому или красному.

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

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

  • Визуализировать состояние вашей среды в режиме реального времени.

  • Используйте данные, собранные во время инцидентов, для непрерывного улучшения моделей работоспособности и стратегии мониторинга и оповещения.

  • Включение служб мониторинга и оповещений облачной платформы, в том числе:

  • Включите встроенный расширенный мониторинг и аналитику, которые предлагает поставщик облачных услуг, например средства аналитики Azure Monitor.

  • Реализуйте мониторинг резервного копирования и восстановления для фиксирования:

    • Состояние репликации данных, позволяющее обеспечить восстановление вашей рабочей нагрузки в пределах целевой точки восстановления (RPO).

    • Успешные и неудачные резервные копии и восстановление.

    • Длительность восстановления в целях информирования о вашем планировании аварийного восстановления.

Мониторинг приложений

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

  • Регистрировать данные во время работы приложения в производственной среде. Для диагностики причин проблем в производственной среде требуется достаточное количество информации.

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

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

  • Разделяйте журнал приложений и аудит. Записи аудита обычно хранятся для обеспечения соответствия нормативным требованиям и должны быть полными. Чтобы избежать удаления транзакций, сохраняйте журналы аудита отдельно от журналов диагностики.

  • Используйте корреляцию телеметрии, чтобы обеспечить возможность отслеживания транзакций через всю архитектуру приложения и критически важные системные потоки. Этот процесс жизненно важен для выполнения анализа первопричин (RCA) для сбоев. Сбор метрик и журналов уровня платформы, таких как загрузка процессора в процентах, входящий и исходящий трафик, и операции с дисками в секунду, из приложения для создания модели работоспособности и обнаружения и прогнозирования проблем. Этот подход может помочь различать временные и непереходные ошибки.

  • Используйте мониторинг “белого ящика”, чтобы снабдить приложение семантическими журналами и метриками. Сбор метрик и журналов на уровне приложения, таких как потребление памяти или задержка запросов, из приложения для информирования модели работоспособности и обнаружения и прогнозирования проблем.

  • Используйте мониторинг черного ящика для измерения служб платформы и пользовательского опыта. При мониторинге “черного ящика” проверяется наблюдаемое поведение приложения без изучения внутренних компонентов системы. Этот подход распространен для измерения клиенториентированных показателей уровня обслуживания (SLI), целей уровня обслуживания (SLO) и соглашений об уровне обслуживания (SLA).

Примечание.

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

Мониторинг данных и хранилища

  • Отслеживайте метрики доступности контейнеров хранилища. Если эта метрика опускается ниже 100 процентов, это свидетельствует о сбоях при записи. Временные падения доступности могут произойти, когда поставщик облачных служб управляет нагрузкой. Отслеживайте тенденции доступности, чтобы определить, возникла ли проблема с рабочей нагрузкой.

    В некоторых случаях снижение показателей доступности для контейнера хранилища указывает на узкое место в вычислительном слое, связанном с контейнером хранилища.

  • Существует множество метрик для мониторинга баз данных. В контексте надежности важные метрики для мониторинга включают:

    • Длительность запросов

    • Таймауты

    • Время ожидания

    • Нехватка памяти

    • Блокировки

Упрощение функций Azure

  • Azure Monitor — это комплексное решение для мониторинга, которое используется для сбора, анализа и реагирования на данные мониторинга из облачных и локальных сред.

  • Log Analytics — это средство в портал Azure, которое используется для редактирования и выполнения запросов журналов к данным в рабочей области Log Analytics.

  • Application Insights — это расширение Azure Monitor. Он предоставляет функции мониторинга производительности приложений (APM).

  • Аналитика Azure Monitor — это расширенные средства аналитики, которые помогают отслеживать службы Azure, такие как виртуальные машины, службы приложений и контейнеры. Инсайты основаны на Azure Monitor и Log Analytics.

  • Azure Monitor для решений SAP — это собственный продукт мониторинга Azure для ландшафтов SAP, работающих в Azure.

  • Политика Azure помогает применять организационные стандарты и оценивать соответствие нормативным требованиям в больших масштабах.

  • Центр непрерывности бизнес-процессов Azure предоставляет аналитические сведения о вашей инфраструктуре непрерывности бизнес-процессов. При применении подходов к непрерывности бизнес-процессов и аварийному восстановлению (BCDR) используйте Центр непрерывности бизнес-процессов Azure для централизованного управления защитой непрерывности бизнес-процессов в Azure и гибридных рабочих нагрузках. Центр непрерывности бизнес-процессов Azure указывает ресурсы, которые не имеют надлежащей защиты (с помощью резервного копирования или аварийного восстановления) и выполняют корректирующие действия. Это средство упрощает единый мониторинг и позволяет устанавливать соответствие требованиям управления и аудита с помощью Политики Azure, и все это удобно доступно в одном месте.

  • Рекомендации по работе с несколькими рабочими областями см. в статье "Проектирование архитектуры рабочей области Log Analytics".

Пример

Примеры реальных решений мониторинга см. в статье "Мониторинг веб-приложений в Azure" и "Базовая архитектура для кластера Azure Kubernetes Service".

Контрольный список надежности

Ознакомьтесь с полным набором рекомендаций.