Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это важно
Кэш Azure для Redis объявил о графике вывода из эксплуатации для всех SKU. Мы рекомендуем переместить существующие экземпляры кэша для Redis в Azure Managed Redis как можно скорее.
Дополнительные сведения о выходе на пенсию:
Сетка событий Azure — это служба обработки событий для облака. В этом кратком руководстве показано, как с помощью Azure CLI подписаться на события Кэша Azure для Redis, активировать такое событие и просмотреть полученные результаты.
Как правило, события отправляются на конечную точку, которая обрабатывает данные событий и выполняет соответствующие действия. Для простоты в этом кратком руководстве описана отправка событий непосредственно в веб-приложение, которое будет собирать и отображать эти сообщения. Выполнив описанные в этом кратком руководстве действия, вы увидите, что данные событий отправлены в веб-приложение.
Если у вас нет аккаунта Azure, создайте бесплатную учетную запись перед началом.
Azure Cloud Shell
В Azure есть Azure Cloud Shell, интерактивная оболочка среды, с которой можно работать в браузере. Для работы со службами Azure можно использовать Bash или PowerShell с Cloud Shell. Для запуска кода из этой статьи можно использовать предварительно установленные команды Cloud Shell. Ничего дополнительного в локальной среде устанавливать не нужно.
Начало работы с Azure Cloud Shell
| Вариант | Пример и ссылка |
|---|---|
| Нажмите кнопку Попробовать в правом верхнем углу блока кода или команд. При нажатии кнопки Попробовать код или команда не копируется в Cloud Shell автоматически. |
|
| Чтобы открыть Cloud Shell в браузере, перейдите по адресу https://shell.azure.com или нажмите кнопку Запуск Cloud Shell. |
|
| Нажмите кнопку Cloud Shell в строке меню в правом верхнем углу окна портала Azure. |
|
Чтобы использовать Azure Cloud Shell, выполните следующие действия:
Запустите Cloud Shell.
Нажмите кнопку Копировать в блоке кода (или блоке команд), чтобы скопировать код или команду.
Вставьте код или команду в окно сеанса Cloud Shell, нажав клавиши CTRL+SHIFT+V в Windows и Linux или CMD+SHIFT+V в macOS.
Нажмите клавишу ВВОД, чтобы запустить код или команду.
Если вы решили установить и использовать интерфейс командной строки локально, для работы с этим кратким руководством вам понадобится Azure CLI последней версии, то есть 2.0.70 или более поздней. Чтобы узнать версию, выполните команду az --version. Если вам необходимо выполнить установку или обновление, см. статью Установка Azure CLI 2.0.
Если вы не используете Cloud Shell, сначала выполните вход с помощью az login.
Создание или изменение группы ресурсов
Разделы Сетки событий развертываются как отдельные ресурсы Azure и должны быть подготовлены в группе ресурсов Azure. Группа ресурсов Azure — это логическая коллекция, в которой выполняется развертывание и администрирование ресурсов Azure.
Создайте группу ресурсов с помощью команды az group create.
В следующем примере создается группа ресурсов с именем <resource_group_name> в расположении westcentralus. Замените <resource_group_name> уникальным именем для группы ресурсов.
az group create --name <resource_group_name> --location westcentralus
Создание экземпляра кэша
#/bin/bash
# Create a Basic C0 (256 MB) Azure Cache for Redis instance
az redis create --name <cache_name> --resource-group <resource_group_name> --location westcentralus --sku Basic --vm-size C0
Создание конечной точки сообщения
Перед подпиской на раздел необходимо создать конечную точку для сообщения о событии. Обычно конечная точка выполняет действия на основе данных событий. Чтобы упростить работу с этим руководством, разверните готовое веб-приложение, которое отображает сообщения о событиях. Развернутое решение содержит план службы приложений, веб-приложение службы приложений и исходный код из GitHub.
Замените <your-site-name> уникальным именем для вашего веб-приложения. Имя веб-приложения должно быть уникальным, так как оно включается в запись DNS.
sitename=<your-site-name>
az deployment group create \
--resource-group <resource_group_name> \
--template-uri "https://raw.githubusercontent.com/Azure-Samples/azure-event-grid-viewer/main/azuredeploy.json" \
--parameters siteName=$sitename hostingPlanName=viewerhost
Завершение развертывания может занять несколько минут. Когда развертывание успешно завершится, откройте веб-приложение и убедитесь, что оно работает. Откройте браузер и перейдите по адресу https://<your-site-name>.azurewebsites.net.
Вы увидите сайт, на котором сейчас не отображаются никакие сообщения.
Включение поставщика ресурсов службы "Сетка событий"
Если это первый раз, когда вы используете Event Grid в подписке Azure, может потребоваться зарегистрировать поставщика ресурсов Event Grid. Выполните следующую команду для регистрации поставщика:
az provider register --namespace Microsoft.EventGridРегистрация может занять некоторое время. Чтобы проверить состояние, выполните следующую команду:
az provider show --namespace Microsoft.EventGrid --query "registrationState"Когда состояние
registrationStateизменится наRegistered, вы сможете продолжить работу.
Подписка на экземпляр Кэша Azure для Redis
На этом шаге вы создадите подписку на раздел, чтобы Сетке событий было известно, какие события вы намерены отслеживать и куда их следует отправлять. В следующем примере создается подписка на экземпляр Кэша Azure для Redis, который вы создали ранее, и передается URL-адрес веб-приложения в качестве конечной точки для уведомления о событиях. Замените <event_subscription_name> именем подписки на событие. Для <resource_group_name> и <cache_name> используйте созданные ранее значения.
Конечная точка веб-приложения должна содержать суффикс /api/updates/.
cacheId=$(az redis show --name <cache_name> --resource-group <resource_group_name> --query id --subscription <subscription_id> --output tsv)
endpoint=https://$sitename.azurewebsites.net/api/updates
az eventgrid event-subscription create \
--source-resource-id $cacheId \
--name <event_subscription_name> \
--endpoint $endpoint
Теперь снова откройте веб-приложение и убедитесь, что оно успешно получило отправленное событие подтверждения подписки. Щелкните значок с изображением глаза, чтобы развернуть данные события. Сетка событий отправляет событие подтверждения, чтобы конечная точка могла подтвердить, что она готова получать данные события. Веб-приложение содержит код для проверки подписки.
Активация события из Кэша Azure для Redis
Теперь необходимо активировать событие, чтобы увидеть, как Сетка событий Azure распределяет сообщение к вашей конечной точке. Давайте экспортируем данные, которые хранятся в экземпляре Кэша Azure для Redis. Здесь нам снова потребуются значения {cache_name} и {resource_group_name}, созданные ранее.
az redis export --ids '/subscriptions/{subscription_id}/resourceGroups/{resource_group_name}/providers/Microsoft.Cache/Redis/{cache_name}' \
--prefix '<prefix_for_exported_files>' \
--container '<SAS_url>'
Вы активировали событие, а служба "Сетка событий" отправила сообщение в конечную точку, настроенную вами при оформлении подписки. Откройте веб-приложение и просмотрите в нем отправленные события.
[{
"id": "e1ceb52d-575c-4ce4-8056-115dec723cff",
"eventType": "Microsoft.Cache.ExportRDBCompleted",
"topic": "/subscriptions/{subscription_id}/resourceGroups/{resource_group_name}/providers/Microsoft.Cache/Redis/{cache_name}",
"data": {
"name": "ExportRDBCompleted",
"timestamp": "2020-12-10T18:07:54.4937063+00:00",
"status": "Succeeded"
},
"subject": "ExportRDBCompleted",
"dataversion": "1.0",
"metadataVersion": "1",
"eventTime": "2020-12-10T18:07:54.4937063+00:00"
}]
Очистка ресурсов
Если вы планируете продолжать работу с этим экземпляром Кэша Azure для Redis и с этой подпиской на события, не удаляйте ресурсы, созданные при работе с этим кратким руководством. Если вы не планируете продолжать работу, удалите все созданные в этом кратком руководстве ресурсы.
Замените <resource_group_name> именем группы ресурсов, созданной ранее.
az group delete --name <resource_group_name>
Следующие шаги
Теперь, когда вы знаете, как создавать разделы и подписки на события, ознакомьтесь с дополнительными сведениями о событиях Кэша Azure для Redis и возможностях службы "Сетка событий".
- Реагирование на события Кэша Azure для Redis
- An introduction to Azure Event Grid (Общие сведения о службе "Сетка событий Azure")