Edge for Private Cloud 4.19.01
Вы устанавливаете несколько экземпляров Edge SSO для обеспечения высокой доступности в двух сценариях:
- В среде с одним центром обработки данных установите два экземпляра Edge SSO, чтобы создать среду с высокой доступностью. Это означает, что система продолжит работать, если один из модулей Edge SSO выйдет из строя.
- В среде с двумя центрами обработки данных установите Edge SSO в обоих центрах, чтобы система продолжала работать, если один из модулей Edge SSO выйдет из строя.
Установите два модуля Edge SSO в одном центре обработки данных
Вы развертываете два экземпляра Edge SSO на разных узлах в одном центре обработки данных, чтобы обеспечить высокую доступность. В этом случае:
- Оба экземпляра Edge SSO должны быть подключены к одному серверу Postgres. Apigee рекомендует использовать для Edge SSO выделенный сервер Postgres, а не тот, который вы установили вместе с Edge.
- Оба экземпляра Edge SSO должны использовать одну и ту же пару ключей JWT, как указано в свойствах
SSO_JWT_SIGNING_KEY_FILEPATHиSSO_JWT_VERIFICATION_KEY_FILEPATHв файле конфигурации. Подробную информацию о настройке этих свойств можно найти в статье Как установить и настроить Edge SSO. - Перед двумя экземплярами Edge SSO необходимо установить балансировщик нагрузки:
- Балансировщик нагрузки должен поддерживать привязку файлов cookie, созданных приложением, а файл cookie сеанса должен называться
JSESSIONID. - Настройте балансировщик нагрузки для выполнения проверки работоспособности TCP или HTTP в Edge SSO. Для TCP используйте URL Edge SSO:
http_or_https://edge_sso_IP_DNS:9099
Укажите порт, заданный Edge SSO. Порт по умолчанию – 9099.
Для HTTP добавьте
/healthz:http_or_https://edge_sso_IP_DNS:9099/healthz
- Некоторые настройки балансировщика нагрузки зависят от того, включили ли вы HTTPS в Edge SSO. Дополнительную информацию вы найдете в разделах ниже.
- Балансировщик нагрузки должен поддерживать привязку файлов cookie, созданных приложением, а файл cookie сеанса должен называться
Доступ по HTTP к системе единого входа Edge
Если вы используете доступ по HTTP к Edge SSO, настройте балансировщик нагрузки следующим образом:
- Используйте режим HTTP для подключения к Edge SSO.
Прослушивайте тот же порт, что и Edge SSO.
По умолчанию Edge SSO прослушивает HTTP-запросы на порту 9099. При необходимости вы можете использовать
SSO_TOMCAT_PORT, чтобы задать порт SSO для Edge. Если вы использовалиSSO_TOMCAT_PORT, чтобы изменить порт SSO Edge, заданный по умолчанию, убедитесь, что балансировщик нагрузки прослушивает этот порт.
Например, на каждом экземпляре Edge SSO вы задаете порт 9033, добавляя в файл конфигурации следующую строку:
SSO_TOMCAT_PORT=9033
Затем вы настраиваете балансировщик нагрузки на прослушивание порта 9033 и переадресацию запросов к экземпляру Edge SSO на порт 9033. Общедоступный URL Edge SSO в этом сценарии:
http://LB_DNS_NAME:9033
Доступ по HTTPS к системе единого входа Edge
Вы можете настроить экземпляры Edge SSO для использования HTTPS. В этом случае следуйте инструкциям в разделе Как настроить apigee-sso для доступа по HTTPS. В рамках процесса включения HTTPS вы задаете SSO_TOMCAT_PROFILE в файле конфигурации Edge SSO, как показано ниже:
SSO_TOMCAT_PROFILE=SSL_TERMINATION
Вы также можете указать порт, используемый Edge SSO для доступа по протоколу HTTPS:
SSO_TOMCAT_PORT=9443
Затем настройте балансировщик нагрузки, чтобы:
- Для подключения к системе единого входа Edge используйте режим TCP, а не HTTP.
- Прослушивать тот же порт, что и Edge SSO, как определено в
SSO_TOMCAT_PORT.
Затем вы настраиваете балансировщик нагрузки для переадресации запросов к экземпляру Edge SSO на порт 9433. Общедоступный URL Edge SSO в этом сценарии:
https://LB_DNS_NAME:9443
Установка Edge SSO в нескольких центрах обработки данных
В среде с несколькими центрами обработки данных вы устанавливаете экземпляр Edge SSO в каждом центре обработки данных. В этом случае весь трафик будет обрабатываться одним экземпляром Edge SSO. Если этот экземпляр Edge SSO выйдет из строя, вы сможете переключиться на второй.
Прежде чем устанавливать Edge SSO в двух центрах обработки данных, вам необходимо следующее:
IP-адрес или доменное имя основного сервера Postgres.
В среде с несколькими центрами обработки данных обычно устанавливается по одному серверу Postgres в каждом центре обработки данных и настраивается режим репликации Master-Standby. В этом примере центр обработки данных 1 содержит основной сервер Postgres, а центр обработки данных 2 – резервный. Дополнительную информацию можно найти в статье Как настроить репликацию Master-Standby для Postgres.
- Одна запись DNS, указывающая на один экземпляр Edge SSO. Например, вы создаете запись DNS в форме ниже, которая указывает на экземпляр Edge SSO в центре обработки данных 1:
my-sso.domain.com => apigee-sso-dc1-ip-or-lb
- Оба экземпляра Edge SSO должны использовать одну и ту же пару ключей JWT, как указано в свойствах
SSO_JWT_SIGNING_KEY_FILEPATHиSSO_JWT_VERIFICATION_KEY_FILEPATHв файле конфигурации. Подробнее о том, как задать эти свойства, рассказывается в статье Установка и настройка Edge SSO.
При установке Edge SSO в каждом центре обработки данных вы настраиваете оба для использования Postgres Master в центре обработки данных 1:
## Postgres configuration
PG_HOST=IP_or_DNS_of_PG_Master_in_DC1
PG_PORT=5432Вы также настраиваете оба центра обработки данных на использование записи DNS в качестве общедоступного URL:
# Externally accessible URL of Edge SSO SSO_PUBLIC_URL_HOSTNAME=my-sso.domain.com # Default port is 9099. SSO_PUBLIC_URL_PORT=9099
Если Edge SSO в центре обработки данных 1 выйдет из строя, вы сможете переключиться на экземпляр Edge SSO в центре обработки данных 2:
- Преобразуйте резервный сервер Postgres в центре обработки данных 2 в основной, как описано в разделе Обработка отказа базы данных PostgreSQL.
- Обновите запись DNS, чтобы
my-sso.domain.comуказывал на экземпляр Edge SSO в центре обработки данных 2:my-sso.domain.com => apigee-sso-dc2-ip-or-lb
- Обновите файл конфигурации для Edge SSO в центре обработки данных 2, чтобы он указывал на новый главный сервер Postgres в центре обработки данных 2:
## Postgres configuration PG_HOST=IP_or_DNS_of_PG_Master_in_DC2
- Перезапустите Edge SSO в центре обработки данных 2, чтобы обновить его конфигурацию:
/opt/apigee/apigee-service/bin/apigee-service apigee-sso restart