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


Переход из Кэш Azure для Redis в Управляемый Redis Azure (предварительная версия)

Из этой статьи вы узнаете, как перейти из Кэш Azure для Redis экземпляра в экземпляр Управляемого Redis (предварительная версия) Azure.

Внимание

Управляемый Redis Azure в настоящее время находится в предварительной версии. Юридические условия, применимые к функциям Azure, которые находятся в состоянии бета-версии, предварительной версии или иным образом еще не выпущены в общедоступной версии, см. на странице Дополнительные условия использования предварительных версий в Microsoft Azure.

Необходимые компоненты

Сравнение функций между Кэш Azure для Redis и Управляемым Redis в Azure (предварительная версия)

Описание функции Basic Standard Premium Balanced (предварительная версия) Оптимизировано для памяти (предварительная версия) Оптимизировано для вычислений (предварительная версия)
Availability Н/П 99,9 % 99,9 % Неприменимо Н/Д Неприменимо
Шифрование данных при передаче Да Да Да Да Да Да
Сетевая изоляция Да Да Да Да Да Да
Увеличение и увеличение масштаба Да Да Да Да Да Да
Масштабирование вниз/в Да Да Да No No No
Кластеризация OSS No No Да Да Да Да
Сохраняемость данных No No Да Да Да Да
Избыточность между зонами No Да (предварительная версия) Да Да Да Да
Георепликация No No Да (пассивный) Да (активный) Да (активный) Да (активный)
Журналы аудита подключения No No Да Да(на основе событий) Да(на основе событий) Да(на основе событий)
Модули Redis No No No Да Да Да
Импорт и экспорт No No Да Да Да Да
Перезагрузка Да Да Да No No No
Запланированные обновления Да Да Да No No No
Проверка подлинности идентификатора Microsoft Entra Да Да Да Да Да Да
RBAC идентификатора Microsoft Entra Да Да Да No No No
Уведомление о пространстве ключей Да Да Да No No No
Высокий уровень доступности Н/П Нет No Да Да Да

Ниже приведены некоторые другие различия, которые не рассматриваются предыдущим сопоставлением. Рассмотрите следующие изменения клиентского приложения:

Описание функции Кэш Azure для Redis Управляемый Redis Azure (предварительная версия)
DNS-суффикс (только для облака PROD) .redis.cache.windows.net <region>.redis.azure.net
ПОРТ TLS 6380 10000
Порт, отличный от TLS 6379 Не поддерживается
Порты TLS для отдельных узлов 130XX 85xx
Отдельный порт, отличный от TLS 150XX Не поддерживается
Поддержка кластеризации Режим кластеризации OSS Режимы кластера OSS и Enterprise
Неподдерживаемые команды Неподдерживаемые команды Команды с несколькими ключами
Доступность в регионах Все регионы Azure * См. список регионов после этого раздела.
Версия Redis 6 7,4
Поддерживаемые версии протокола TLS 1.2 и 1.3 1.2 и 1.3

Региональная доступность для Управляемого Redis в Azure

Управляемый Redis Azure поддерживается в следующих регионах. Этот список регулярно обновляется. В конечном итоге Управляемый Redis azure будет поддерживать все регионы в Azure. Обратитесь к контакту по продажам, чтобы привлечь запросы к регионам, где вам нужна поддержка.

Северная и Южная Америка Европа Ближний Восток Африка Азиатско-Тихоокеанский регион
Brazil South Центрально-Западная Германия Восточная Азия
центрально-западная часть США южная часть Соединенного Королевства Восточная Австралия
Центрально-северная часть США Западная Европа Восточная Япония
Западная часть США — 3 Центральная Швеция Юго-Восточная Азия
Восточная часть США 2 Центральная Индия
Центрально-южная часть США
западная часть США 2
Восточная часть США
Западная часть США
Центральная часть США
Центральная Канада

Перенос экземпляра Кэш Azure для Redis в Управляемый Redis Azure

Примечание.

Не забудьте обновить остальную часть приложения и связанные ресурсы Azure, чтобы использовать кэш.

Выберите кэш, который нужно переместить из портал Azure

Кэш Azure для Redis Базовый / Стандартный / Премиум некластеризованный

Примечание.

Использование параметра "Высокий уровень доступности" управляемого Redis azure для миграции базовых номеров SKU

Кэш Azure для Redis Управляемый Redis в Azure Дополнительная память (%)
Базовый или стандартный — C0 Balanced — B0 50
Базовый или стандартный — C1 Balanced — B1 0
Базовый и стандартный — C2 Balanced — B3 17
Базовый или стандартный — C3 Balanced — B5 0
Базовый или стандартный — C4 Оптимизировано для памяти — M10* -8
Базовый или стандартный — C4 Оптимизировано для памяти — M20** 46
Базовый или стандартный — C5 Оптимизировано для памяти — M20* -8
Базовый или стандартный — C5 Оптимизировано для памяти — M50** 57
Базовый или стандартный — C6 Оптимизировано для памяти — M50 12
Премиум - P1 Balanced — B5 0
Премиум - P2 Balanced - B10* -8
Премиум - P2 Balanced - B20** 46
Премиум - P3 Balanced — B20* -8
Премиум - P3 Balanced - B50** 57
Премиум - P4 Balanced — B50 12
Премиум - P5 Balanced — B100 0
  • *Этот параметр предназначен для повышения эффективности затрат. Убедитесь, что пик общего объема используемой памяти за прошлый месяц меньше, чем рекомендуемая память Управляемого Redis Azure, чтобы выбрать этот параметр.
  • ** Этот параметр предназначен для потребления большого объема памяти.

кластеризованный Кэш Azure для Redis Premium

  • Для сегментированного кластера выберите уровень оптимизированной для памяти, имеющий эквивалентную общую память.
  • Для кластеров с несколькими репликами чтения выберите уровень "Оптимизировано для вычислений" с эквивалентной общей памятью в качестве основной реплики.

Варианты переноса

Клиентские приложения должны использовать экземпляр Управляемого Redis Azure с различными режимами кластеризации и конечными точками. Кэш Azure для Redis и Управляемый Redis Azure (предварительная версия) совместимы, поэтому для большинства сценариев не требуются изменения кода приложения, отличные от конфигураций подключений.

Узнайте больше здесь:

Параметры миграции Кэш Azure для Redis в Управляемый Redis Azure

Вариант Достоинства Недостатки
Создание кэша Простейший способ реализации. Необходимо повторно заполнить данные в новом кэше, который может не работать с многими приложениями.
Экспорт и импорт данных через файл RDB Совместимость в целом с любым кэшем Redis. Некоторые данные могут быть потеряны, если они записаны в существующий кэш после создания файла RDB.
Запись данных в два кэша Не приводит к потерям данных и простоям. Непрерывные операции с существующим кэшем. Упрощенное тестирование нового кэша. Требуется два кэша на продолжительный период времени.
Программная миграция данных Полный контроль над перемещением данных. Требуется специальный код.

Создание нового кэша Azure для Redis

Этот подход технически не является миграцией. Если потеря данных не является проблемой, проще всего перейти на уровень Управляемый Redis в Azure, чтобы создать новый экземпляр кэша и подключить приложение к нему. Например, если в качестве кэша с параллельной выборкой записей базы данных используется Redis, можно легко перестроить кэш с нуля. Ниже приведены общие действия для реализации этого варианта.

  1. Создайте экземпляр Управляемого Redis в Azure.
  2. Обновите приложение, чтобы использовать новый экземпляр.
  3. Удалите старый экземпляр Кэш Azure для Redis.

Экспорт данных в RDB-файл и импорт его в Управляемый Redis в Azure

Этот параметр применим только к кэшам уровня "Премиум". Redis с открытым исходным кодом определяет стандартный механизм создания моментального снимка набора данных в памяти кэша и его сохранения в файле. Другой кэш Redis может считывать экспортируемый файл RDB. Кэш Azure для Redis уровня "Премиум" поддерживает экспорт данных из экземпляра кэша с помощью файлов RDB. Файл RDB можно использовать для передачи данных из существующего экземпляра Кэш Azure для Redis в экземпляр Управляемого Redis Azure.

Ниже приведены общие действия для реализации этого варианта.

  1. Создайте новый экземпляр Управляемого Redis Azure, который имеет тот же размер (или больше), что и существующий экземпляр Кэш Azure для Redis.
  2. Экспорт файла RDB из существующего экземпляра Кэш Azure для Redis с помощью этих инструкций по экспорту или командлета экспорта PowerShell
  3. Импорт файла RDB в новый экземпляр Управляемого Redis в Azure с помощью этих инструкций импорта или командлета импорта PowerShell
  4. Обновите приложение, чтобы использовать новый экземпляр Управляемого Redis Azure строка подключения.

Экспорт данных:

az redis export --resource-group <ResourceGroupName> --name <Azure Cache for Redis instance name> --prefix <BlobPrefix> --container <ContainerName> --file-format <FileFormat>

Импорт данных:

az redis import --resource-group <ResourceGroupName> --name <Azure Managed Redis instance name> --files <BlobUris>

Замените ResourceGroupName, CacheName, BlobPrefix, ContainerName и FileFormat определенными значениями. Файл-format_ может быть RDB или AOF.

Запись в два кэша Redis одновременно в течение периода миграции

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

Ниже приведены общие действия для реализации этого варианта.

  1. Создайте новый экземпляр Управляемого Redis Azure, который совпадает с размером (или больше) существующего экземпляра Кэш Azure для Redis.
  2. Измените код приложения, чтобы вести запись как в новый, так и в исходный экземпляр.
  3. Продолжайте считывать данные из исходного экземпляра, пока в новом экземпляре не накопится достаточно данных.
  4. Обновите код приложения, чтобы производить считывание и запись только с использованием нового экземпляра.
  5. Удалите исходный экземпляр.

Миграция программными средствами

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

  • Redis-copy
    • С помощью этого средства с открытым кодом можно копировать данные из одного экземпляра кэша Azure для Redis в другой. Это средство полезно для переноса данных между экземплярами кэша в разных регионах кэширования Azure. Также доступна скомпилированная версия. Исходный код также можно найти в качестве полезного руководства по написанию собственного средства миграции.
  • БУНТ
    • RIOT — это еще один популярный инструмент миграции, проверенный сообществом Redis. Это программа командной строки, предназначенная для получения данных и выхода из Redis.

Примечание.

Это средство официально не поддерживается корпорацией Майкрософт.

Ниже приведены общие действия для реализации этого варианта.

  1. Создайте виртуальную машину в регионе, где находится существующий кэш. Если набор данных большой, выберите относительно мощную виртуальную машину, чтобы сократить время копирования.
  2. Создайте экземпляр Управляемого Redis в Azure.
  3. Освободите новый кэш, чтобы он был пустой. Этот шаг является обязательным, поскольку само средство копирования не перезаписывает существующий ключ в целевом кэше. Важно: не сбрасывайте данные из исходного кэша.
  4. Используйте приложение, например инструмент с открытым исходным кодом, упомянутый ранее, для автоматизации копирования данных из исходного кэша в целевой объект. Помните, что процесс копирования может занять некоторое время в зависимости от размера набора данных.