Parte 2: Comprender la arquitectura de referencia de la implementación de Tableau Server
La siguiente imagen muestra los procesos relevantes de Tableau Server y cómo se implementan en la arquitectura de referencia. Esta implementación se considera la implementación mínima de Tableau Server apropiada para la empresa.
Los diagramas de proceso de este tema pretenden mostrar los principales procesos definitorios de cada nodo. Hay muchos procesos de soporte que también se ejecutan en los nodos que no se muestran en los diagramas. Para obtener una lista de todos los procesos, consulte la sección de configuración de esta guía, Paso 4: Instalar y configurar Tableau Server.
Procesos de Tableau Server
La arquitectura de referencia de Tableau Server es una implementación de clústeres de Tableau Server de cuatro nodos con un repositorio externo en PostgreSQL:
- Nodo inicial de Tableau Server (nodo 1): ejecuta los servicios administrativos y de licencias de TSM necesarios que solo se pueden ejecutar en un único nodo del clúster. En el contexto empresarial, el nodo inicial de Tableau Server es el nodo principal del clúster. Este nodo también ejecuta servicios de aplicaciones redundantes con el nodo 2.
- Nodos de aplicación de Tableau Server (nodo 1 y nodo 2): los dos nodos atienden solicitudes de clientes, se conectan y consultan fuentes de datos y a los nodos de datos.
- Nodos de datos de Tableau Server (nodo 3 y nodo 4): dos nodos que se dedican a administrar datos.
- PostgreSQL externo: este host ejecuta el proceso del repositorio de Tableau Server. Para conseguir una implementación de alta disponibilidad, debe ejecutar un host PostgreSQL adicional para la redundancia activa/pasiva.
También puede ejecutar PostgreSQL en Amazon RDS. Para obtener más información sobre las diferencias entre ejecutar el repositorio en RDS y una instancia EC2, consulte Repositorio externo de Tableau Server (Linux(El enlace se abre en una ventana nueva)).
La implementación de Tableau con un repositorio externo requiere una licencia de Tableau Advanced Management.
Si su organización no tiene experiencia interna en administradores de bases de datos, puede ejecutar opcionalmente el proceso del repositorio de Tableau Server en la configuración interna predeterminada de PostgreSQL. En el escenario predeterminado, el repositorio se ejecuta en un nodo de Tableau con PostgreSQL insertado. En este caso, recomendamos ejecutar el repositorio en un nodo de Tableau dedicado y un repositorio pasivo en un nodo dedicado adicional para admitir la conmutación por error del repositorio. Consulte Conmutación por error del repositorio (Linux(El enlace se abre en una ventana nueva)).
A modo de ejemplo, la implementación de AWS descrita en esta guía explica cómo implementar el repositorio externo en PostgreSQL que se ejecuta en una instancia EC2.
Opcional: si su organización utiliza almacenamiento externo, puede implementar el almacén de archivos de Tableau como un servicio externo. Esta guía no incluye el almacén de archivos externo en el escenario de implementación principal. Consulte Instalar Tableau Server con el almacén de archivos externo (Linux(El enlace se abre en una ventana nueva)).
La implementación de Tableau con un almacén de archivos externo requiere una licencia de Tableau Advanced Management.
Repositorio PostgresSQL
El repositorio de Tableau Server es una base de datos PostgresSQL que almacena datos de servidor. Estos datos incluyen información sobre usuarios, grupos y asignaciones de grupo, permisos, proyectos, fuentes de datos, metadatos de extractos e información de actualización de Tableau Server.
La implementación predeterminada de PostgresSQL consume casi el 50 % de los recursos de memoria del sistema. Según su uso (para producción y grandes implementaciones de producción), el uso de recursos puede aumentar. Por esta razón, recomendamos ejecutar el proceso del repositorio en un equipo que no esté ejecutando ningún otro componente de servidor que consuma muchos recursos, como VizQL, un procesador en segundo plano o motor de datos. La ejecución del proceso del repositorio junto con cualquiera de estos componentes creará conflictos de IO, restricciones de recursos y degradará el rendimiento general de la implementación.
Nodo 1: nodo inicial
El nodo inicial ejecuta una pequeña cantidad de procesos importantes y comparte la carga de la aplicación con el nodo 2.
El primer equipo en el que instale Tableau, el "nodo inicial", tiene algunas características exclusivas. Tres procesos se ejecutan solo en el nodo inicial y no se pueden mover a cualquier otro nodo, excepto en un contexto de error, el Servicio de licencias (Administrador de licencias), el Servicio de activación y el Controlador de TSM (Controlador de administración).
Conmutación por error del nodo 1 y restauración automatizada
Los servicios de licencia, activación y controlador de TSM son fundamentales para el buen estado de una implementación de Tableau Server. En el caso de una error del nodo 1, los usuarios aún podrán conectarse a la implementación de Tableau Server, ya que una arquitectura de referencia configurada correctamente enrutará las solicitudes al nodo 2. Sin embargo, sin estos servicios básicos, la implementación estará en un estado crítico de error pendiente. Consulte Recuperación automatizada inicial del nodo.
Nodos 1 y 2: servidores de aplicaciones
Los nodos 1 y 2 ejecutan los procesos de Tableau Server que atienden las solicitudes de los clientes, consultan las fuentes de datos, generan visualizaciones, manejan el contenido y la administración, y otra lógica empresarial de Tableau. Los servidores de aplicaciones no almacenan datos de usuario.
Nota: "Servidor de aplicaciones" es un término que también hace referencia a un proceso de Tableau Server que se incluye en TSM. El proceso subyacente para el "Servidor de aplicaciones" es VizPortal.
Ejecutar en paralelo, el nodo 1 y el nodo 2 se escalan para atender las solicitudes de la lógica de equilibrio de carga que se ejecuta en los servidores proxy inversos. Como nodos redundantes, si uno de estos nodos falla, las solicitudes del cliente y el servicio quedan a cargo del nodo restante.
La arquitectura de referencia se ha diseñado para que los procesos de aplicación complementarios se ejecuten en el mismo equipo. Esto significa que los procesos no compiten por los recursos informáticos y no crean contención.
Por ejemplo: VizQL, un servicio de procesamiento central en los servidores de aplicaciones, está muy vinculado a la CPU y a la memoria; VizQL utiliza casi el 60-70 % de la CPU y la memoria del equipo. Por esta razón, la arquitectura de referencia está diseñada para que ningún otro proceso vinculado a la memoria o CPU esté en el mismo nodo que VizQL. Las pruebas muestran que la cantidad de carga y el número de usuarios no afectan a la memoria o el uso de la CPU en los nodos VizQL. Por ejemplo, reducir la cantidad de usuarios simultáneos en nuestra prueba de carga solo afecta al rendimiento del dashboard o al proceso de carga de visualización, pero no reduce la utilización de recursos. Por lo tanto, según la memoria disponible y la CPU durante el uso máximo, puede considerar la posibilidad de agregar más procesos VizQL. Como punto de partida para los libros de trabajo típicos, asigne 4 núcleos por proceso VizQL.
Escalar servidores de aplicaciones
La arquitectura de referencia está diseñada para escalarse en función de un modelo basado en el uso. Como punto de partida general, recomendamos un mínimo de dos servidores de aplicaciones, cada uno de los cuales con una capacidad de 1000 usuarios. A medida que aumente la base de usuarios, agregue un servidor de aplicaciones por cada 1000 usuarios adicionales. Supervise el uso y el rendimiento para ajustar la base de usuarios por host para su organización.
Nodos 3 y 4: servidores de datos
Los procesos Almacén de archivos, Motor de datos (Hyper) y Procesador en segundo plano están ubicados en los nodos 3 y 4 por las siguientes razones:
- Optimización de extracción: ejecutar el procesador en segundo plano, Hyper y el almacén de archivos en el mismo nodo optimiza el rendimiento y la fiabilidad. Durante el proceso de extracción, el procesador en segundo plano consulta la base de datos de destino, crea el archivo Hyper en el mismo nodo y luego lo carga en el almacén de archivos. Al ubicar estos procesos en el mismo nodo, el flujo de trabajo de creación de extracción no requiere copiar grandes cantidades de datos a través de la red o los nodos.
- Equilibrio de recursos gratuito: el procesador en segundo plano hace principalmente un uso intensivo de la CPU. El motor de datos es un proceso que consume mucha memoria. La combinación de estos procesos permite la máxima utilización de recursos en cada nodo.
- Consolidación de procesos de datos: dado que cada uno de estos procesos son procesos de datos de back-end, tiene sentido ejecutarlos en el nivel de datos más seguro. En versiones futuras de la arquitectura de referencia, los servidores de aplicaciones y datos se ejecutarán en niveles separados. Sin embargo, debido a las dependencias de las aplicaciones en la arquitectura de Tableau, los servidores de aplicaciones y datos deben ejecutarse en el mismo nivel en este momento.
Escalar servidores de datos
Al igual que con los servidores de aplicaciones, la planificación de los recursos necesarios para los servidores de datos de Tableau requiere un modelo basado en el uso. En general, suponga que cada servidor de datos puede admitir hasta 2000 trabajos de actualización de extracción por día. A medida que aumenten los trabajos de extracción, agregue servidores de datos adicionales sin el servicio del almacén de archivos. Generalmente, la implementación del servidor de datos de dos nodos es adecuada para implementaciones que utilizan el sistema de archivos local para el servicio del almacén de archivos. Tenga en cuenta que agregar más servidores de aplicaciones no afecta el rendimiento ni la escala de los servidores de datos de forma lineal. De hecho, con la excepción de algunos gastos generales de consultas de usuarios adicionales, el impacto de agregar más usuarios y hosts de aplicaciones es mínimo.