Администрирование кэша Redis для Azure

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

Перезагрузка

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

Внимание

Перезагрузка пока недоступна для уровня Enterprise. Перезагрузка доступна для всех других уровней.

Снимок экрана, на котором выбран пункт меню

Выберите узлы, которые нужно перезагрузить, и щелкните Перезагрузить.

Снимок экрана, на котором показаны узлы, которые можно перезагрузить

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

Снимок экрана: параметры сегментов

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

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

  • Главный: при перезагрузке основного узла Кэш Azure для Redis выполняет отработку отказа на узел реплики, а затем повышает его уровень до основного узла. Во время этой отработки отказа может возникать короткий интервал, когда попытки подключения к кэшу заканчиваются сбоем.
  • Реплика: перезагрузка узла реплики, как правило, не оказывает влияния на клиенты кэша.
  • Основной и реплика — при перезагрузке обоих узлов кэша Кэш Azure для Redis пытается корректно перезагрузить оба узла, ожидая завершения одного перед перезагрузкой другого. Как правило, потеря данных не возникает. Однако потеря данных по-прежнему может произойти при непредвиденных событиях обслуживания или сбоях. Перезагрузка кэша многократно увеличивает вероятность потери данных.
  • Узлы кэша уровня "Премиум" с включенной кластеризацией. При перезагрузке одного или нескольких узлов кэша уровня "Премиум" с включенной кластеризацией процедура восстановления выбранных узлов такая же, как при перезагрузке соответствующих узлов некластеризованного кэша.

Часто задаваемые вопросы о перезагрузке

Какой узел следует перезагрузить, чтобы протестировать приложение?

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

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

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

Внимание

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

Сохранятся ли данные кэша после перезагрузки?

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

Если перезагрузить только один из узлов, то, как правило, данные не теряются, но это все же может произойти. Например, если перезагрузить основной узел в то время, когда выполняется запись в кэш, то данные кэша будут утеряны. Данные также могут быть утеряны, если вы перезагрузите один узел, а другой узел в это же время выйдет из строя из-за сбоя. Дополнительные сведения о возможных причинах потери данных см. в статье What happened to my data in Redis? (Что произошло с моими данными в Redis?).

Можно ли перезагрузить кэш с помощью PowerShell, интерфейса командной строки или других средств управления?

Да, инструкции по использованию PowerShell см. в разделе, посвященном перезагрузке кэша Redis для Azure.

Можно ли перезагрузить кэш Enterprise?

№ Перезагрузка пока недоступна для уровня Enterprise. Перезагрузка доступна для уровней "Базовый", "Стандартный" и "Премиум". Параметры, отображаемые в меню ресурсов в разделе Администрирование, зависят от уровня кэша. При использовании кеша на уровне Enterprise не отображается раздел Перезагрузка.

Очистка данных

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

Операция очистки при выполнении в кластеризованном кэше очищает данные от всех сегментов одновременно.

Внимание

Ранее операция очистки была доступна только для гео-реплика кэшей уровня Enterprise. Теперь она доступна на уровнях "Базовый", "Стандартный" и "Премиум".

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

Обновление канала и расписания обновлений

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

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

Внимание

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

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

Внимание

Канал обновления и период обслуживания применяются к обновлениям сервера Redis и обновлениям операционной системы виртуальных машин, в котором размещен кэш. Период обновления и периода обслуживания не применяется к обновлениям ОС узла к узлам, на которых размещены виртуальные машины кэша или другие компоненты сети Azure. В редких случаях, когда кэши размещаются в старых моделях, период обслуживания не будет применяться к обновлениям гостевой ОС. Можно определить, находится ли кэш в старой модели, если DNS-имя кэша разрешается в суффикс cloudapp.net, chinacloudapp.cnusgovcloudapi.net илиcloudapi.de.

В настоящее время невозможно настроить канал обновления или запланированные обновления для кэша уровня Enterprise.

Снимок экрана, показывающий обновления расписания

Чтобы задать период обслуживания, отметьте необходимые дни и укажите час, когда будет начинаться период обслуживания в каждый из дней. Нажмите кнопку ОК. Время периода обслуживания указывается в формате UTC. Его можно настроить с точностью до часа.

Минимальный период обслуживания по умолчанию для обновлений — пять часов. Это значение невозможно настроить на портале Azure, но вы можете сделать это в PowerShell с помощью параметра MaintenanceWindow командлета New-AzRedisCacheScheduleEntry. Дополнительные сведения см. в разделе Можно ли управлять запланированными обновлениями с помощью PowerShell, интерфейса командной строки или других инструментов управления?

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

Когда происходят обновления, если функция планирования обновлений не используется?

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

Какие типы обновлений выполняются в запланированный период обслуживания?

В запланированный период обслуживания выполняются только обновления сервера Redis. Период обслуживания не распространяется на обновления Azure или обновления операционной системы хоста.

Можно ли управлять запланированными обновлениями с помощью PowerShell, интерфейса командной строки или других средств управления?

Да, управлять запланированными обновлениями можно с помощью следующих командлетов PowerShell:

Может ли обновление, обслуживаемое и управляемое функцией "Запланированные обновления", быть выполнено вне окна запланированных обновлений?

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

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