Мониторинг и ведение журнала Kubernetes

Служба Azure Kubernetes (AKS)
Azure Log Analytics
Azure Monitor

В этой статье описывается, как мониторинг Служба Azure Kubernetes (AKS) сравнивается с Amazon Elastic Kubernetes Service (Amazon EKS). В этой статье описаны различные варианты мониторинга журналов кластера AKS и ее рабочих нагрузок и управления ими.

Примечание.

Эта статья является частью серии статей, которые помогают специалистам, знакомым с Amazon EKS, чтобы понять AKS.

Мониторинг и ведение журнала Amazon EKS

Как и любая служба Kubernetes, EKS имеет два основных компонента, плоскость управления и рабочие узлы. Существуют определенные возможности для каждого слоя.

Уровень управления Amazon EKS и мониторинг кластера

Amazon EKS интегрируется с журналами Amazon CloudWatch для обеспечения ведения журнала и мониторинга для плоскости управления Amazon EKS. Эта интеграция не включена по умолчанию, но при настройке собирает журналы:

  • Вызовы сервера API и API.
  • Журналы аудита и взаимодействие с пользователем.
  • Журналы Authenticator.
  • Журналы планировщика и контроллера.

Amazon EKS предоставляет метрики плоскости управления в конечной точке /metrics в текстовом формате Prometheus. Контейнер CloudWatch Аналитика может собирать и хранить метрики Prometheus. Вы можете развернуть и самостоятельно управлять Prometheus поверх кластера EKS или использовать службу Amazon Managed для Prometheus.

Amazon EKS также интегрируется с Amazon Web Services (AWS) CloudTrail для отслеживания действий и вызовов API. Дополнительные сведения см. в разделе "Ведение журналов вызовов API Amazon EKS с помощью AWS CloudTrail".

Мониторинг рабочей нагрузки Amazon EKS

Контейнер CloudWatch Аналитика может собирать и агрегировать метрики и журналы из контейнерных приложений, развернутых в EKS. Вы можете реализовать контейнер Аналитика в Amazon EKS с контейнерной версией агента CloudWatch или с помощью дистрибутива AWS для OpenTelemetry в качестве daemonSet. Журналы можно отправлять с помощью FluentBit.

Мониторинг и ведение журнала AKS

Как и другие ресурсы Azure, AKS создает метрики платформы и журналы ресурсов, которые можно использовать для мониторинга его базовой работоспособности и производительности.

Diagram showing AKS logging and monitoring.

Скачайте файл Visio для этой архитектуры.

Azure Monitor

AKS изначально интегрируется с Azure Monitor. Azure Monitor хранит метрики и журналы в центральном расположении, называемом рабочей областью Log Analytics. Эти данные обрабатываются и анализируются для предоставления аналитических сведений и оповещений. Дополнительные сведения см. в статье "Мониторинг Служба Azure Kubernetes (AKS) с помощью Azure Monitor.

Контейнер Аналитика — это функция Azure Monitor, которая собирает, индексирует и сохраняет данные, создаваемые кластером AKS. Вы можете настроить Аналитика контейнеров для мониторинга управляемых кластеров Kubernetes, размещенных в AKS и других конфигурациях кластера. Аналитика контейнера могут отслеживать работоспособность и производительность AKS с помощью визуализации, адаптированной к средам Kubernetes. Как и в случае с EKS, включение Аналитика контейнера для кластера AKS развертывает контейнерную версию агента Log Analytics, которая отвечает за отправку данных в рабочую область Log Analytics.

Microsoft Sentinel

Microsoft Sentinel обеспечивает интеллектуальную аналитику безопасности и аналитику угроз на предприятии. Используя Microsoft Sentinel, вы получаете единое решение для обнаружения атак, отображения угроз, их упреждающего поиска и реагирования на них.

Microsoft Sentinel должен быть подключен к AKS. Этот соединитель позволяет передавать журналы Служба Azure Kubernetes (AKS) диагностика в Microsoft Sentinel, что позволяет непрерывно отслеживать действия во всех экземплярах.

После подключения источников данных к Microsoft Sentinel вы можете визуализировать и отслеживать данные с помощью книг Microsoft Sentinel и Azure Monitor, что обеспечивает гибкость при создании пользовательских панелей мониторинга.

Мониторинг кластера и рабочей нагрузки AKS

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

Level Description Требования к мониторингу
Компоненты уровня кластера Масштабируемые наборы виртуальных машин, абстрагированные как узлы AKS и пулы узлов Состояние узла и использование ресурсов, включая ЦП, память, диск и сеть
Управляемые компоненты AKS Компоненты уровня управления AKS, включая серверы API, облачный контроллер и kubelet Журналы и метрики уровня управления из kube-system пространства имен
Объекты и рабочие нагрузки Kubernetes Объекты Kubernetes, такие как развертывания, контейнеры и наборы реплика Использование ресурсов и сбои
Приложения Рабочие нагрузки приложений, выполняемые в кластере AKS Мониторинг архитектуры, но включая журналы приложений и транзакции служб
Внешние Внешние ресурсы, которые не являются частью AKS, но необходимы для масштабируемости кластера и управления ими Зависит от каждого компонента
  • Компоненты уровня кластера: вы можете использовать существующие представления и отчеты контейнеров Аналитика для мониторинга компонентов уровня кластера для понимания их работоспособности, готовности, производительности, использования ресурсов ЦП и памяти и тенденций.

  • Управляемые компоненты AKS: можно использовать метрики Обозреватель для просмотра счетчика "Запросы на полет". Это представление включает задержку запроса и время обработки рабочей очереди.

  • Объекты и рабочие нагрузки Kubernetes. Вы можете использовать существующие представления и отчеты контейнеров Аналитика для мониторинга развертывания, контроллеров, модулей pod и контейнеров. Используйте представления узлов и контроллеров для просмотра работоспособности и производительности модулей pod, работающих на узлах и контроллерах, а также их потребления ресурсов с точки зрения ЦП и памяти.

    В представлении контейнеров Аналитика можно просмотреть работоспособность и производительность контейнеров или выбрать отдельный контейнер и отслеживать его события и журналы в режиме реального времени. Дополнительные сведения об использовании этого представления и анализе работоспособности контейнеров и производительности см. в статье "Мониторинг производительности кластера Kubernetes с помощью контейнеров Аналитика".

  • Приложения. Вы можете использовать Аналитика приложений для мониторинга приложений, работающих в AKS и других средах. Приложение Аналитика — это средство управления производительностью приложений, которое обеспечивает поддержку многих языков программирования. В зависимости от потребностей вы можете инструментировать код приложения для сбора запросов, трассировок, журналов, исключений, пользовательских метрик и сквозных транзакций и отправки этих данных в Приложение Аналитика. Если у вас есть приложение Java, вы можете обеспечить мониторинг без инструментирования кода. Дополнительные сведения см. в разделе "Мониторинг приложений инструментирования ноль" для Kubernetes.

  • Внешние компоненты: вы можете отслеживать внешние компоненты, такие как сетка служб, входящий трафик и исходящий трафик с помощью Prometheus и Grafana или других средств. Функции Azure Monitor можно использовать для мониторинга любой платформы как службы (PaaS), используемой приложениями рабочей нагрузки, такими как базы данных и другие ресурсы Azure.

Сторонние решения для мониторинга

Вы можете настроить сторонние решения мониторинга, такие как Grafana или Prometheus в пулах узлов AKS.

  • Для Grafana Grafana Labs предоставляет панель мониторинга с представлениями критически важных метрик сервера API. Эту панель мониторинга можно использовать на существующем сервере Grafana или настроить новый сервер Grafana в Azure. Дополнительные сведения см. в статье "Мониторинг служб Azure" в Grafana.

  • Prometheus — это популярное решение мониторинга метрик с открытым исходным кодом из Cloud Native Compute Foundation. Вы можете интегрировать Prometheus с Azure Monitor, чтобы вам не нужно настраивать сервер Prometheus и управлять ими с хранилищем.

    Контейнер Аналитика обеспечивает простой интерфейс подключения для сбора метрик Prometheus. Конечную точку метрик Prometheus можно предоставить через ваши экспортеры или приложения pod, а контейнеризованный агент для контейнеров Аналитика может сломать метрики. Контейнер Аналитика дополняет и завершает комплексный мониторинг AKS, включая сбор журналов, который Prometheus как автономный инструмент не предоставляет. Дополнительные сведения см. в разделе "Настройка очистки метрик Prometheus" с помощью аналитики контейнеров.

Затраты на мониторинг AKS

Модель ценообразования Azure Monitor в первую очередь основана на количестве данных, которые приемываются в день в рабочую область Log Analytics. Стоимость зависит от выбранного плана и периода хранения.

Прежде чем включить Аналитика контейнера, оцените затраты и понять, как управлять приемом данных и его затратами. Подробные инструкции см. в разделе "Оценка затрат для мониторинга кластера AKS".

Соавторы

Эта статья поддерживается корпорацией Майкрософт. Первоначально он был написан следующими участник.

Основные авторы:

Другие участник:

Чтобы просмотреть недоступные профили LinkedIn, войдите в LinkedIn.

Следующие шаги