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


Быстрый старт: Создание приложения Python с помощью управляемого Redis в Azure

Из этой статьи вы узнаете, как использовать кэш Управляемого Redis Azure с языком Python и подключиться с помощью идентификатора Microsoft Entra.

Предпосылки

  • Подписка Azure — создайте бесплатную учетную запись.
  • Установка языковой среды Python 3.7+
  • Добавьте эти импорты в ваш проект и в вашу среду разработки
    • redis — Клиент Redis Python
    • redis-entraid — расширение аутентификации Redis Microsoft Entra ID
    • azure-identity — библиотека проверки подлинности Azure

Создайте управляемый экземпляр Redis в Azure

Сначала создайте кэш. Кэш можно создать с помощью Azure Managed Redis или Azure Cache для Redis через портал Azure. В этом кратком руководстве мы используем Управляемый Redis Azure.

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

Чтобы создать кэш с помощью портала, выполните одну из следующих процедур:

При необходимости можно создать кэш с помощью Azure CLI, PowerShell, независимо от того, что вы предпочитаете.

Код для подключения к кэшу Redis

В первой части примера кода задайте подключение к кэшу.

  • Порты для управляемых redis и корпоративных кэшей Azure: 10000
  • Порты для экземпляров кэша Azure для Redis: 6380
import redis
from azure.identity import DefaultAzureCredential
from redis_entraid.cred_provider import create_from_default_azure_credential

redis_host = "<host-url>"
redis_port = 10000  # Managed Redis default port

credential_provider = create_from_default_azure_credential(
    ("https://redis.azure.com/.default",),
)

r = redis.Redis(
    host=redis_host,
    port=redis_port,
    ssl=True,
    decode_responses=True,
    credential_provider=credential_provider
)

Прежде чем запустить этот код, необходимо добавить себя в кэш в качестве пользователя Redis.

Необходимо также авторизовать подключение к Azure из командной строки с помощью командной строки Azure или командной строки разработчика Azure (azd).

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

Результат выглядит следующим образом:

PING: True
GET: Hello from Azure Managed Redis!

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

import redis
from azure.identity import DefaultAzureCredential
from redis_entraid.cred_provider import create_from_default_azure_credential

redis_host = "<host-url>"
redis_port = 10000  # Managed Redis default port

credential_provider = create_from_default_azure_credential(
    ("https://redis.azure.com/.default",),
)

try:
    r = redis.Redis(
        host=redis_host,
        port=redis_port,
        ssl=True,
        decode_responses=True,
        credential_provider=credential_provider,
        socket_timeout=10,
        socket_connect_timeout=10
    )

    print("PING:", r.ping())
    r.set("Message", "Hello from Azure Managed Redis!")
    print("GET:", r.get("Message"))

except Exception as e:
    print(f"Error: {e}")
finally:
    if 'r' in locals():
        r.close()

Очистите ресурсы

Если вы хотите продолжить использовать ресурсы, созданные в этой статье, сохраните группу ресурсов.

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

Это важно

Удаление группы ресурсов — процесс необратимый. Группа ресурсов и все содержащиеся в ней ресурсы удаляются без возможности восстановления. Будьте внимательны, чтобы случайно не удалить не ту группу ресурсов или не те ресурсы. Если вы создали ресурсы внутри существующей группы ресурсов, содержащей ресурсы, которые необходимо сохранить, можно удалить каждый ресурс по отдельности, а не удалить группу ресурсов.

Удаление группы ресурсов

  1. Войдите на портал Azure и выберите группы ресурсов.

  2. Выберите группу ресурсов, которую вы хотите удалить.

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

    Снимок экрана: список групп ресурсов для удаления в рабочей области.

  3. Выберите команду Удалить группу ресурсов.

  4. Вам предлагается подтвердить удаление группы ресурсов. Введите имя группы ресурсов, которую необходимо удалить, и щелкните Удалить.

    Снимок экрана: форма, для которой требуется имя ресурса для подтверждения удаления.

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