Instala SSO perimetral para alta disponibilidad

Edge para nube privada v. 4.17.09

Instala varias instancias de SSO de Edge para lograr alta disponibilidad en dos situaciones:

  • En un entorno de centro de datos único, instala dos instancias de SSO de Edge para crear un entorno de alta disponibilidad, lo que significa que el sistema sigue funcionando si uno de los módulos de SSO de Edge deja de funcionar.
  • En un entorno con dos centros de datos, instala el SSO de Edge en ambos centros de datos para que el sistema siga funcionando si uno de los módulos de SSO de Edge deja de funcionar.

Instala dos módulos de SSO de Edge en el mismo centro de datos

Implementas dos instancias de SSO de Edge, en nodos diferentes, en un solo centro de datos para admitir la alta disponibilidad. En este caso, ocurre lo siguiente:

  • Ambas instancias de SSO de Edge deben estar conectadas al mismo servidor de Postgres. Apigee recomienda usar un servidor de Postgres dedicado para el SSO de Edge y no usar el mismo servidor de Postgres que instalaste con Edge.
  • Necesitas un balanceador de cargas frente a las dos instancias de SSO de Edge:
    • El balanceador de cargas debe admitir la persistencia de cookies generada por la aplicación, y la cookie de sesión debe llamarse JSESSIONID.
    • Configura el balanceador de cargas para que realice una verificación de estado de TCP o HTTP en el SSO de Edge. Para TCP, usa la URL de SSO de Edge:

      http_or_https://edge_sso_IP_DNS:9099

      Especifica el puerto según lo establecido por el SSO de Edge. El puerto 9099 es el predeterminado.

      Para HTTP, incluye /healthz:

      http_or_https://edge_sso_IP_DNS:9099/healthz
    • Algunos parámetros de configuración del balanceador de cargas dependen de si habilitaste HTTPS en el SSO de Edge. Consulta las siguientes secciones para obtener más información.

Usa el acceso HTTP al SSO de Edge

Si usas el acceso HTTP a SSO de Edge, configura el balanceador de cargas para que haga lo siguiente:

  • Usa el modo HTTP para conectarte al SSO de Edge
  • Escucha en el mismo puerto que el SSO de Edge

    De forma predeterminada, el SSO de Edge escucha las solicitudes HTTP en el puerto 9099. De manera opcional, puedes usar SSO_TOMCAT_PORT para configurar el puerto de SSO de Edge. Si usaste SSO_TOMCAT_PORT para cambiar el puerto de SSO de Edge del valor predeterminado, asegúrate de que el balanceador de cargas escuche en ese puerto.

Por ejemplo, en cada instancia de SSO de Edge, configura el puerto como 9033 agregando lo siguiente al archivo de configuración:

SSO_TOMCAT_PORT=9033

Luego, configura el balanceador de cargas para que escuche en el puerto 9033 y reenvíe las solicitudes a una instancia de SSO de Edge en el puerto 9033. La URL pública de SSO de Edge en esta situación es la siguiente:

http://LB_DNS_NAME:9033

Usa el acceso HTTPS al SSO de Edge

Puedes configurar las instancias de SSO de Edge para que usen HTTPS. En esta situación, sigue los pasos que se indican en Configura apigee-sso para el acceso HTTPS. Como parte del proceso de habilitación de HTTPS, configura SSO_TOMCAT_PROFILE en el archivo de configuración de SSO de Edge, como se muestra a continuación:

SSO_TOMCAT_PROFILE=SSL_TERMINATION 

También puedes configurar el puerto que usa el SSO de Edge para el acceso HTTPS:

SSO_TOMCAT_PORT=9443

Si usas el acceso HTTPS al SSO de Edge, configura el balanceador de cargas para que realice las siguientes acciones:

  • Usa el modo TCP, no el modo HTTP, para conectarte al SSO de Edge
  • Escucha en el mismo puerto que el SSO de Edge, según lo define SSO_TOMCAT_PORT

Luego, configura el balanceador de cargas para que reenvíe las solicitudes a una instancia de SSO de Edge en el puerto 9433. La URL pública de SSO de Edge en esta situación es la siguiente:

https://LB_DNS_NAME:9443

Instala el SSO de Edge en varios centros de datos

En un entorno de varios centros de datos, debes instalar una instancia de SSO de Edge en cada centro de datos. Luego, una instancia de SSO de Edge controla todo el tráfico. Si esa instancia de SSO de Edge deja de funcionar, puedes cambiar a la segunda instancia de SSO de Edge.

Antes de instalar el SSO de Edge en dos centros de datos, necesitas lo siguiente:

  • Es la dirección IP o el nombre de dominio del servidor de Postgres principal.

    En un entorno de varios centros de datos, por lo general, instalas un servidor de Postgres en cada centro de datos y los configuras en el modo de replicación principal-en espera. En este ejemplo, el centro de datos 1 contiene el servidor de Postgres principal y el centro de datos 2 contiene el en espera. Para obtener más información, consulta Configura la replicación principal-en espera para Postgres.
  • Una sola entrada de DNS que apunta a una instancia de SSO de Edge. Por ejemplo, puedes crear una entrada de DNS en el siguiente formato que apunte a la instancia de SSO de Edge en el centro de datos 1:

    my-sso.domain.com => apigee-sso-dc1-ip-or-lb

Cuando instalas el SSO de Edge en cada centro de datos, configuras ambos para que usen la instancia principal de Postgres en el centro de datos 1:

## Postgres configuration.
PG_HOST=IP_or_DNS_of_PG_Master_in_DC1
 PG_PORT=5432

También debes configurar ambos para que usen la entrada de DNS como la URL de acceso público:

# Externally accessible URL of Edge SSO.
SSO_PUBLIC_URL_HOSTNAME=my-sso.domain.com
# Default port is 9099.
SSO_PUBLIC_URL_PORT=9099

Si el SSO de Edge en el centro de datos 1 deja de funcionar, puedes cambiar a la instancia de SSO de Edge en el centro de datos 2:

  • Convierte el servidor de Postgres en espera en el centro de datos 2 en principal, como se describe en Controla una conmutación por error de la base de datos de PostgreSQL.
  • Actualiza el registro DNS para que apunte my-sso.domain.com a la instancia de SSO de Edge en el centro de datos 2:
    my-sso.domain.com => apigee-sso-dc2-ip-or-lb
  • Actualiza el archivo de configuración para el SSO de Edge en el centro de datos 2 para que apunte al nuevo servidor principal de Postgres en el centro de datos 2:
    ## Postgres configuration.
    PG_HOST=IP_or_DNS_of_PG_Master_in_DC2
  • Reinicia el SSO de Edge en el centro de datos 2 para actualizar su configuración:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso restart