Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описаны основные понятия в Event Grid в Kubernetes с поддержкой Azure Arc (предварительная версия).
Это важно
Сервис Event Grid в Kubernetes с поддержкой Azure Arc сейчас находится в общедоступной версии предварительного просмотра. Эта предварительная версия предоставляется без соглашения об уровне обслуживания и не рекомендована для использования в производственной среде. Некоторые функции могут не поддерживаться или их возможности могут быть ограничены. Для получения дополнительной информации см. Дополнительные условия использования для предварительных версий Microsoft Azure.
События
Событие — это запись данных, которая объявляет факт о работе программной системы. Как правило, событие объявляет изменение состояния из-за сигнала, вызываемого системой или сигналом, наблюдаемым системой. События содержат два типа сведений:
Данные событий представляющие совершение изменения состояния.
Атрибуты контекста , предоставляющие контекстную информацию о возникновении события.
Для фильтрации событий можно использовать как данные событий, так и атрибуты контекста.
Служба "Сетка событий" в Kubernetes поддерживает спецификацию схемы CloudEvents . Ниже приведен пример события, использующего схему CloudEvents. Сетка событий поддерживает событие размером до 1 МБ.
[{
"specVersion": "1.0",
"type" : "orderCreated",
"source": "myCompanyName/us/webCommerceChannel/myOnlineCommerceSiteBrandName",
"id" : "eventId-n",
"time" : "2020-12-25T20:54:07+00:00",
"subject" : "account/acct-123224/order/o-123456",
"dataSchema" : "1.0",
"data" : {
"orderId" : "123",
"orderType" : "PO",
"reference" : "https://www.myCompanyName.com/orders/123"
}
}]
Исходный материал
Исходный атрибут описывает контекст, в котором произошло событие. Источник может быть источником событий. Однако в некоторых случаях существуют производители, создающие и публикующие события. И, эти производители отличаются от источника. Для простоты в этой статье предполагается, что источник является производителем событий.
Каждый источник событий создает события одного или нескольких типов событий. В качестве источника событий приложение определяет набор связанных событий для объявления изменений состояния. Каждое событие имеет общие сведения, такие как источник события, время события и уникальный идентификатор. Каждое событие также содержит определенные сведения, относящиеся только к конкретному типу события. Поддержка события размером до 1 МБ в настоящее время находится в предварительной версии.
Свойства, включенные в событие, см. в схеме CloudEvents.
Publishers
Издатели событий — это приложения или системы, которые отправляют события в Event Grid для последующей доставки подписчикам событий.
Темы
Тема — это форма входного канала, предоставляющая конечную точку, куда издатели отправляют события в Event Grid.
Тема может использоваться для коллекции связанных событий. Вы можете создать раздел для каждой категории связанных событий. В некоторых случаях источник может использоваться для упорядочивания событий в категории, так как источники обычно связаны с набором тесно связанных типов событий ("MyApp.OrderCreated", "MyApp.OderDeleted", "MyApp.OrderRejected" и т. д.).
Рассмотрим приложение, которое отправляет события, связанные с управлением учетными записями пользователей и заказами на обработку. Маловероятно, что подписчик событий заинтересован в просмотре обеих категорий событий. Создайте две настраиваемые темы и позвольте обработчикам событий подписаться на ту, которая их интересует. Для небольших решений, возможно, целесообразнее отправлять все события в один раздел.
Подписчики событий
Подписчики событий — это программные системы, такие как микрослужбы, предоставляющие конечные точки, куда Event Grid доставляет события.
Подписки на события
Подписка на события указывает Event Grid, какие события в теме вас интересуют (фильтрация событий) и куда их отправить (маршрутизация событий). При создании подписки на события вы предоставляете конечную точку для обработки события. Вы можете выбрать события, которые необходимо передать в конечную точку, настроив предложения фильтра в подписке на события.
Обработчики событий
Обработчик событий — это программная система, которая предоставляет конечную точку, в которую отправляются события. Обработчик получает событие и выполняет действия для обработки события. Служба "Сетка событий" поддерживает несколько типов обработчиков. В качестве обработчика вы можете использовать поддерживаемую службу Azure, размещенную на Kubernetes или Azure, или собственное решение, которое предоставляет веб-перехватчик (конечную точку) независимо от места размещения. В зависимости от типа обработчика служба "Сетка событий" применяет различные механизмы, гарантирующие доставку события. Если обработчик событий назначения является веб-перехватчиком HTTP, событие выполняется повторно, пока обработчик не возвращает код состояния 200 – ОК. Дополнительные сведения см. в разделе обработчиков событий.
Аутентификация SAS
Служба "Сетка событий" в Kubernetes обеспечивает проверку подлинности на основе ключей SAS для публикации событий в разделах.
Передача событий
Ивент Грид на Kubernetes предоставляет надежный механизм доставки и повторной попытки. Если Event Grid не может подтвердить, что событие получено конечной точкой обработчика событий, оно повторно доставляет событие. Дополнительные сведения см. в разделе Доставка и повторные попытки доставки сообщений сетки событий.
Публикация событий пакетной обработки
При использовании темы события всегда должны публиковаться в массиве. В сценариях с низкой пропускной способностью массив будет иметь только одно событие. Для случаев использования больших объемов рекомендуется пакетировать несколько событий на публикацию для повышения эффективности. Пакеты могут составлять до 1 МБ. Каждое событие по-прежнему не должно превышать 1 МБ. Для получения дополнительной информации см. раздел Пакетная доставка событий.
Сетка событий в компонентах Kubernetes
Оператор Сетки событий реализует шаблон оператора. Он следит за изменениями состояния ресурсов Сетки событий в результате запросов уровня управления, сделанных серверу API Kubernetes. При наличии запроса, влияющего на состояние любого из ресурсов сетки событий, оператор Сетки событий синхронизирует это состояние с брокером сетки событий.
Брокер сетки событий служит как для операций на уровне управления, так и для операций на уровне данных.
Как служба плоскости управления, она отвечает за приведение состояния Event Grid в требуемое состояние, сообщаемое оператором Event Grid. Например, когда запрос создается для создания нового раздела, он выполняет этот запрос и обновляет метаданные службы.
В качестве службы плоскости управления данными она обрабатывает все запросы на публикацию событий и доставляет события в места назначения, которые настроены в подписках на события.
Дальнейшие действия
Сведения о начале работы см. в статье "Создание разделов и подписок".