Vous installez plusieurs instances de l'authentification unique Apigee pour une haute disponibilité dans deux scénarios:
- Dans un environnement de centre de données unique, installez deux instances SSO Apigee pour créer un environnement à haute disponibilité. Ainsi, le système continue de fonctionner si l'un des modules SSO Apigee tombe en panne.
- Dans un environnement comportant deux centres de données, installez l'authentification unique Apigee dans ces deux centres de données afin que le système continue de fonctionner si l'un des modules d'authentification unique Apigee tombe en panne.
Installer deux modules SSO Apigee dans le même centre de données
Vous déployez deux instances de l'authentification unique Apigee, sur des nœuds différents, dans un seul centre de données pour assurer la haute disponibilité. Dans ce cas, on a :
- Les deux instances de l'authentification unique Apigee doivent être connectées au même serveur Postgres. Apigee recommande d'utiliser un serveur Postgres dédié pour l'authentification unique Apigee, et non le serveur Postgres que vous avez installé avec Edge.
- Les deux instances de l'authentification unique Apigee doivent utiliser la même paire de clés JWT, comme spécifié par les propriétés
SSO_JWT_SIGNING_KEY_FILEPATH
etSSO_JWT_VERIFICATION_KEY_FILEPATH
du fichier de configuration. Reportez-vous à Installer et configurer l'authentification unique Apigee pour plus d'informations sur la définition de ces propriétés. - Vous avez besoin d'un équilibreur de charge devant les deux instances de l'authentification unique Apigee :
- L'équilibreur de charge doit prendre en charge la conservation des cookies générés par l'application, et le cookie de session doit être nommé
JSESSIONID
. - Configurez l'équilibreur de charge pour qu'il effectue une vérification de l'état TCP ou HTTP sur l'authentification unique Apigee. Pour TCP, utilisez l'URL d'Apigee SSO :
http_or_https://edge_sso_IP_DNS:9099
Spécifiez le port tel qu'il est défini par l'authentification unique Apigee. Le port 9099 est le port par défaut.
Pour HTTP, incluez
/healthz
:http_or_https://edge_sso_IP_DNS:9099/healthz
- Certains paramètres de l'équilibreur de charge dépendent de l'activation ou non du protocole HTTPS sur l'authentification unique Apigee. Pour en savoir plus, consultez les sections suivantes.
- L'équilibreur de charge doit prendre en charge la conservation des cookies générés par l'application, et le cookie de session doit être nommé
Accès HTTP à l'authentification unique Apigee
Si vous utilisez un accès HTTP à Apigee SSO, configurez l'équilibreur de charge pour:
- Utilisez le mode HTTP pour vous connecter à l'authentification unique Apigee.
Écoutez sur le même port qu'Apigee SSO.
Par défaut, l'authentification unique Apigee écoute les requêtes HTTP sur le port 9099. Vous pouvez éventuellement utiliser
SSO_TOMCAT_PORT
pour définir le port SSO Apigee. Si vous avez utiliséSSO_TOMCAT_PORT
pour modifier le port d'authentification unique Apigee par défaut, assurez-vous que l'équilibreur de charge écoute sur ce port.
Par exemple, sur chaque instance d'authentification unique Apigee, vous définissez le port sur 9033 en ajoutant les éléments suivants au fichier de configuration:
SSO_TOMCAT_PORT=9033
Vous configurez ensuite l'équilibreur de charge pour écouter sur le port 9033 et transférer les requêtes vers une instance SSO Edge sur le port 9033. L'URL publique de l'authentification unique Apigee dans ce scénario est la suivante:
http://LB_DNS_NAME:9033
Accès HTTPS à Apigee SSO
Vous pouvez configurer les instances SSO Apigee pour qu'elles utilisent HTTPS. Dans ce scénario, suivez la procédure décrite dans la section Configurer l'authentification unique Apigee pour l'accès HTTPS. Dans le cadre du processus d'activation de HTTPS, vous définissez SSO_TOMCAT_PROFILE
dans le fichier de configuration de l'authentification unique Apigee, comme indiqué ci-dessous:
SSO_TOMCAT_PROFILE=SSL_TERMINATION
Si vous le souhaitez, vous pouvez également définir le port utilisé par Apigee SSO pour l'accès HTTPS:
SSO_TOMCAT_PORT=9443
Configurez ensuite l'équilibreur de charge pour:
- Utilisez le mode TCP, et non le mode HTTP, pour vous connecter à l'authentification unique Apigee.
- Écouter sur le même port que l'authentification unique Apigee, tel que défini par
SSO_TOMCAT_PORT
.
Vous configurerez ensuite l'équilibreur de charge pour qu'il transfère les requêtes vers une instance SSO Apigee sur le port 9433. L'URL publique de l'authentification unique Apigee dans ce scénario est la suivante:
https://LB_DNS_NAME:9443
Installer l'authentification unique Apigee dans plusieurs centres de données
Dans un environnement comportant plusieurs centres de données, vous devez installer une instance Apigee SSO dans chaque centre de données. Une instance SSO Apigee gère ensuite tout le trafic. Si cette instance Apigee SSO tombe en panne, vous pouvez alors basculer vers la deuxième instance SSO Apigee.
Avant d'installer l'authentification unique Apigee dans deux centres de données, vous avez besoin des éléments suivants:
Adresse IP ou nom de domaine du serveur Postgres maître.
Dans un environnement comportant plusieurs centres de données, vous installez généralement un serveur Postgres dans chaque centre de données et le configurez en mode de réplication maître/veille. Dans cet exemple, le centre de données 1 contient le serveur Postgres maître et le centre de données 2 contient le Standby. Pour en savoir plus, consultez la page Configurer la réplication maître en veille pour Postgres.
- Une seule entrée DNS qui pointe vers une instance SSO Apigee. Par exemple, vous créez une entrée DNS dans le formulaire ci-dessous qui pointe vers l'instance SSO Apigee dans le centre de données 1 :
my-sso.domain.com => apigee-sso-dc1-ip-or-lb
- Les deux instances de l'authentification unique Apigee doivent utiliser la même paire de clés JWT, comme spécifié par les propriétés
SSO_JWT_SIGNING_KEY_FILEPATH
etSSO_JWT_VERIFICATION_KEY_FILEPATH
du fichier de configuration. Reportez-vous à Installer et configurer l'authentification unique Apigee pour plus d'informations sur la définition de ces propriétés.
Lorsque vous installez l'authentification unique Apigee dans chaque centre de données, vous les configurez pour utiliser le maître Postgres dans le centre de données 1:
## Postgres configuration PG_HOST=IP_or_DNS_of_PG_Master_in_DC1 PG_PORT=5432
Vous allez également configurer les deux centres de données pour qu'ils utilisent l'entrée DNS en tant qu'URL accessible au public:
# Externally accessible URL of Apigee SSO SSO_PUBLIC_URL_HOSTNAME=my-sso.domain.com # Default port is 9099. SSO_PUBLIC_URL_PORT=9099
Si l'authentification unique Apigee du centre de données 1 tombe en panne, vous pouvez passer à l'instance d'authentification unique Apigee dans le centre de données 2:
- Convertissez le serveur Postgres Standby du centre de données 2 en serveur maître, comme décrit dans la section Gérer un basculement de base de données PostgreSQL.
- Mettez à jour l'enregistrement DNS pour qu'il pointe
my-sso.domain.com
vers l'instance SSO Apigee dans le centre de données 2 :my-sso.domain.com => apigee-sso-dc2-ip-or-lb
- Mettez à jour le fichier de configuration de l'authentification unique Apigee dans le centre de données 2 pour qu'il pointe vers le nouveau serveur maître Postgres du centre de données 2 :
## Postgres configuration PG_HOST=IP_or_DNS_of_PG_Master_in_DC2
- Redémarrez l'authentification unique Apigee dans le centre de données 2 pour mettre à jour sa configuration :
/opt/apigee/apigee-service/bin/apigee-service apigee-sso restart