Crear una base de datos de PostgreSQL como instalación independiente

A partir de la versión 2021.2, puede alojar el repositorio de Tableau Server por separado como una instalación independiente. Esto es diferente a usar un servicio en la nube administrado como AWS RDS o Azure Database. Esta configuración se puede realizar de forma local, en AWS EC2 o en una máquina virtual de Azure. Dicha instalación del repositorio de Tableau Server se denominará repositorio externo independiente.

Para ver una lista completa de hosts que puede utilizar para el repositorio externo, consulte Repositorio externo de Tableau Server.

Este tema proporciona orientación sobre los requisitos y configuraciones que son necesarios para que Tableau Server se conecte a una instalación de PostgreSQL y lo use como el repositorio externo de Tableau Server. Este tema no le proporciona las instrucciones detalladas sobre cómo instalar PostgreSQL. Le recomendamos que siga la documentación en el sitio de PostgreSQL para obtener esta información.

Requisitos y recomendaciones

  • Recomendaciones de hardware: la CPU y el almacenamiento dependen de sus requisitos. Para instalaciones más pequeñas, debe tener al menos 50 GB de almacenamiento en disco y un sistema de cuatro procesadores (o 4 núcleos virtuales) con 32 GB de RAM. Consulte la guía de este tema para calcular los requisitos de espacio en disco para realizar copias de seguridad y restaurar. La recomendación general es comenzar con más recursos de hardware y reducir después de la supervisión.

  • Red: la instancia de base de datos de PostgreSQL debe ser accesible por todos los nodos del clúster de Tableau Server. Una forma de hacerlo es que la instancia de base de datos de PostgreSQL pertenezca a un grupo de seguridad con los permisos necesarios para que todos los nodos en el clúster de Tableau Server puedan acceder a él.

  • Compatibilidad con la versión: La versión de PostgreSQL debe coincidir con la versión del repositorio de Tableau Server cuando se instala localmente. Para obtener más información sobre la compatibilidad, consulte Compatibilidad de productos.
  • Seguridad: no se requieren conexiones seguras entre Tableau Server y el repositorio externo mediante SSL, pero se recomiendan.

    Si no desea configurar conexiones seguras entre Tableau Server y el repositorio externo, debe configurar la base de datos PostgreSQL independiente para permitir conexiones no cifradas.

Crear una instancia de base de datos de PostgreSQL independiente

Paso 1: instalar e inicializar PostgreSQL

  1. Utilice la documentación de PostgreSQL para instalar la instancia de base de datos de PostgreSQL para que sirva como repositorio externo para Tableau Server. Es posible que desee configurar un clúster de base de datos de PostgreSQL para cumplir con los requisitos de alta disponibilidad que pueda tener.
  2. Instale el paquete contrib que incluye la extensión uuid-ossp. Este módulo se usa para generar los UUID que Tableau Server usa para las claves en la base de datos.

  3. Inicialice la instancia de PostgreSQL.

Paso 1: configure la instancia de PostgreSQL

Utilizará dos archivos de configuración para configurar la instancia PostgreSQL:

  • pg_hba: este es el archivo de configuración para la autenticación basada en host.
  • postgresql.conf: este es el archivo de configuración general del servidor.

De forma predeterminada, estos archivos se encuentran aquí:

/var/lib/pgsql/12/data (esto puede ser diferente dependiendo de la distribución)

Configuración de superusuario

Elija un nombre de usuario que cumpla sus requisitos. Se recomienda usar postgres como nombre de usuario administrador. Si elige utilizar un nombre de usuario diferente, asegúrese de que el nombre de usuario no comience por pg. El nombre de usuario tampoco puede ser rails, tblwgadmin, tableau, readonly o tbladminviews.

Es un requisito para que el repositorio externo funcione correctamente con Tableau Server.

Red y seguridad

Asegúrese de que todos los nodos de Tableau Server puedan acceder a la instancia de la base de datos. Normalmente, esto consiste en crear un grupo de seguridad que permita el acceso desde los nodos.

Opciones de la base de datos

El puerto puede ser cualquiera, pero recomendamos dejar el valor predeterminado 5432.

Actualizar parámetros

Desde la perspectiva de Tableau Server, la mayoría de los valores de los parámetros para la instancia se pueden establecer en los valores predeterminados. Puede modificar los valores de los parámetros si tiene requisitos específicos de rendimiento o registro, pero le recomendamos enfáticamente que los siguientes parámetros se configuren con los valores predeterminados y no se cambien:

  • standard_conforming_strings

  • escape_string_warning

También recomendamos que el valor para work_mem sea, al menos, 16384 para ayudar a evitar problemas de rendimiento.

Configurar conexiones remotas

Siga estos pasos para actualizar los archivos de configuración:

  1. De forma predeterminada, la configuración en postgresql.conf está configurada para escuchar solo las conexiones locales. Habilite las conexiones remotas realizando los siguientes cambios en la sección de conexiones y autenticación del archivo postgresql.conf:

    Agregue esta línea para permitir conexiones remotas:

    listen_addresses = '*'

  2. Reinicie la instancia de PostgreSQL.

Configurar SSL

No se requieren conexiones seguras entre Tableau Server y el repositorio externo, pero se recomiendan.

Para configurar conexiones cifradas entre Tableau Server y el repositorio externo, siga la guía y los pasos detallados que se describen a continuación:

Al configurar Tableau Server para utilizar la instancia de base de datos de PostgreSQL independiente, deberá proporcionar una autoridad de certificación (CA) raíz de confianza que se utiliza para verificar la conexión con el servidor. Idealmente, el certificado de servidor de la instancia de PostgreSQL independiente debe especificar un nombre de host que se pueda resolver para que Tableau Server pueda usar sslmode, verify-full. Este modo verifica que el certificado del servidor de PostgreSQL fue firmado por una CA confiable y que el nombre de host en el certificado del servidor de PostgreSQL coincide con el nombre de host utilizado para conectarse a la instancia de PostgreSQL. Sin embargo, si eso no es posible, sslmode, verify-ca solo verificará que el certificado del servidor de Postgres fue firmado por una CA confiable.

El siguiente procedimiento proporciona los pasos generales para generar un certificado de CA raíz en el servidor de PostgreSQL. Para obtener información más detallada, lea la documentación de SSL en el sitio web de PostgreSQL (el enlace lleva a la versión 12):

  1. Genere la clave de la autoridad de certificación (CA) raíz firmante.

  2. Cree el certificado de CA raíz.
  3. Cree el certificado y la clave relacionada (por ejemplo, server.csr y server.key) para el servidor de PostgreSQL. El nombre del sujeto del certificado debe coincidir con el nombre del DNS del servidor de PostgreSQL. El nombre del sujeto se establece con la opción -subj con el formato "/CN=<private DNS name>".

  4. Firme el nuevo certificado con el certificado de CA que creó en el paso 2.
  5. Copie los archivos crt y key en el directorio de datos (/pgsql/<version>/data).

  6. El archivo pg_hba.conf controla las conexiones a la base de datos. Agregue esta línea para permitir conexiones remotas. Por ejemplo:

    host all all 10.0.0.0/8 md5

  7. Para habilitar SSL, agregue o actualice el archivo postgresql.conf con:

    ssl = on

    Para restringir las conexiones solo a SSL, use hostssl en lugar de host.

Alta disponibilidad y recuperación ante desastres

Tableau Server no gestiona ni configura alta disponibilidad para el repositorio externo. La base de datos de PostgreSQL admite varias soluciones para estos fines, incluida la replicación y el envío de registros. Para obtener más información, consulte la documentación de alta disponibilidad en el sitio web de PostgreSQL.

En caso de un desastre, si necesita configurar una nueva instancia de PostgreSQL, asegúrese de seguir estos pasos para configurar Tableau Server para usar la nueva instancia.

  1. Cree un nuevo archivo de configuración JSON que contenga información de conexión para la nueva instancia de RDS. Para obtener más información sobre cómo crear un archivo de configuración JSON, consulte el Paso 1 en Instalar Tableau Server con el repositorio externo PostgreSQL.

  2. Utilice el comando tsm topology external-services repository replace-host para indicar a Tableau Server la nueva instancia de PostgreSQL.

    Para obtener más información sobre el comando tsm topology external-services repository replace-host, consulte tsm topology.

¿Quién puede hacer esto?

Solo los administradores de Tableau Server pueden configurar Tableau Server para que utilice el repositorio externo. Si utiliza AWS EC2 o Azure VM para configurar un repositorio externo independiente, debe tener cuentas para acceder a estas plataformas.

¡Gracias por sus comentarios!Sus comentarios se han enviado correctamente. ¡Gracias!