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


Доставка событий в Центры событий Azure с помощью разделов пространства имен — портал Azure

В этой статье приводятся пошаговые инструкции по публикации событий для Сетка событий Azure в формате JSON CloudEvents и доставке этих событий с помощью модели принудительной доставки.

Чтобы быть конкретным, вы используете портал Azure и Curl для публикации событий в разделе пространства имен в сетке событий и отправки этих событий из подписки на событие в назначение обработчика Центров событий. Дополнительные сведения о модели доставки push-уведомлений см. в обзоре доставки push-уведомлений.

Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.

Создание пространства имен сетки событий

Пространство имен Сетки событий предоставляет определяемую пользователем конечную точку, в которую вы публикуете события. В следующем примере создается пространство имен в группе ресурсов с помощью Bash в Azure Cloud Shell. Имя пространства имен должно быть уникальным, так как это часть записи системы доменных имен (DNS).

  1. Перейдите на портал Azure.

  2. В строке поиска в разделе введите Event Grid Namespacesи выберите Event Grid Namespaces из результатов.

    Снимок экрана: панель поиска в портал Azure.

  3. На странице пространств имен сетки событий нажмите кнопку +Создать на панели команд. Снимок экрана: страница пространства имен сетки событий с кнопкой

  4. На странице "Создание пространства имен" выполните следующие действия.

    1. Выберите подписку Azure, в которой нужно создать пространство имен.
    2. Создайте новую группу ресурсов, выбрав "Создать" или выбрав существующую группу ресурсов.
    3. Введите имя для пространства имен.
    4. Выберите расположение, в котором нужно создать группу ресурсов.
    5. Нажмите Проверка и создание.
      Снимок экрана: страница
    6. На странице Отзыв и создание выберите Создать.
  5. На странице развертывания выберите "Перейти к ресурсу" после успешного развертывания.

Получение ключа доступа

  1. На странице пространства имен сетки событий выберите клавиши Access в меню слева.
  2. Нажмите кнопку копирования рядом с ключом доступа. Снимок экрана: страница пространства имен сетки событий с выбранной вкладкой
  3. Сохраните ключ доступа где-то. Он понадобится позже при работе с кратким руководством.

Включение управляемого удостоверения для пространства имен Сетки событий

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

  1. Включите управляемое удостоверение, назначаемое системой или назначаемое пользователем: пространства имен. Перейдите к следующему разделу, чтобы узнать, как включить управляемое удостоверение с помощью Azure CLI.
  2. Добавьте удостоверение в роль отправителя данных Центры событий Azure в пространстве имен Центров событий, перейдите к следующему разделу, чтобы узнать, как добавить назначение роли.
  3. Настройте подписку на события, использующую центр событий в качестве конечной точки для управляемого удостоверения, назначаемого пользователем или системой.

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

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

  2. На странице "Удостоверение" выберите "Вкл." для состояния.

  3. Выберите Сохранить на панели команд.

    Снимок экрана: вкладка

Создание раздела в пространстве имен

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

  1. Выберите разделы в меню слева.
  2. На странице "Темы" выберите "+ Раздел" на панели команд. Снимок экрана, на котором показана страница
  3. На странице "Создание раздела" выполните следующие действия:
    1. Введите имя раздела.
    2. Нажмите кнопку создания.
      Снимок экрана: страница

Создание пространства имен в Центрах событий Azure

Создайте ресурс Центров событий, используемый в качестве назначения обработчика для подписки на отправку в разделе пространства имен. Выполните эти действия на отдельной вкладке браузера или в отдельном окне. Перейдите к портал Azure и войдите, используя те же учетные данные, которые вы использовали раньше и ту же подписку Azure.

  1. Введите центры событий в строке поиска и выберите Центры событий.
  2. На странице Центров событий нажмите кнопку +Создать на панели команд.
  3. На странице "Создание пространства имен" выполните следующие действия.
    1. Выберите подписку Azure, используемую для создания пространства имен Сетки событий.
    2. Выберите группу ресурсов, которую вы использовали ранее.
    3. Введите имя пространства имен Центров событий.
    4. Выберите то же расположение , которое использовалось для пространства имен Сетки событий.
    5. Выберите "Базовый" для ценовой категории.
    6. Выберите Review + create (Просмотреть и создать). Снимок экрана: страница
    7. На странице Отзыв выберите Создать.
  4. На странице развертывания выберите "Перейти к ресурсу" после успешного развертывания.

Добавление управляемого удостоверения сетки событий в роль отправителя данных Центров событий

  1. На странице пространства имен Центров событий выберите элемент управления доступом (IAM) в меню слева.
  2. Выберите "Добавить> -Добавить назначение ролей" на панели команд. Снимок экрана: страница пространства имен Центров событий с выбранной вкладкой управления доступом.
  3. На странице "Добавление назначения ролей" найдите отправителя данных Центров событий и выберите Центры событий Azure Отправителя данных из списка ролей, а затем нажмите кнопку "Далее". Снимок экрана: страница
  4. На вкладке "Члены" выберите управляемое удостоверение для типа, а затем нажмите кнопку +Выбрать участников. Снимок экрана: вкладка
  5. На странице "Выбор управляемых удостоверений" выберите пространство имен сетки событий для управляемого удостоверения, а затем выберите управляемое удостоверение с тем же именем, что и пространство имен Сетки событий. Снимок экрана: страница выбора управляемых удостоверений.
  6. На странице "Выбор управляемых удостоверений" нажмите кнопку "Выбрать". Снимок экрана: выбранное управляемое удостоверение.
  7. Теперь на странице "Добавление назначения ролей" выберите "Рецензирование и назначение". Снимок экрана: страница добавления назначения ролей с выбранным управляемым удостоверением.
  8. На странице "Рецензирование и назначение" выберите "Рецензирование и назначение".

Создание концентратора событий

  1. На странице пространства имен Центров событий выберите Центры событий в меню слева.
  2. На странице "Центры событий" выберите +Концентратор событий на панели команд. Снимок экрана: страница
  3. На странице "Создание концентратора событий" введите имя концентратора событий и нажмите кнопку "Проверить и создать". Снимок экрана: страница
  4. На странице Отзыв и создание выберите Создать.

Создание подписки на событие

Создайте подписку на событие, задав режим доставки для push-отправки, которая поддерживает отправку.

  1. Перейдите на вкладку или окно со страницей пространства имен сетки событий, открытой на вкладке или окне со страницей пространства имен Центров событий.
  2. На странице пространства имен сетки событий выберите разделы в меню слева.
  3. На странице разделов выберите тему, созданную на предыдущем шаге.
  4. Выберите +Подписка на панели команд. Снимок экрана: страница раздела с выбранной кнопкой
  5. На странице "Создание подписки на события" выполните следующие действия.
    1. На вкладке "Базовый " введите имя подписки на событие.
    2. Выберите "Отправить" для режима доставки событий.
    3. Убедитесь, что концентратор событий выбран для типа конечной точки.
    4. Выберите " Настроить конечную точку". Снимок экрана, на котором показана страница
    5. На странице "Выбор концентратора событий" выполните следующие действия.
      1. Выберите подписку Azure и группу ресурсов с концентратором событий.
      2. Выберите пространство имен Центров событий и концентратор событий.
      3. Затем нажмите кнопку "Подтвердить выбор". Снимок экрана: страница
    6. Вернитесь на страницу "Создание подписки" , выберите "Назначенная системой" для типа управляемого удостоверения. Снимок экрана: страница
    7. Нажмите кнопку создания.

Отправка событий в раздел

Теперь отправьте пример события в раздел пространства имен, выполнив действия, описанные в этом разделе.

  1. Запустите Cloud Shell в портал Azure. Переключитесь на Bash.

    Снимок экрана: Cloud Shell.

  2. В Cloud Shell выполните следующую команду, чтобы объявить переменную для хранения ключа доступа для пространства имен. Вы отметили ключ доступа ранее в этом кратком руководстве.

    key=ACCESSKEY
    
  3. Объявите переменную для хранения URI операции публикации. Замените NAMESPACENAME именем пространства имен Сетки событий и TOPICNAME именем раздела.

    publish_operation_uri=https://NAMESPACENAME.eastus-1.eventgrid.azure.net/topics/TOPICNAME:publish?api-version=2023-06-01-preview
    
  4. Создайте пример события, соответствующего требованиям CloudEvents :

    event=' { "specversion": "1.0", "id": "'"$RANDOM"'", "type": "com.yourcompany.order.ordercreatedV2", "source" : "/mycontext", "subject": "orders/O-234595", "time": "'`date +%Y-%m-%dT%H:%M:%SZ`'", "datacontenttype" : "application/json", "data":{ "orderId": "O-234595", "url": "https://yourcompany.com/orders/o-234595"}} '
    

    Элемент data — полезные данные события. Любое значение JSON с правильным форматом может быть в этом поле. Дополнительные сведения о свойствах (также известных как атрибуты контекста), которые могут идти в событии, см . в спецификациях CloudEvents .

  5. Используйте CURL для отправки события в раздел. CURL — это служебная программа, которая отправляет HTTP-запросы.

    curl -X POST -H "Content-Type: application/cloudevents+json" -H "Authorization:SharedAccessKey $key" -d "$event" $publish_operation_uri
    

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

    Снимок экрана: страница концентратора событий с диаграммой, показывающей, что событие получено.

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

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