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


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

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

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

Внимание

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

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

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

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

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

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

Если зональная устойчивость включена, но в вашем регионе нет емкости для установки с избыточностью между зонами, под параметром "Включено" появится дополнительный флажок. Выбор этого позволяет создать резервную систему в той же зоне, что и основной. Когда зональная емкость станет доступной, Azure уведомит вас. На этом этапе можно использовать PITR или реплики для чтения для переноса рабочих нагрузок в зонально-избыточную конфигурацию высокой доступности для обеспечения максимальной устойчивости. Дополнительные сведения см. в разделе "Ограничения и рекомендации ".

  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 перейдите в раздел "Критически важный для бизнеса" (высокий уровень доступности). В разделе "Зональная устойчивость" выберите радиокнопку Включено.

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

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

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

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

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

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

  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.