Saltar al contenido principal Saltar al contenido complementario

Requisitos previos

Antes de poder obtener o replicar datos, asegúrese de cumplir los siguientes requisitos previos:

  • Instale el driver requerido en el servidor de la pasarela de movimiento de datos

  • Otorgue los permisos necesarios en la fuente de datos

  • Configure el conector de la fuente de datos

Configuración del driver o controlador

Puede instalar el driver usando la utilidad de instalación del driver (recomendado) o manualmente. La instalación manual solo debe intentarse en el improbable caso de que encuentre un problema con la utilidad de instalación del driver.

Uso de la utilidad de instalación del driver para instalar el driver/controlador

Esta sección describe cómo instalar el driver necesario. El proceso implica ejecutar un script que descargará, instalará y configurará automáticamente el driver requerido. También puede ejecutar secuencias de script para actualizar y desinstalar el driver según sea necesario.

Preparar la instalación

  • Asegúrese de que Python 3.6 o posterior esté instalado en el servidor de la pasarela de Movimiento de datos.

    Python viene preinstalado en la mayoría de las distribuciones de Linux. Puede verificar qué versión de Python está instalada en su sistema ejecutando el siguiente comando:

    python3 --version

Instalar el paquete de visualización driver

Para descargar e instalar el driver:

  1. En la máquina de la puerta de enlace de Movimiento de datos, cambie el directorio de trabajo a:

    opt/qlik/gateway/movement/drivers/bin

  2. Ejecute el siguiente comando:

    Sintaxis:

    ./install postgres

    Si no logra descargar el driver (debido a restricciones de acceso o problemas técnicos), aparecerá un mensaje indicándole dónde puede descargar el driver y dónde copiarlo en la máquina de la puerta de enlace de Movimiento de datos. Una vez hecho esto, ejecute nuevamente el comando install postgres.

    De lo contrario, se mostrará el EULA del driver.

  3. Puede realizar una de las acciones siguientes:

    • Pulse [Intro] repetidamente para desplazarse por el EULA.
    • Pulse la barra espaciadora repetidamente para desplazarse rápidamente por el EULA.
    • Pulse q para salir del texto de la licencia y ver las opciones de aceptación del EULA.
  4. Puede realizar una de las acciones siguientes:

    • Escriba "y" y pulse [Intro] para aceptar el EULA y comenzar la instalación.
    • Escriba "n" y pulse [Intro] para rechazar el EULA y salir de la instalación.
    • Escriba "v" y pulse [Intro] para ver el EULA de nuevo.

  5. Se instalará el driver.

Actualizar el driver

Ejecute el comando de actualización si desea desinstalar versiones anteriores del driver antes de instalar el driver provisto.

Para descargar y actualizar el driver:

  1. En la máquina de la puerta de enlace de Movimiento de datos, cambie el directorio de trabajo a:

    opt/qlik/gateway/movement/drivers/bin

  2. Ejecute el siguiente comando:

    Sintaxis:

    ./update postgres

    Si no logra descargar el driver (debido a restricciones de acceso o problemas técnicos), aparecerá un mensaje indicándole dónde puede descargar el driver y dónde copiarlo en la máquina de la puerta de enlace de Movimiento de datos. Una vez hecho esto, ejecute nuevamente el comando update postgres.

    De lo contrario, se mostrará el EULA del driver.

  3. Puede realizar una de las acciones siguientes:

    • Pulse [Intro] repetidamente para desplazarse por el EULA.
    • Pulse la barra espaciadora repetidamente para desplazarse rápidamente por el EULA.
    • Pulse q para salir del texto de la licencia y ver las opciones de aceptación del EULA.
  4. Puede realizar una de las acciones siguientes:

    • Escriba "y" y pulse [Intro] para aceptar el EULA y comenzar la instalación.
    • Escriba "n" y pulse [Intro] para rechazar el EULA y salir de la instalación.
    • Escriba "v" y pulse [Intro] para ver el EULA desde el principio.
  5. El driver anterior se desinstalará y se instalará el nuevo driver.

Desinstalar el driver

Ejecute el comando de desinstalación si desea desinstalar el driver.

Para desinstalar el driver:

  1. Detenga todas las tareas configuradas para utilizar este conector.

  2. En la máquina de la pasarela de Movimiento de datos, cambie el directorio de trabajo a:

    opt/qlik/gateway/movement/drivers/bin

  3. Ejecute el siguiente comando:

    Sintaxis:

    ./uninstall postgres

    Se desinstalará el driver.

Instalar el controlador manualmente

Solo debe intentar instalar el driver manualmente si la instalación automática del driver no se realizó correctamente.

Una vez que se haya instalado Pasarela de datos de movimiento de datos, descargue los siguientes archivos RPM. Encontrará enlaces de descarga directa a la versión compatible en binary-artifacts, en /opt/qlik/gateway/movement/drivers/manifests/postgres.yaml. Una vez completada la descarga, copie los archivos a la máquina de Pasarela de datos de movimiento de datos.

Cuando Pasarela de datos de movimiento de datos está instalado en Red Hat 9.x:

  • postgresql<version>-libs-<version>PGDG.rhel9.x86_64.rpm
  • postgresql<version>-<version>PGDG.rhel9.x86_64.rpm
  • postgresql<version>-odbc-<version>PGDG.rhel9.x86_64.

Cuando Pasarela de datos de movimiento de datos está instalado en Red Hat 8.x:

  • postgresql<version>-libs-<version>PGDG.rhel8.x86_64.rpm
  • postgresql<version>-<version>PGDG.rhel8.x86_64.rpm
  • postgresql<version>-odbc-<version>PGDG.rhel8.x86_64.rpm

En el servidor de Data Movement gateway, abra un símbolo del shell y haga lo siguiente:

  1. Detenga el servicio Data Movement gateway:

    sudo systemctl stop repagent

  2. Opcionalmente, confirme que el servicio se ha detenido:

    sudo systemctl status repagent

    El estado debería ser el siguiente:

    Active: inactive (dead) since <timestamp> ago

  3. Instale los archivos RPM.

  4. Cambie el directorio de trabajo a <Data Movement gateway-Install-Dir>/bin.

  5. Copie la ubicación del controlador en el archivo site_arep_login.sh, de la siguiente manera:

    echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/usr/lib:/usr/lib64:/usr/pgsql-<version>/lib" >> site_arep_login.sh

    Esto agregará el controlador a "LD_LIBRARY_PATH" y actualizará la ubicación del controlador en el archivo site_arep_login.sh.

  6. Opcionalmente, confirme que se copió la ubicación del controlador:

    cat site_arep_login.sh
  7. Asegúrese de que el archivo /etc/odbcinst.ini contenga una entrada para PostgreSQL, como en el siguiente ejemplo:

    [PostgreSQL]

    Description = PostgreSQL ODBC driver

    Driver = /usr/pgsql-13/lib/psqlodbc.so

    Setup = /usr/pgsql-13/lib/psqlodbcw.so

    UsageCount = 1

  8. Inicie el servicio Data Movement gateway:

    sudo systemctl start repagent

  9. Opcionalmente, confirme que el servicio se ha iniciado:

    sudo systemctl status repagent

    El estado debería ser el siguiente:

    Active: active (running) since <timestamp> ago

Puerto

De forma predeterminada, el puerto 5432 debe abrirse para la comunicación saliente en el servidor de Data Movement gateway. Puede cambiar esto en la configuración del conector.

Captura de cambios desde una base de datos PostgreSQL instalada por el cliente

  • La dirección IP de la máquina Data Movement gateway debe añadirse al archivo de configuración pg_hba.conf con la palabra clave "replication" en el campo de la base de datos.

    Ejemplo:

    host replication all 176.123.1.212/32 trust

  • Asegúrese de que el plugin de salida test_decoding (que se encuentra en el paquete postgresql12-contrib) esté instalado.

  • El usuario especificado en la configuración de conexión debe tener permisos de lectura y escritura en la base de datos de origen para permitir la creación de "ranuras" en la base de datos. Las ranuras son necesarias para leer los cambios.

  • Los siguientes parámetros y valores deben definirse en el archivo de configuración postgresql.conf.

    wal_level = logical
    max_replication_slots = number of replication slots

    Donde number of replication slots debe ser mayor que uno y debe configurarse de acuerdo con la cantidad de tareas que desee ejecutar. Por ejemplo, para ejecutar cinco tareas, debe configurar max_replication_slots = 5. Las ranuras se abren automáticamente tan pronto como se inicia una tarea y permanecen abiertas, incluso cuando la tarea ya no se está ejecutando. Tenga en cuenta que las ranuras abiertas deben eliminarse manualmente.

    max_wal_senders = number of concurrent tasks

    Donde number of concurrent tasks debe ser mayor que uno y debe configurarse de acuerdo con la cantidad de tareas que esté ejecutando simultáneamente. Por ejemplo, para ejecutar tres tareas al mismo tiempo, debe configurar max_wal_senders = 3.

  • El parámetro wal_sender_timeout termina las conexiones que están inactivas por más tiempo que el número especificado de milisegundos. El tiempo de espera predeterminado es de 60 segundos. Para deshabilitar el mecanismo de tiempo de espera (opcional), establezca este parámetro en cero.

    Nota informativa

    De forma predeterminada, el servidor interpreta el valor del parámetro wal_sender_timeout como milisegundos. Para especificar explícitamente segundos, agregue una "s" al valor como en el siguiente ejemplo:

    wal_sender_timeout=60s

Para obtener más información sobre los parámetros de configuración, consulte la sección Replication en Configuración del servidor en la Ayuda online de PostgreSQL.

Captura de cambios de Amazon RDS para PostgreSQL

Puede utilizar la cuenta de usuario principal de AWS para la instancia de la base de datos de PostgreSQL como el usuario del punto de enlace de origen de Amazon RDS para PostgreSQL. La cuenta de usuario maestro tiene los roles necesarios que le permiten configurar la captura de datos modificados (CDC).

Si prefiere no usar la cuenta de usuario maestro, la cuenta que desea usar debe tener el rol rds_superuser y el rol rds_replication. El rol rds_replication concede permisos para gestionar ranuras lógicas y transmitir datos mediante ranuras lógicas.

Para habilitar la replicación lógica en una instancia de base de datos PostgreSQL de Amazon RDS:

  1. Cree un nuevo grupo de parámetros con la siguiente configuración:
    1. Configure el parámetro rds.logical_replication en el grupo de parámetros de la base de datos en 1.
    2. max_wal_senders: el número de tareas que se pueden ejecutar en paralelo.
    3. max_replication_slots: cada conexión (es decir, tarea) crea una nueva ranura; este parámetro configura la cantidad de conexiones simultáneas que se pueden establecer con la base de datos.
  2. Vincule la instancia de Amazon RDS al grupo de parámetros.

Captura de cambios de Microsoft Azure para PostgreSQL

Para poder capturar cambios de Microsoft Azure para PostgreSQL, debe establecer la propiedad "replicación" en "lógica", como se describe en los pasos a continuación.

  1. Abra la CLI de Azure y ejecute el siguiente comando:

    Nota informativa

    Puede descargar la CLI o conectarse a través de un comando de shell en Azure Portal.

    az postgres server configuration set --resource-group resource-group --server-name server-name --name azure.replication_support --value logical

    az postgres server configuration set --resource-group azuredb --server-name qlik-azure-pg --name azure.replication_support --value logical

     

  2. Reinicie la base de datos (usando la línea de comando o a través del portal).

Captura de cambios de Google Cloud para PostgreSQL

Nota informativaEsta funcionalidad requiere Pasarela de datos de movimiento de datos 2022.11.42 o posterior.

Para poder capturar cambios de la base de datos, debe configurar la replicación lógica.

Para configurar la replicación lógica:

  1. En la plataforma Google Cloud, establezca las siguientes marcas en la configuración de PostgreSQL:

    • cloudsql.logical_decoding=on
    • max_replication_slots: Cada conexión (es decir, tarea) crea una nueva ranura; este parámetro configura la cantidad de conexiones simultáneas que se pueden establecer con la base de datos. Si encuentra problemas de rendimiento, aumentar este valor podría ayudar.
    • max_wal_senders: El número de tareas que se pueden ejecutar en paralelo. Si encuentra problemas de rendimiento, aumentar este valor podría ayudar.

    Para más información sobre estos parámetros, vea https://www.postgresql.org/docs/current/runtime-config-replication.html

  2. En la base de datos, modifique el usuario especificado en la configuración de connector (username) para admitir la replicación:

    ALTER USER username WITH REPLICATION;

¿Esta página le ha sido útil?

No dude en indicarnos en qué podemos mejorar si encuentra algún problema en esta página o su contenido, como, por ejemplo, errores tipográficos, pasos que falta o errores técnicos.