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


Виртуальные конечные точки для реплик чтения в База данных Azure для PostgreSQL — гибкий сервер

ОБЛАСТЬ ПРИМЕНЕНИЯ: База данных Azure для PostgreSQL — гибкий сервер

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

Все операции, связанные с виртуальными конечными точками, будь то добавление, редактирование или удаление, выполняются в контексте основного сервера. В портал Azure вы управляете этими конечными точками на странице основного сервера. Аналогичным образом при использовании таких средств, как CLI, REST API или другие служебные программы, команды и действия, целевые сервер-источник для управления конечными точками.

Виртуальные конечные точки предлагают два разных типа точек подключения:

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

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

Примечание.

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

Виртуальные конечные точки и повышение поведения

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

Виртуальная конечная точка Исходный целевой объект Поведение при активации "Повышение уровня до основного сервера" Поведение при активации "Повышение уровня на независимый сервер"
Конечная точка записи Основной Указывает на новый первичный сервер. Остается неизменным.
Конечная точка только для чтения Реплика Указывает на новую реплику (бывшая первичная). Указывает на основной сервер.
Конечная точка только для чтения Основной Не поддерживается. Остается неизменным.

Поведение при активации "Повышение уровня до основного сервера"

  • Конечная точка записи: эта конечная точка обновляется, чтобы указать на новый первичный сервер, отражая переключатель роли.
  • Конечная точка только для чтения
    • Если точка конечной точки только для чтения указывает на реплику: после действия повышения, конечная точка только для чтения будет указывать на новую реплику (бывшая первичная).
    • Если точка конечной точки только для чтения указывает на основную: для правильной работы повышения эффективности повышение роли необходимо направить конечную точку только для чтения на сервер, предназначенный для повышения. Указание на основной объект, в данном случае, не поддерживается и необходимо перенастроить для указания реплики перед повышением уровня.

Поведение при активации "Повышение уровня на независимый сервер и удаление из репликации"

  • Конечная точка записи: эта конечная точка остается неизменной. Он продолжает направлять трафик на сервер, удерживая основную роль.
  • Конечная точка только для чтения
    • Если точка конечной точки только для чтения указывает на реплику: конечная точка только для чтения перенаправляется из реплики, продвигаемой на первичный сервер.
    • Если конечные точки только для чтения указывают на основную: конечная точка только для чтения остается неизменной, продолжая указывать на тот же сервер.

Использование виртуальных конечных точек для согласованного имени узла во время восстановления (PITR) или восстановления моментальных снимков

В этом разделе объясняется, как использовать виртуальные конечные точки в База данных Azure для PostgreSQL — гибкий сервер для поддержания согласованного имени узла во время восстановления (PITR) или восстановления моментальных снимков, гарантируя, что строка подключения приложения остаются неизменными. Выполните следующие действия:

  1. Добавьте виртуальную конечную точку на основной сервер:

    • Перейдите к экземпляру основного сервера на портале Azure.
    • Перейдите на вкладку репликации и в разделе "Виртуальные конечные точки" щелкните "Добавить виртуальную конечную точку".
    • Настройте виртуальную конечную точку с согласованным именем узла (например, mydb-virtual-endpoint.postgres.database.azure.com).
    • Сохраните конфигурацию.
    • Обновите приложение, чтобы использовать эту виртуальную конечную точку в строка подключения.
  2. Выполните восстановление с точки во времени (PITR) или восстановление моментального снимка:

    • Инициирование восстановления:
      • Перейдите в раздел "Резервные копии" основного сервера.
      • Выберите соответствующий параметр восстановления (PITR или snapshot) и укажите нужную точку во времени.
    • Обновление виртуальной конечной точки:
      • После создания нового экземпляра вернитесь на вкладку репликации старого сервера-источника.
      • Удалите виртуальную конечную точку с исходного сервера-источника. Старый первичный должен находиться в succeeded состоянии, чтобы удалить виртуальную конечную точку
      • Добавьте ту же виртуальную конечную точку на созданный сервер.
  3. Проверка.

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