En este tema se describe la funcionalidad de conmutación por error de la base de datos para dispositivos que ejecutan la versión 9.0.0 o posterior. Para estos dispositivos, la conmutación por error está totalmente automatizada, excepto cuando un dispositivo del proveedor de servicios se apaga de forma inesperada, en cuyo caso se sigue realizando un proceso manual.

Nota: Este tema solo se aplica a los dispositivos que ejecutan la versión 9.0.0 o posterior. Para obtener información relacionada con los dispositivos anteriores, consulte Conmutación por error de la base de datos: dispositivos heredados.

Conmutación por error automatizada

La funcionalidad de conmutación por error automatizada incluye lo siguiente.
  • Conexión de origen de datos única: todos los dispositivos utilizan ahora una única conexión de origen de datos que se dirige a través del nuevo servicio de pgbouncer. Pgbouncer es un concentrador de conexión que mantiene conexiones con las bases de datos de Postgres subyacentes y a la vez proporciona un único punto de conexión para que lo utilicen los servicios del dispositivo. Este servicio también controla todas las migraciones de conmutación por error y principales; se actualiza automáticamente para apuntar a la nueva base de datos principal, lo cual permite realizar una transición sin problemas entre las instancias principales.
  • Cambio controlado de la base de datos principal al apagar o reiniciar el dispositivo: durante cualquier apagado o reinicio iniciado por el invitado de la base de datos principal actual, la función principal se migrará al otro dispositivo en el par de alta disponibilidad de manera controlada. Esto provoca que la interrupción de los dispositivos sea menor, lo cual afecta principalmente a las conexiones de escritorio a través del portal (web) de Blast. Las conexiones de escritorio realizadas a través de Horizon Client no se ven afectadas. También hay un breve período de no disponibilidad de horizonadmin, y los usuarios que solicitan una conexión de escritorio durante el cambio pueden recibir un error que impide que los escritorios estén disponibles (aunque un reintento en breve deben permitir que se conecten a un escritorio).
  • Conmutación por error automática de la base de datos principal para un error inesperado de dispositivo del arrendatario: los errores de la instancia principal ahora se detectan automáticamente, seguidos de una solicitud a los dispositivos del proveedor de servicios para comprobar que el dispositivo realmente está inactivo. A continuación, el proceso de conmutación por error se inicia después de un retraso de tres minutos. Este nuevo proceso de conmutación por error es menos disruptivo que los procesos de conmutación por error anteriores y posteriormente deja el clúster de slony en un estado de replicación normal: no se requiere el reinicio de slony después de que se produzca una conmutación por error.
Estas funciones son compatibles con los servicios que se describen a continuación.
Servicio Descripción Ubicación del registro Notas
Pgbouncer El agrupador de conexión que realiza el brokering de las conexiones de base de datos entre Platform Services y Postgres. /var/log/pgbouncer/
  • Las conexiones a Postgres con el comando psql ahora se dirigen de forma predeterminada a pgbouncer, y esto conecta al usuario a la base de datos principal, independientemente del dispositivo que esté utilizando. Para conectarse a una instancia de base de datos específica, utilice las marcas -h y -p con psql. También debe especificar el puerto 6432 para conectarse directamente a Postgres. Por ejemplo:
    psql -U admin -h ‹Appliance_IP› -p 6432 fdb
  • Puede comprobar la configuración de pgbouncer en /etc/pgbouncer/pgbouncer.ini para verificar que está apuntando a los dispositivos correctos. Las cadenas de conexión situadas en la parte superior del archivo deben apuntar a la instancia actual de la instancia principal de slony. Si no es así, en la mayoría de los casos, se soluciona el problema al reiniciar el dispositivo.
Dbmonitor Servicio de supervisión que realiza lo siguiente:
  • Detecta errores en la instancia principal e inicia el nuevo proceso de conmutación por error.
  • Detecta los cambios en el nodo principal de slony provocados por la conmutación controlada o la acción de volver a suscribirse y actualiza pgbouncer con la nueva dirección de la instancia principal, según corresponda.
/var/log/dbmonitor/
Conmutación El script se ejecuta al apagar para realizar una acción de conmutación. /var/log/desktone/slony-services
Volver a suscribir El script se ejecuta en el inicio para realizar una acción de volver a suscribirse. /var/log/desktone/slony-services

Conmutación por error manual del dispositivo del proveedor de servicios

Si un dispositivo del proveedor de servicios tiene un apagado inesperado, puede realizar una conmutación por error manual siguiendo los pasos que se indican a continuación en el otro dispositivo del proveedor de servicios.
  1. Ejecute el script failover-slony-master (ubicado en /usr/local/desktone/scripts/) como usuario raíz:
    failover-slony-master <database type> '<database password>'
    donde <database type> es fdb, edb o avdb.
  2. Confirme que el archivo lipgbouncer.ini apunte a la dirección IP de front-end del dispositivo actual:
    /usr/local/desktone/scripts# grep '<IP address>' /etc/pgbouncer/pgbouncer.ini
  3. Vuelva a cargar el servicio pgbouncer:
    service pgbouncer reload
  4. Para confirmar el estado principal y la replicación, ejecute slony-status:
    /usr/local/desktone/scripts# slony-status <org #>