Использование Azure Kubernetes при обработке потока событий

Служба Azure Kubernetes (AKS)
Центр Интернета вещей Azure
Центры событий Azure
Функции Azure
Azure Cosmos DB

Идеи решения

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

В этой статье описывается вариант бессерверной архитектуры, управляемой событиями, которая выполняется в Служба Azure Kubernetes (AKS) с масштабировщиком KEDA. Решение обрабатывает поток данных, обрабатывает данные, а затем записывает результаты в серверную базу данных.

Архитектура

Схема архитектуры, показывающая поток данных, описанный в этой статье.

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

Поток данных

  1. AKS с масштабировщиком KEDA используется для автомасштабирования контейнеров Функции Azure на основе количества событий, необходимых для обработки.
  2. События поступают в Концентратор событий ввода.
  3. Функция отмены пакетной обработки и фильтрации Azure активируется для обработки события. Этот шаг отфильтровывает нежелательные события и удаляет полученные события перед отправкой в Концентратор событий вывода.
  4. Если функция отмены пакетной обработки и фильтрации Azure не сохраняет событие успешно, событие отправляется в Концентратор событий Deadletter 1.
  5. События, поступающие в Концентратор событий вывода, активируют преобразование функции Azure. Эта функция Azure преобразует событие в сообщение для экземпляра Azure Cosmos DB.
  6. Событие хранится в базе данных Azure Cosmos DB.

Компоненты

  • Служба Azure Kubernetes (AKS) упрощает развертывание управляемого кластера Kubernetes в Azure, выгружая операционные издержки в Azure. Размещенная в Azure служба Kubernetes отвечает за критические задачи, в частности за мониторинг работоспособности и техническое обслуживание.
  • KEDA — это средство автомасштабирования на основе событий, используемое для масштабирования контейнеров в кластере Kubernetes на основе количества событий, которые необходимо обработать.
  • Центры событий принимают поток данных. Служба Центры событий предназначена для сценариев потоковой передачи данных с высокой пропускной способностью.
  • Функции Azure — это независимая от сервера служба вычислений. В нем используется модель на основе событий, в которой вызывается фрагмент кода ( функция) триггером.
  • Azure Cosmos DB — это служба базы данных с несколькими моделями, доступная в бессерверном режиме на основе потребления. В этом сценарии функция обработки событий сохраняет записи JSON с помощью Azure Cosmos DB для NoSQL.

Примечание.

Для сценариев Интернета вещей рекомендуется Центр Интернета вещей Azure. Центр Интернета вещей имеет встроенную конечную точку, совместимую с API Центры событий Azure, поэтому вы можете использовать любую службу в этой архитектуре без серьезных изменений во внутренней обработке. Дополнительные сведения см. в статье Подключение устройств Интернета вещей в Azure. Центр Интернета вещей и Центры событий.

Подробности сценария

В этой статье описывается бессерверная архитектура на основе событий, которая работает в AKS с масштабировщиком KEDA. Решение обрабатывает поток данных, обрабатывает данные, а затем записывает результаты в серверную базу данных.

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

Возможные сценарии использования

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

Соавторы

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

Автор субъекта:

  • Раджаса Савант | Старший инженер по разработке программного обеспечения

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

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

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