По умолчанию Edge устанавливает все узлы Postgres в главном режиме. Однако в производственных системах с несколькими узлами Postgres вы настраиваете их на использование репликации главный-резервный, чтобы в случае сбоя главного узла резервный узел мог продолжать обслуживать трафик.
Если главный узел когда-либо выйдет из строя, вы можете повысить статус резервного сервера до главного. Дополнительную информацию см. в разделе «Обработка аварийного переключения базы данных PostgreSQL» .
Настройте репликацию Master-Standby во время установки.
Вы можете настроить репликацию главный-резервный во время установки, включив следующие свойства в файл конфигурации для двух узлов Postgres:
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
Программа установки автоматически настраивает два узла Postgres для работы в режиме «главный-резервный» с репликацией.
Настройка репликации Master-Standby после установки
Репликацию главный-резервный можно настроить после установки, выполнив следующую процедуру:
- Определите, какой узел Postgre будет главным, а какой резервным сервером.
- На главном узле отредактируйте файл конфигурации, чтобы установить:
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
- Включите репликацию на новом мастере:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
- На резервном узле отредактируйте файл конфигурации, чтобы установить:
PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofNewStandby
- Остановите резервный узел:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- На резервном узле удалите все существующие данные Postgres:
rm -rf /opt/apigee/data/apigee-postgresql/
- Настройте резервный узел:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
Тестирование репликации Master-Standby
По завершении репликации проверьте состояние репликации, выполнив следующие сценарии на обоих серверах. Система должна отображать одинаковые результаты на обоих серверах, чтобы гарантировать успешную репликацию:
- На главном узле запустите:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
Убедитесь, что он говорит, что он является мастером.
- На резервном узле:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
Убедитесь, что он говорит, что это режим ожидания.