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


Настройка высокого уровня доступности для Базы данных Azure для PostgreSQL

В этой статье описывается, как включить или отключить высокий уровень доступности в гибком экземпляре сервера Базы данных Azure для PostgreSQL с помощью портала Azure или Azure CLI. Эта информация применяется независимо от того, используете ли экземпляры в той же зоне или модель развертывания с избыточностью между зонами.

Функция высокой доступности развертывает физически отдельные первичные и резервные реплики. Вы можете подготовить реплики в одной зоне доступности или в разных зонах в зависимости от выбранной модели развертывания. Дополнительные сведения см. в статье о концепциях высокой доступности. Вы можете включить высокий уровень доступности во время или после создания гибкого экземпляра сервера Базы данных Azure для PostgreSQL.

Внимание

В апреле 2024 года мы обновили модель выставления счетов для уровня вычислений версии 5 с серверами с поддержкой высокого уровня доступности. Это изменение правильно отражает расходы, учитывая как первичные, так и резервные серверы. Перед этим изменением с вас неправильно взимали плату только за основной сервер. Если вы используете уровень v5 с серверами с поддержкой высокой доступности, теперь вы увидите, что объём выставленных счетов увеличился вдвое. Это обновление не влияет на уровни версии 4 и 3.

Включение высокой доступности для существующих серверов

  1. На портале Azure выберите гибкий экземпляр сервера Базы данных Azure для PostgreSQL.

  2. В меню слева в разделе "Параметры " выберите "Высокий уровень доступности".

Параметр зональной устойчивости определяет, защищен ли сервер в зонах доступности. У вас есть два варианта:

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

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

  1. Если зональная устойчивость не включена, выберите параметр "Включено ".

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

  2. При выборе параметра "Включено " параметр избыточности зоны применяется по умолчанию для регионов, поддерживающих зоны доступности. Эта конфигурация защищает от зональных сбоев.

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

  3. Если в регионе отсутствует зональная емкость, чтобы обеспечить включение высокого уровня доступности (HA) в предпочитаемом регионе, установите флажок под включенной опцией, чтобы разрешить создание HA в режиме "Same-Zone" для региона. Он автоматически переносит рабочие нагрузки на Zone-Redundant HA, как только появляется поддержка зональной емкости:

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

  4. После настройки параметров нажмите кнопку "Сохранить ", чтобы применить изменения.

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

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

  6. Начинается развертывание. По завершении уведомления показано, что вы успешно включили высокий уровень доступности.

    Снимок экрана: уведомление о завершенном развертывании конфигурации высокой доступности.

Отключение высокой доступности

  1. На портале Azure выберите гибкий экземпляр сервера Базы данных Azure для PostgreSQL.

  2. В меню слева в разделе "Параметры " выберите "Высокий уровень доступности".

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

    Снимок экрана, показывающий панель настройки высокой доступности с уже выбранными параметрами и статусом

  4. Выберите переключатель Отключено, чтобы отключить HA.

    Снимок экрана, показывающий установленный флажок для включения высокой доступности, снят.

  5. Выберите Сохранить, чтобы применить изменения.

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

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

  7. Начинается развертывание. По завершении уведомления показано, что вы успешно отключили высокий уровень доступности.

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

Включение высокой доступности во время развёртывания сервера

  1. На портале Azure во время подготовки нового гибкого экземпляра базы данных Azure для PostgreSQL перейдите в раздел "Критически важный для бизнеса" (высокий уровень доступности). В разделе "Зональная устойчивость" выберите радиокнопку Включено.

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

    • Если зональная емкость недоступна, вы можете выбрать флажок Разрешить резерв в той же зоне при сбое зональной устойчивости в качестве запасного варианта. Этот параметр гарантирует, что HA по-прежнему включена, и Azure автоматически переносится в зональную избыточную HA, когда емкость становится доступной.

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

  2. Выберите определенную зону для основного сервера, установив для зоны доступности любое значение, отличное от параметра No.

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

Запуск принудительного переключения

Выполните следующие шаги, чтобы принудительно переключить основной сервер на резервный сервер в Azure Database for PostgreSQL.

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

Внимание

  • Не выполняйте немедленные обратные отработки отказа. Подождите по крайней мере 15–20 минут между переключениями отказа. Это время ожидания позволяет полностью установить новый резервный сервер.

  • Общее время завершения работы, как сообщается на портале, может превышать фактическое время простоя приложения. Вы должны измерять время простоя с точки зрения приложения.

  1. На портале Azure выберите гибкий экземпляр сервера Базы данных Azure для PostgreSQL с поддержкой высокой доступности.

  2. В меню слева в разделе "Параметры " выберите "Высокий уровень доступности".

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

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

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

  5. Появится уведомление с сообщением о том, что выполняется переключение на резервный сервер.

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

  6. После завершения переключения на сервер ожидания поступает уведомление о завершении.

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

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

Запуск планового переключения

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

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

Внимание

  • Не выполняйте немедленные обратные отработки отказа. Подождите по крайней мере 15–20 минут между переключениями отказа. Это время ожидания позволяет полностью установить новый резервный сервер.

  • Выполняйте запланированные переключения в периоды низкой активности.

  • Общее время завершения работы, как сообщается на портале, может превышать фактическое время простоя приложения. Вы должны измерять время простоя с точки зрения приложения.

  1. На портале Azure выберите гибкий экземпляр сервера Базы данных Azure для PostgreSQL с поддержкой высокой доступности.

  2. В меню слева в разделе "Параметры " выберите "Высокий уровень доступности".

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

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

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

  5. Появится уведомление и будет упомянуто, что резервное переключение в процессе.

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

  6. После завершения переключения на сервер ожидания поступает уведомление о завершении.

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

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

Ограничения и рекомендации

  • Включение или отключение высокой доступности в гибком экземпляре сервера Базы данных Azure для PostgreSQL не изменяет другие параметры, включая конфигурацию сети, параметры брандмауэра, параметры сервера или хранение резервных копий. Включение или отключение высокой доступности — это операция в сети. Это не влияет на подключение и операции приложения.

  • База данных Azure для PostgreSQL поддерживает высокий уровень доступности с обоими репликами, развернутыми в одной зоне. Эта конфигурация доступна во всех поддерживаемых регионах. Однако высокая доступность с резервированием по зонам доступна только в определенных регионах.

  • Уровень с бурстингом не поддерживает высокий уровень доступности. Только уровни общего назначения и оптимизированных для памяти уровней поддерживают высокий уровень доступности.

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

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

Опция восстановления

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

Параметр реплики чтения

  1. Создайте реплику чтения в том же регионе, что и основной сервер.
  2. Повышение уровня реплики чтения, чтобы стать новым первичным сервером.
  3. Чтобы сохранить исходное имя, используйте виртуальные конечные точки или удалите старую основную реплику, а затем создайте и продвиньте новую реплику для чтения.
  4. Для пользователей портала включите зональную устойчивость. Для инструментов разработчика задайте высокий уровень доступности с помощью параметра Zone-Redundant.