Installer l'authentification unique Apigee pour la haute disponibilité

Vous installez plusieurs instances de l'authentification unique Apigee pour garantir la haute disponibilité dans deux scénarios:

  • Dans un environnement de centre de données unique, installez deux instances Apigee SSO pour créer un de disponibilité, ce qui signifie que le système continue de fonctionner si l'un des s'interrompt.
  • Dans un environnement comportant deux centres de données, installez Apigee SSO dans les deux centres de données continue de fonctionner si l’un des modules SSO 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 même centre de données pour haute disponibilité. Dans ce cas :

  • Les deux instances de l'authentification unique Apigee doivent être connectées au même serveur Postgres. Apigee recommande en utilisant un serveur Postgres dédié pour l'authentification unique Apigee, et non le même serveur Postgres que celui utilisé pour installé avec Edge.
  • Les deux instances de l'authentification unique Apigee doivent utiliser la même paire de clés JWT comme spécifiée par SSO_JWT_SIGNING_KEY_FILEPATH et SSO_JWT_VERIFICATION_KEY_FILEPATH dans le fichier de configuration. Consultez Installer et configurer l'authentification unique Apigee pour en savoir plus 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: <ph type="x-smartling-placeholder">
      </ph>
    • L'équilibreur de charge doit être compatible avec la rétention des cookies générés par l'application, et la session Le cookie 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 de l'authentification unique Apigee:
      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 varient selon que vous avez activé HTTPS ou non dans l'authentification unique Apigee. Consultez le pour en savoir plus.

Accès HTTP à l'authentification unique Apigee

Si vous utilisez l'accès HTTP à l'authentification unique Apigee, configurez l'équilibreur de charge de manière à:

  • Utilisez le mode HTTP pour vous connecter à l'authentification unique Apigee.
  • Écoutez sur le même port que l'authentification unique Apigee.

    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 d'authentification unique Apigee. Si vous utilisiez SSO_TOMCAT_PORT pour modifier le port d'authentification unique Apigee par défaut, assurez-vous que l'équilibreur de charge écoute ce port .

Par exemple, sur chaque instance SSO Apigee, définissez le port sur 9033 en ajoutant le code suivant au de configuration:

SSO_TOMCAT_PORT=9033

Vous configurerez ensuite l'équilibreur de charge pour qu'il écoute le port 9033 et transfère les requêtes vers Instance SSO sur le port 9033. Dans ce scénario, l'URL publique de l'authentification unique Apigee est la suivante:

http://LB_DNS_NAME:9033

Accès HTTPS à l'authentification unique Apigee

Vous pouvez configurer les instances SSO Apigee de sorte qu'elles utilisent HTTPS pour sécuriser les communications. Dans ce scénario, suivez les étapes de Configurez l'authentification unique Apigee pour l'accès HTTPS. Dans le cadre du processus d'activation HTTPS, définissez SSO_TOMCAT_PROFILE dans le fichier de configuration de l'authentification unique Apigee, comme indiqué ci-dessous:

SSO_TOMCAT_PROFILE=SSL_TERMINATION

Vous pouvez également définir le port utilisé par Apigee SSO pour l'accès HTTPS:

SSO_TOMCAT_PORT=9443

Pour garantir une communication appropriée entre l'équilibreur de charge et l'authentification unique Apigee, configurez l'équilibreur de charge comme suit:

  • Utilisez le mode TCP, et non le mode HTTP, pour vous connecter à l'authentification unique Apigee. Cela permet aux connexions SSL de passer sans se terminer au niveau de l'équilibreur de charge.
  • Écoutez sur le même port que l'authentification unique Apigee, tel que défini par SSO_TOMCAT_PORT (par exemple, 9443).
  • Transférez les requêtes à une instance SSO Apigee sur le même port (9443).

Assurez-vous que l'URL publique reflète les paramètres DNS et de port de l'équilibreur de charge. Dans ce scénario, l'URL publique de l'authentification unique Apigee est la suivante:

https://LB_DNS_NAME:9443

Installer Apigee SSO dans plusieurs centres de données

Dans un environnement comprenant plusieurs centres de données, vous installez une instance d'authentification unique Apigee dans chaque centre de données. Une instance d'authentification unique Apigee gère ensuite l'ensemble du trafic. Si cette instance SSO Apigee tombe en panne, passez à la deuxième instance d'authentification unique 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 avec plusieurs centres de données, vous installez généralement un serveur Postgres dans chaque et les configurer en mode de réplication maître/veille. Pour cet exemple, data center 1 contient le serveur Postgres maître et le centre de données 2 contient la valeur Standby. Pour en savoir plus, consultez la section Configurer la réplication maître Postgres

  • Une seule entrée DNS qui pointe vers une instance d'authentification unique Apigee. Par exemple, vous créez un DNS entrée du formulaire ci-dessous qui pointe vers l'instance d'authentification unique 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ée par SSO_JWT_SIGNING_KEY_FILEPATH et SSO_JWT_VERIFICATION_KEY_FILEPATH dans le fichier de configuration. Consultez Installer et configurer l'authentification unique Apigee pour en savoir plus sur la définition de ces propriétés.

Lorsque vous installez l'authentification unique Apigee dans chaque centre de données, vous configurez les deux pour qu'ils utilisent l'authentification 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 de sorte qu'ils utilisent l'entrée DNS en tant qu'URL accessible publiquement:

# 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 tombe en panne dans le centre de données 1, vous pouvez passer à l'instance d'authentification unique Apigee dans les données centre 2:

  1. 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.
  2. Mettez à jour l'enregistrement DNS pour qu'il pointe my-sso.domain.com vers l'instance d'authentification unique Apigee dans centre de données 2:
    my-sso.domain.com => apigee-sso-dc2-ip-or-lb
  3. Mettre à jour le fichier de configuration de l'authentification unique Apigee dans le centre de données 2 pour qu'il pointe vers le nouveau maître Postgres dans le centre de données 2:
    ## Postgres configuration
    PG_HOST=IP_or_DNS_of_PG_Master_in_DC2
  4. 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