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


Включение избыточности между зонами для кэша Azure для Redis

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

Примечание.

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

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

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

Создание кэша

Чтобы создать кэш, выполните следующие действия.

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

  2. На странице Создание выберите Базы данных, а затем Кэш Azure для Redis.

    Выберите

  3. На странице основных сведений настройте параметры для нового кэша.

    Параметр Предлагаемое значение Description
    Подписка Выберите свою подписку. В этой подписке будет создан новый экземпляр кэша Redis для Azure.
    Группа ресурсов Выберите группу ресурсов или щелкните Создать и введите новое имя группы ресурсов. Имя группы ресурсов, в которой будут созданы кэш и другие ресурсы. Поместив все ресурсы приложения в одну группу ресурсов, вы сможете легко управлять ими и/или удалить их вместе.
    DNS-имя Введите глобально уникальное имя. Имя кэша должно быть строкой длиной от 1 до 63 символов и содержать только цифры, буквы и дефисы. Имя должно начинаться и заканчиваться цифрой или буквой и не может содержать более одного дефиса подряд. Именем узла для экземпляра кэша будет <DNS-имя>.redis.cache.windows.net.
    Местонахождение Выберите расположение. Выберите регион рядом с другими службами, используюющими кэш.
    Тип кэша Выберите кэш уровня "Премиум" или "Корпоративный". Ценовая категория определяет размер, производительность и функции, доступные для кэша. Дополнительные сведения см. в обзоре предложения "Кэш Redis для Azure".
  4. Кэши уровня "Стандартный " всегда создаются как избыточные между зонами с помощью автоматического зонального выделения в регионах, поддерживающих зоны доступности. Снимок экрана: вкладка

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

    1. Использование автоматического зонального выделения:
      • Автоматически выделять зоны — это параметр по умолчанию, выбранный для Зоны доступности. Снимок экрана: вкладка
    2. Использование зонального выделения userDefined:
      • Для кэшей уровня "Премиум " параметр зон доступности можно изменить пользователем, с помощью которого они могут выбирать незональные или вручную выбирать зоны для кэша.
    • Выбор NoZones: Снимок экрана: вкладка
    • При выборе зон вручную количество зон доступности всегда должно быть меньше или равно общему количеству узлов для кэша: Снимок экрана: зоны доступности, равные одному и числу реплик, равным трем.
  6. Для кэша уровня Enterprise выберите "Дополнительно " в меню "Ресурс". Для избыточности зоны выберите "Избыточность зоны" (рекомендуется).

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

  7. Настройте параметры для кластеризации и (или) сохраняемости RDB.

    Примечание.

    Избыточность зоны не поддерживает сохраняемость только для добавления (AOF) с несколькими репликами (более одной реплики).

  8. Нажмите кнопку создания.

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

Автоматическое зональное выделение

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

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

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

Спецификация REST API для различных типов зонального выделения можно найти по адресу Create — ZonalAllocationPolicy.

Если свойство ZonalAllocationPolicy не передается в запросе, Azure назначает его значение для кэшей на основе зональной поддержки и емкости региона.

Поддерживаемые значения для свойства ZonalAllocationPolicy :

  1. Автоматически

Это значение можно передать для автоматического выделения зон Azure в кэш.

В регионах, поддерживающих зоны, он выбирается в качестве параметра по умолчанию для кэшей, начиная с версии API 2024-11-01 , если ZonalAllocationPolicy он не передается в запросе.

  1. UserDefined

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

  1. NoZones

Пользователям разрешено передавать это значение только для кэшей класса Premium. Это единственное значение, поддерживаемое в регионах, которые не поддерживают зоны.

  • Это значение не может передаваться пользователем в запросе на кэши уровня "Стандартный", так как они не могут явно выбирать незональные стандартные кэши.

Он выбирается в качестве параметра по умолчанию для кэшей, если ZonalAllocationPolicy не передается в запросе в случаях:

  • Регионы, которые не поддерживают зоны (независимо от используемой версии API).
  • Все регионы (независимо от зональной поддержки), если используется версия API меньше 2024-11-01.

Внимание

Автоматическое зональное выделение невозможно изменить после включения кэша.

Внимание

  • Начиная с версии API 2024-11-01, автоматическое зональное выделение выбирается в качестве параметра по умолчанию для кэшей уровня "Премиум", "Стандартный". В редких случаях, когда достаточная зональная емкость недоступна для по крайней мере выделения двух зон, и пользователь не передает ZonalAllocationPolicy запрос, Azure создаст незональный кэш, который пользователь может проверить, проверив ZonalAllocationPolicy свойство в ответе.
    • Поэтому рекомендуется не передавать ZonalAllocationPolicy в текст запроса при создании кэша, так как это позволит Azure выбрать оптимальный вариант для автоматического использования, NoZones для кэша на основе зональной поддержки и емкости региона. В противном случае пользователи могут передать ZonalAllocationPolicy , если они хотят явно использовать определенную зональную политику выделения.

Внимание

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

Часто задаваемые вопросы об избыточности между зонами

Почему не удается включить избыточность между зонами при создании кэша уровня "Премиум"?

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

Почему невозможно выбрать все три зоны во время создания кэша?

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

Можно ли обновить существующий кэш уровня "Стандартный" или "Премиум", чтобы использовать избыточность зоны?

  • Да, обновление существующего кэша уровня "Стандартный" или "Премиум" для использования избыточности зоны поддерживается на месте (предварительная версия). Пользователи могут включить его, перейдя к дополнительным параметрам в меню "Ресурс" и установив флажок "Выделить зоны", а затем нажмите кнопку "Сохранить". Вы не можете отключить избыточность зоны после его включения.

  • Дополнительные сведения см. в статье "Миграция экземпляра Кэш Azure для Redis в поддержку зоны доступности"

  • Это также можно сделать, передав ZonalAllocationPolicy как Automaticв тексте запроса при обновлении кэша. Дополнительные сведения о процессе обновления с помощью REST API см. в разделе Update — ZonalAllocationPolicy.

    • Обновление ZonalAllocationPolicy до любого другого значения, чем Automaticне поддерживается.

    Внимание

    Автоматическое зональное выделение невозможно изменить после включения кэша.

    Внимание

    Включение автоматического зонального выделения для существующего кэша (созданного с другим зональным выделением) в настоящее время не поддерживается для геореплицированных кэшей или кэшей с внедрением виртуальной сети.

Сколько стоит реплицировать данные между зонами доступности Azure?

Если кэш использует избыточность зоны, настроенную с несколькими Зоны доступности, данные реплицируются из основного узла кэша в одной зоне на другие узлы в другой зоне. Плата за передачу данных — это стоимость сетевого исходящего трафика, передаваемого через выбранные зоны доступности. Дополнительные сведения см. на странице Сведения о стоимости пропускной способности.

Next Steps

Узнайте больше о функциях Кэша Azure для Redis.