Edge for Private Cloud v4.18.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 необходимо установить балансировщик нагрузки:
- Балансировщик нагрузки должен поддерживать привязку файлов 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, настройте балансировщик нагрузки следующим образом:
- Как подключиться к системе единого входа Edge в режиме HTTP
- Прослушивание на том же порту, что и 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 SSO
Вы можете настроить экземпляры SSO Edge для использования HTTPS. В этом случае следуйте инструкциям в разделе Как настроить apigee-sso для доступа по протоколу HTTPS. В процессе включения HTTPS вы задаете SSO_TOMCAT_PROFILE в файле конфигурации Edge SSO, как показано ниже:
SSO_TOMCAT_PROFILE=SSL_TERMINATION
Вы также можете задать порт, используемый Edge SSO для доступа по протоколу HTTPS:
SSO_TOMCAT_PORT=9443
Если вы используете доступ HTTPS к Edge SSO, настройте балансировщик нагрузки следующим образом:
- Для подключения к Edge SSO используйте режим TCP, а не HTTP.
- Прослушивать тот же порт, что и Edge SSO, как определено в
SSO_TOMCAT_PORT.
Затем настройте балансировщик нагрузки для пересылки запросов экземпляру Edge SSO на порт 9433. В этом случае общедоступный URL Edge SSO будет выглядеть следующим образом:
https://LB_DNS_NAME:9443
Как установить Edge SSO в нескольких центрах обработки данных
Если у вас несколько центров обработки данных, установите экземпляр Edge SSO в каждом из них. После этого весь трафик будет обрабатываться одним экземпляром Edge SSO. Если первый экземпляр SSO Edge выйдет из строя, вы сможете переключиться на второй.
Прежде чем устанавливать Edge SSO в двух центрах обработки данных, вам потребуется следующее:
- IP-адрес или доменное имя основного сервера Postgres.
В среде с несколькими центрами обработки данных обычно устанавливают по одному серверу Postgres в каждом центре и настраивают их в режиме репликации "Основной – резервный". В этом примере центр обработки данных 1 содержит основной сервер Postgres, а центр обработки данных 2 – резервный. Подробнее о том, как настроить репликацию "основной – резервный" для Postgres… - Одна запись DNS, указывающая на один экземпляр SSO Edge. Например, вы создаете запись DNS в форме ниже, которая указывает на экземпляр SSO Edge в центре обработки данных 1:
my-sso.domain.com => apigee-sso-dc1-ip-or-lb
При установке 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 в центре обработки данных 1 перестанет работать, вы можете переключиться на экземпляр системы единого входа Edge в центре обработки данных 2:
- Преобразуйте резервный сервер Postgres в центре обработки данных 2 в основной, как описано в разделе Обработка отказа базы данных PostgreSQL.
- Обновите запись DNS, чтобы она указывала на экземпляр SSO Edge в
my-sso.domain.comцентре обработки данных 2
:my-sso.domain.com => apigee-sso-dc2-ip-or-lb - Обновите файл конфигурации для Edge SSO в центре обработки данных 2, чтобы он указывал на новый сервер Postgres Master
в центре обработки данных 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