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


Настройка конвейера Azure Monitor

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

Обзор

Конвейер Azure Monitor — это контейнерное решение, развернутое в кластере Kubernetes с поддержкой Arc и использующее Сборщик OpenTelemetry в качестве основы. На следующей схеме показаны компоненты конвейера. Один или несколько потоков данных прослушивают входящие данные от клиентов, а расширение конвейера пересылает данные в облако, используя локальный кэш при необходимости.

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

Обзор схемы потока данных для конвейера Azure Monitor.

Замечание

Приватный канал поддерживается конвейером Azure Monitor для подключения к облаку.

Для включения конвейера Azure Monitor необходимы следующие компоненты и конфигурации. Если вы используете портал Azure для настройки конвейера, то каждый из компонентов создается автоматически. С другими методами необходимо настроить каждую из них.

Компонент Описание
Расширение контроллера периферийного потока данных Добавлено расширение в ваш кластер Kubernetes с поддержкой Arc для обеспечения функциональности конвейера — microsoft.monitor.pipelinecontroller.
Экземпляр контроллера граничного трубопровода Экземпляр конвейера, работающего в кластере Kubernetes с поддержкой Arc.
Поток данных Сочетание получателей и экспортеров, работающих на контроллере конвейера. Получатели принимают данные от клиентов и экспортеров для доставки данных в Azure Monitor.
Конфигурация конвейера Файл конфигурации, определяющий потоки данных для экземпляра конвейера. Каждый поток данных включает приемника и экспортера. Получатель прослушивает входящие данные, а экспортер отправляет данные в место назначения.
Конечная точка сбора данных (DCE) Конечная точка, в которой данные отправляются в Azure Monitor в облаке. Конфигурация конвейера содержит свойство для URL-адреса DCE, чтобы экземпляр конвейера знал, куда отправлять данные.
Конфигурация Описание
Правило сбора данных (DCR) Файл конфигурации, определяющий способ получения данных в Azure Monitor и куда они отправляются. DCR также может включать преобразование для фильтрации или изменения данных перед отправкой в место назначения.
Конфигурация конвейера Конфигурация, определяющая потоки данных для экземпляра конвейера, включая потоки данных и кэш.

Поддерживаемые конфигурации

Поддерживаемые дистрибутивы

Конвейер Azure Monitor поддерживается в следующих дистрибутивах Kubernetes:

  • Канонический
  • Поставщик API кластеров для Azure
  • K3
  • Подсистема Rancher Kubernetes
  • Сетка VMware Tanzu Kubernetes

Поддерживаемые локации

Конвейер Azure Monitor поддерживается в следующих регионах Azure:

  • Центральная Канада
  • Восток США2
  • Италия Север
  • Западная часть США2
  • Западная Европа

Дополнительные сведения см. в разделе "Доступность продуктов по регионам"

Предпосылки

Рабочий процесс

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

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

Этап Действие Поддержка конфигурации
1. Клиент отправляет данные приемнику конвейера. Клиент настраивается с IP-адресом и портом приемного устройства на краю сети и отправляет данные в требуемом формате для данного типа приемника.
2. Получатель перенаправит данные экспортеру. Получатель и экспортер настроены в одном конвейере.
3 Экспортер пытается отправить данные в облако. Экспортер в конфигурации конвейера содержит URL-адрес DCE, уникальный идентификатор DCR и поток в DCR, определяющий способ обработки данных.
3a. Экспортер сохраняет данные в локальном кэше, если он не может подключиться к DCE. Постоянный том для кэша и конфигурации локального кэша включен в настройках конвейера.

Подробная схема шагов и компонентов для сбора данных с помощью конвейера Azure Monitor.

Этап Действие Поддержка конфигурации
4 Azure Monitor принимает входящие данные. DCR содержит определение схемы для входящего потока, которое должно соответствовать схеме данных, поступающих из конвейера.
5 Azure Monitor применяет преобразование к данным. DCR включает преобразование, которое фильтрует или изменяет данные перед отправкой в место назначения. Преобразование может фильтровать данные, удалять или добавлять столбцы или полностью изменять ее схему. Выходные данные преобразования должны соответствовать схеме целевой таблицы.
6. Azure Monitor отправляет данные в место назначения. DCR включает назначение, указывающее рабочую область Log Analytics и таблицу, в которой будут храниться данные.

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

Сегментированная сеть

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

Схема многоуровневой сети для конвейера Azure Monitor.

Чтобы использовать конвейер Azure Monitor в многоуровневой конфигурации сети, необходимо добавить следующие записи в список разрешений для кластера Kubernetes с поддержкой Arc. См. статью "Настройка предварительной версии управления сетями с уровнем Интернета вещей Azure" на уровне 4 кластера.

- destinationUrl: "*.ingest.monitor.azure.com"
  destinationType: external
- destinationUrl: "login.windows.net"
  destinationType: external

Создание таблицы в рабочей области Log Analytics

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

См. Добавление или удаление таблиц и столбцов в журналах Azure Monitor для получения подробной информации о различных методах создания таблицы. Например, используйте приведенную ниже команду CLI, чтобы создать таблицу с тремя столбцами, называемыми Body, TimeGeneratedи SeverityText.

az monitor log-analytics workspace table create --workspace-name my-workspace --resource-group my-resource-group --name my-table_CL --columns TimeGenerated=datetime Body=string SeverityText=string

Включение кэша

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

  • Пространство имен метаданных должно совпадать с указанным экземпляром конвейера Azure Monitor.
  • Режим доступа должен поддерживать ReadWriteMany.

После создания тома в соответствующем пространстве имен настройте его с помощью параметров в файле конфигурации конвейера ниже.

Осторожность

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

Данные извлекаются из кэша по принципу первым поступил — первым вышел (FIFO). Все данные старше 48 часов будут удалены.

Включение и настройка конвейера

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

Настройка конвейера с помощью портал Azure

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

Выполните одно из следующих действий в портале Azure, чтобы запустить процесс установки конвейера Azure Monitor:

  • В меню конвейеров Azure Monitor (предварительная версия) нажмите кнопку "Создать".
  • В меню для кластера Kubernetes с поддержкой Arc выберите расширения и добавьте расширение конвейера Azure Monitor (предварительная версия).

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

Снимок экрана: экран создания конвейера Azure Monitor.

Параметры на этой вкладке описаны в следующей таблице.

Недвижимость Описание
Имя экземпляра Имя экземпляра конвейера Azure Monitor. Должен быть уникальным для подписки.
Подписка Подписка Azure для создания экземпляра конвейера.
Группа ресурсов Группа ресурсов для создания экземпляра конвейера.
Имя кластера Выберите кластер Kubernetes с поддержкой Arc, на котором будет установлен конвейер.
Настраиваемое местоположение Настраиваемое местоположение для вашего кластера Kubernetes с поддержкой Arc. Это будет автоматически заполнено именем настраиваемого расположения, которое будет создано для кластера или вы можете выбрать другое пользовательское расположение в кластере.

Вкладка "Поток данных" позволяет создавать и изменять потоки данных для экземпляра конвейера. Каждый поток данных содержит следующие сведения:

Снимок экрана: создание экрана добавления потока данных.

Параметры на этой вкладке описаны в следующей таблице.

Недвижимость Описание
Имя Имя потока данных. Должен быть уникальным для этого конвейера.
Тип источника Тип собираемых данных. В настоящее время поддерживаются следующие типы источников:
— Системный журнал
— OTLP
Порт Порт, который конвейер прослушивает входящие данные. Если два потока данных используют один и тот же порт, они получают и обрабатывают данные.
Рабочая область Log Analytics Рабочая область Log Analytics, в которую отправляются данные.
Имя таблицы Имя таблицы в рабочей области Log Analytics для отправки данных.

Проверка конфигурации

Проверьте выполнение компонентов конвейера в кластере

В портал Azure перейдите в меню служб Kubernetes и выберите кластер Kubernetes с поддержкой Arc. Выберите службы и входящий трафик и убедитесь, что вы увидите следующие службы:

  • <имя конвейера> — внешняя служба
  • <Служба имен> конвейера

Снимок экрана: компоненты кластера, поддерживающие конвейер Azure Monitor.

Щелкните запись о <pipeline> имени external-service и запишите IP-адрес и порт в столбце Endpoints. Это внешний IP-адрес и порт, в который клиенты будут отправлять данные. Сведения о получении этого адреса от клиента см. в статье "Получение конечной точки входящего трафика".

Проверка пульса

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

Извлеките записи пульса с помощью запроса журнала, как показано в следующем примере:

Снимок экрана: запрос журнала, возвращающий записи пульса для конвейера Azure Monitor.

Конфигурация клиента

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

Получение конечной точки входа

Для каждого клиента требуется внешний IP-адрес службы конвейера Azure Monitor. Используйте следующую команду, чтобы получить этот IP-адрес:

kubectl get services -n <namespace where azure monitor pipeline was installed>
  • Если приложение, создающее журналы, является внешним для кластера, скопируйте значение external-ip для службы < или > с типом балансировщика нагрузки.
  • Если приложение находится в pod в кластере, скопируйте cluster-ip.

Замечание

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

Клиент Описание
Системный журнал Обновите клиенты Syslog, чтобы они отправляли данные в конечную точку канала и порт передачи данных Syslog.
OTLP Граничный конвейер Azure Monitor предоставляет конечную точку OTLP на основе gRPC через порт 4317. Настройка вашей инструментальной платформы для отправки данных в эту конечную точку OTLP будет зависеть от используемой библиотеки инструментирования. Смотрите документацию по конечной точке OTLP или сборщику для OpenTelemetry. Метод переменной среды задокументирован в конфигурации экспортера OTLP.

Проверка данных

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

Снимок экрана: запрос журнала, возвращающий коллекцию Syslog.

Дальнейшие действия