Parte 3: preparación para la implementación de Tableau Server Enterprise
La parte 3 describe los requisitos para preparar su infraestructura para implementar la arquitectura de referencia de Tableau Server. Antes de comenzar, recomendamos revisar la Parte 2: Comprender la arquitectura de referencia de la implementación de Tableau Server.
Además de las descripciones de los requisitos, este tema proporciona un ejemplo de implementación de la arquitectura de referencia en un entorno de AWS. El resto de esta guía se basa en el ejemplo de arquitectura de referencia de AWS que se inició en este tema.
Un principio fundamental de la arquitectura de referencia es la estandarización con las prácticas recomendadas de seguridad del centro de datos. En concreto, la arquitectura está diseñada para segregar servicios en subredes de red protegidas. La comunicación entre subredes está restringida a un protocolo específico y al tráfico de puertos.
El siguiente diagrama ilustra el diseño de subred de la arquitectura de referencia para una implementación local o una implementación en la nube administrada por el cliente. Para ver un ejemplo de implementación en la nube, consulte la sección siguiente, Ejemplo: configurar subredes y grupos de seguridad en AWS.
Subredes
Cree tres subredes:
- Un nivel web
- Un nivel de aplicación
- Una subred de datos.
Firewall/reglas del grupos de seguridad
Las pestañas a continuación describen las reglas de firewall para cada nivel del centro de datos. Para conocer las reglas de grupo de seguridad específicas de AWS, consulte la sección más adelante en este tema.
El nivel web es una subred DMZ pública que manejará las solicitudes HTTPS entrantes y enviará las solicitudes al nivel de aplicación. Este diseño proporciona una capa de defensa contra el malware que puede estar dirigido a su organización. El nivel web bloquea el acceso al nivel de aplicación/datos.
Tráfico | Tipo | Protocolo | Intervalo de puertos | Fuente |
---|---|---|---|---|
Entrante | SSH | TCP | 22 | Subred Bastion (para implementaciones en la nube) |
Entrante | HTTP | TCP | 80 | Internet (0.0.0.0/0) |
Entrante | HTTPS | TCP | 443 | Internet (0.0.0.0/0) |
Saliente | Todo el tráfico | Todos | Todos |
La subred de la aplicación es donde reside la implementación de Tableau Server. La subred de la aplicación incluye los servidores de aplicaciones de Tableau (Nodo 1 y Nodo 2). Los servidores de aplicaciones de Tableau procesan las solicitudes de los usuarios a los servidores de datos y ejecutan la lógica empresarial central.
La subred de la aplicación también incluye los servidores de datos de Tableau (Nodo 3 y Nodo 4).
Todo el tráfico del cliente al nivel de la aplicación se autentica en el nivel web. El acceso administrativo a la subred de la aplicación se autentica y se enruta a través del host de Bastion.
Traffic | Tipo | Protocolo | Intervalo de puertos | Fuente |
---|---|---|---|---|
Entrante | SSH | TCP | 22 | Subred Bastion (para implementaciones en la nube) |
Entrante | HTTPS | TCP | 443 | Subred de nivel web |
Saliente | Todo el tráfico | Todos | Todos |
La subred de datos es donde reside el servidor de la base de datos PostgreSQL externa.
Traffic | Tipo | Protocolo | Intervalo de puertos | Fuente |
---|---|---|---|---|
Entrante | SSH | TCP | 22 | Subred Bastion (para implementaciones en la nube) |
Entrante | PostgreSQL | TCP | 5432 | Subred de nivel de aplicación |
Saliente | Todo el tráfico | Todos | Todos |
La mayoría de los equipos de seguridad empresarial no permiten la comunicación directa desde el sistema administrativo local a los nodos implementados en la nube. En cambio, todo el tráfico SSH administrativo a los nodos de la nube se envía mediante proxy a través de un host de Bastion (también denominado "servidor de salto"). Para las implementaciones en la nube, recomendamos la conexión proxy del host de Bastion a todos los recursos de la arquitectura de referencia. Esta es una configuración opcional para entornos locales.
El host de Bastion autentica el acceso administrativo y solo permite el tráfico a través del protocolo SSH.
Traffic | Tipo | Protocolo | Intervalo de puertos | Fuente | Destino |
---|---|---|---|---|---|
Entrante | SSH | TCP | 22 | Dirección IP del equipo de administración | |
Saliente | SSH | TCP | 22 | Subred de nivel web | |
Saliente | SSH | TCP | 22 | Subred de nivel de aplicación |
Ejemplo: configurar subredes y grupos de seguridad en AWS
Esta sección proporciona procedimientos paso a paso para crear y configurar el entorno de red y VPC para la implementación de la arquitectura de referencia de Tableau Server en AWS.
Las diapositivas siguientes muestran la arquitectura de referencia en cuatro capas. A medida que avanza por las diapositivas, los elementos de los componentes se superponen en el mapa de topología:
- Topología de subred de VPC e instancias EC2: un host de Bastion, dos servidores proxy inversos, cuatro servidores Tableau y al menos un servidor PostgreSQL.
- Flujo de protocolo y conectividad a Internet. Todo el tráfico entrante se administra a través de la puerta de enlace de Internet de AWS. El tráfico a Internet se enruta a través de NAT.
- Zonas de disponibilidad. El proxy, Tableau Server y los hosts de PostgreSQL se implementan de manera uniforme en dos zonas de disponibilidad.
- Grupos de seguridad. Cuatro grupos de seguridad (público, privado, de datos y Bastion) protegen cada nivel a nivel de protocolo.
Zonas de disponibilidad de AWS y alta disponibilidad
La arquitectura de referencia que se presenta en esta guía especifica una implementación que proporciona disponibilidad a través de la redundancia cuando falla un solo host. Sin embargo, en el caso de AWS, donde la arquitectura de referencia se implementa en dos zonas de disponibilidad, la disponibilidad no sería segura en el caso muy poco común de que falle una zona de disponibilidad.
Configuración VPC
Esta sección describe cómo:
- Instalar y configurar el VPC
- Configurar la conectividad a Internet
- Configurar subredes
- Crear y configurar grupos de seguridad
Configurar VPC
El procedimiento de esta sección se asigna a la interfaz de usuario en la experiencia de VPC "clásica". Puede alternar la interfaz de usuario para mostrar la vista clásica desactivando la Nueva experiencia de VPC en la esquina superior izquierda del panel de AWS VPC.
Ejecute el asistente para VPC para crear subredes privadas y públicas predeterminadas y enrutamiento predeterminado y ACL de red.
- Antes de configurar una VPC, debe crear una IP Elastic. Cree una asignación utilizando todos los valores predeterminados.
- Ejecute el asistente para VPC> "VPC con subredes públicas y privadas"
- Acepte la mayoría de los valores predeterminados. Excepto por lo siguiente:
- Escriba un nombre de VPC.
- Especifique el ID de asignación de IP Elastic.
- Especifique las siguientes máscaras CIDR:
- Subred pública IPv4 CIDR: 10.0.1.0/24, cambie el nombre de esta subred a
Public-a
. - Subred privada IPv4 CIDR: 10.0.30.0/24, cambie el nombre de esta subred a
Private-a
.
- Subred pública IPv4 CIDR: 10.0.1.0/24, cambie el nombre de esta subred a
- Zona de disponibilidad: para ambas subredes, seleccione la opción a para la región en la que se encuentra.
Nota: Para los propósitos de este ejemplo, utilizamos a y b para distinguir entre zonas de disponibilidad en un determinado centro de datos de AWS. En AWS, es posible que los nombres de las zonas de disponibilidad no coincidan con los ejemplos que se muestran aquí. Por ejemplo, algunas zonas de disponibilidad incluyen las zonas c y d dentro de un centro de datos.
- Haga clic en Crear VPC.
- Una vez creada la VPC, cree las subredes
Public-b
,Private-b
,Data
yBastion
. Para crear una subred, haga clic en Subredes > Crear subred .Public-b
: Para Zona de disponibilidad, seleccione la opción b para la región en la que se encuentra. Bloque de CIDR: 10.0.2.0/24Private-b
: Para Zona de disponibilidad, seleccione la opción b para la región en la que se encuentra. Bloque de CIDR: 10.0.31.0/24Data
: Para Zona de disponibilidad, seleccione la zona a para la región en la que se encuentra. Bloque de CIDR: 10.0.50.0/24 Opcional: Si planea replicar la base de datos externa en un clúster de PostgreSQL, cree una subred Data-b en la zona de disponibilidad b con un bloque CIDR de 10.0.51.0/24.Bastion
: para Zona de disponibilidad, seleccione una de las zonas. Bloque CIDR: 10.0.0.0/24
- Una vez creadas las subredes, edite las tablas de enrutamiento en las subredes Public y Bastion para usar la tabla de enrutamiento que está configurada para la puerta de enlace de Internet asociada (IGW). Después, edite las subredes Private y Data para usar la tabla de enrutamiento que está configurada para el traductor de direcciones de red (NAT).
- Para determinar qué tabla de enrutamiento está configurada con IGW o NAT, haga clic en Tablas de enrutamiento en el panel de AWS. Seleccione uno de los dos enlaces de la tabla de rutas para abrir la página de propiedades. Mire el valor de destino en Rutas > Destino > 0.0.0.0/0. El valor de destino diferencia el tipo de ruta y comenzará con la cadena
igw-
onat-
. - Para actualizar las tablas de enrutamiento, VPC > Subredes > [nombre_subred] > Tabla de enrutamiento > Editar asociación de la tabla de enrutamiento.
- Para determinar qué tabla de enrutamiento está configurada con IGW o NAT, haga clic en Tablas de enrutamiento en el panel de AWS. Seleccione uno de los dos enlaces de la tabla de rutas para abrir la página de propiedades. Mire el valor de destino en Rutas > Destino > 0.0.0.0/0. El valor de destino diferencia el tipo de ruta y comenzará con la cadena
Configurar grupos de seguridad
El asistente de VPC crea un único grupo de seguridad que no utilizará. Cree los siguientes grupos de seguridad (Grupos de seguridad > Crear grupo de seguridad). Los hosts EC2 se instalarán en estos grupos en dos zonas de disponibilidad, como se muestra en el diagrama de diapositivas anterior.
- Cree un nuevo grupo de seguridad: Privado. Aquí es donde se instalarán los 4 nodos de Tableau Server. Más adelante durante la instalación, el grupo de seguridad privado se asociará con las subredes 10.0.30.0/24 y 10.0.31.0/24.
- Cree un nuevo grupo de seguridad: Público. Aquí es donde se instalarán los servidores proxy. Más adelante durante la instalación, el grupo de seguridad público se asociará con las subredes 10.0.1.0/24 y 10.0.2.0/24.
- Cree un nuevo grupo de seguridad: Datos. Aquí es donde se instalará el repositorio de Tableau externo de PostgreSQL. Más adelante durante la instalación, el grupo de seguridad de datos se asociará con la subred 10.0.50.0/24 (y, opcionalmente, con la 10.0.51.0/24).
- Cree un nuevo grupo de seguridad: Bastion. Aquí es donde instalará el host de Bastion. Más adelante durante la instalación, el grupo de seguridad Bastion se asociará con las subredes 10.0.1.0/24 y 10.0.0.0/24.
Especificar reglas de entrada y salida
En AWS, los grupos de seguridad son análogos a los firewalls en un entorno local. Debe especificar el tipo de tráfico (por ejemplo, Https, https, etc.), el protocolo (TCP o UDP) y los puertos o intervalo de puertos (por ejemplo, 80, 443, etc.) que pueden entrar o salir del grupo de seguridad. Para cada protocolo, también debe especificar el tráfico de origen o destino.
Reglas del grupo de seguridad público
Reglas de entrada | |||
---|---|---|---|
Tipo | Protocolo | Intervalo de puertos | Fuente |
HTTP | TCP | 80 | 0.0.0.0/0 |
HTTPS | TCP | 443 | 0.0.0.0/0 |
SSH | TCP | 22 | Grupo de seguridad Bastion |
Reglas de salida | |||
---|---|---|---|
Tipo | Protocolo | Intervalo de puertos | Destino |
Todo el tráfico | Todos | Todos | 0.0.0.0/0 |
Reglas del grupo de seguridad privado
El grupo de seguridad privado incluye una regla de entrada para permitir el tráfico HTTP del grupo de seguridad público. Permita el tráfico HTTP solo durante el proceso de implementación para verificar la conectividad. Recomendamos eliminar la regla de entrada HTTP una vez que haya terminado de implementar el proxy inverso y configurar SSL en Tableau.
Reglas de entrada | |||
---|---|---|---|
Tipo | Protocolo | Intervalo de puertos | Fuente |
HTTP | TCP | 80 | Grupo de seguridad público |
HTTPS | TCP | 443 | Grupo de seguridad público |
PostgreSQL | TCP | 5432 | Grupo de seguridad de datos |
SSH | TCP | 22 | Grupo de seguridad Bastion |
Todo el tráfico | Todos | Todos | Grupo de seguridad privado |
Regla de salida | |||
---|---|---|---|
Tipo | Protocolo | Intervalo de puertos | Destino |
Todo el tráfico | Todos | Todos | 0.0.0.0/0 |
PostgreSQL | TCP | 5432 | Grupo de seguridad de datos |
SSH | TCP | 22 | Grupo de seguridad Bastion |
Reglas del grupo de seguridad de datos
Reglas de entrada | |||
---|---|---|---|
Tipo | Protocolo | Intervalo de puertos | Fuente |
PostgreSQL | TCP | 5432 | Grupo de seguridad privado |
SSH | TCP | 22 | Grupo de seguridad Bastion |
Reglas de salida | |||
---|---|---|---|
Tipo | Protocolo | Intervalo de puertos | Destino |
Todo el tráfico | Todos | Todos | 0.0.0.0/0 |
PostgreSQL | TCP | 5432 | Grupo de seguridad privado |
SSH | TCP | 22 | Grupo de seguridad Bastion |
Reglas del grupo de seguridad del host de Bastion
Reglas de entrada | |||
---|---|---|---|
Tipo | Protocolo | Intervalo de puertos | Fuente |
SSH | TCP | 22 | La dirección IP y la máscara de red del equipo que utilizará para iniciar sesión en AWS (equipo de administración). |
SSH | TCP | 22 | Grupo de seguridad privado |
SSH | TCP | 22 | Grupo de seguridad público |
Reglas de salida | |||
---|---|---|---|
Tipo | Protocolo | Intervalo de puertos | Destino |
SSH | TCP | 22 | La dirección IP y la máscara de red del equipo que utilizará para iniciar sesión en AWS (equipo de administración). |
SSH | TCP | 22 | Grupo de seguridad privado |
SSH | TCP | 22 | Grupo de seguridad público |
SSH | TCP | 22 | Grupo de seguridad de datos |
HTTPS | TCP | 443 | 0.0.0.0/0 (Opcional: Cree esta regla si necesita acceder a Internet para descargar software de soporte en el host de Bastion) |
Habilitar la asignación automática de IP pública
Esto le proporciona una dirección IP para conectarse a los servidores proxy y al host de Bastion.
Para subredes públicas y Bastion:
- Seleccione la subred
- En el menú Acciones, seleccione "Modificar la configuración de asignación automática de IP".
- Haga clic en "Habilitar la asignación automática de direcciones IPv4 públicas".
- Haga clic en Guardar.
Equilibrador de carga
Nota: Si está instalando en AWS y sigue la implementación de ejemplo de esta guía, debe instalar y configurar el equilibrador de carga de AWS más adelante en el proceso de implementación, como se describe en la Parte 5: Configuración del nivel web.
Para implementaciones locales, trabaje con sus administradores de red para implementar equilibradores de carga para admitir el nivel web de la arquitectura de referencia:
- Un equilibrador de carga de aplicaciones orientado a la web que acepta solicitudes HTTPS de clientes de Tableau y se comunica con los servidores proxy inversos.
- Proxy inverso:
- Recomendamos un mínimo de dos servidores proxy para la redundancia y para manejar la carga de clientes.
- Recibe tráfico HTTPS del equilibrador de carga.
- Admite la sesión fija en el host de Tableau.
- Configure el proxy para el equilibrio de carga por turnos para cada Tableau Server que ejecute el proceso de Gateway.
- Maneja solicitudes de autenticación del IdP externo.
- Proxy de reenvío: Tableau Server requiere acceso a Internet para las licencias y la funcionalidad de mapas. Dependiendo de su entorno de proxy de reenvío, es posible que deba configurar listas seguras de proxy de reenvío para las URL de servicio de Tableau. Consulte Comunicación con Internet (Linux(El enlace se abre en una ventana nueva)).
Configurar equipos host
Hardware mínimo recomendado
Las siguientes recomendaciones se basan en nuestras pruebas de datos del mundo real en la arquitectura de referencia.
Servidores de aplicaciones:
- CPU: 8 núcleos físicos (16 vCPU),
- RAM: 128 GB (16 GB/núcleo físico)
- Espacio en disco: 100 GB
Servidores de datos
- CPU: 8 núcleos físicos (16 vCPU),
- RAM: 128 GB (16 GB/núcleo físico)
- Espacio en disco: 1 TB. Si su implementación hará uso de almacenamiento externo para el almacén de archivos de Tableau, necesitará calcular el espacio de disco apropiado. Consulte Instalar Tableau Server con el almacén de archivos externo (Linux(El enlace se abre en una ventana nueva)).
Servidores proxy
- CPU: 2 núcleos físicos (4 vCPU),
- RAM: 8 GB (4 GB/núcleo físico)
- Espacio en disco: 100 GB
Base de datos del repositorio externo
- CPU: 8 núcleos físicos (16 vCPU),
- RAM: 128 GB (16 GB/núcleo físico)
- El requisito de espacio en disco depende de la carga de datos y de cómo afectará a la copia de seguridad. Consulte la sección, Procesos de copia de seguridad y restauración, en el tema Requisitos de espacio en disco (Linux(El enlace se abre en una ventana nueva)).
Estructura de directorios
La arquitectura de referencia recomienda instalar el paquete de Tableau Server y los datos en ubicaciones no predeterminadas:
- Instalar paquete en:
/app/tableau_server
. Cree esta ruta de directorio antes de instalar el paquete de Tableau Server y luego especifique esta ruta durante la instalación. - Instale los datos de Tableau para:
/data/tableau_data
. No cree este directorio antes de instalar Tableau Server. En su lugar, debe especificar la ruta durante la instalación y luego Tableau Setup creará y otorgará el permiso correspondiente a la ruta.
Consulte Ejecutar el paquete de instalación e inicializar TSM para obtener detalles sobre la implementación.
Ejemplo: instalar y preparar equipos host en AWS
Esta sección explica cómo instalar hosts EC2 para cada tipo de servidor en la arquitectura de referencia de Tableau Server.
La arquitectura de referencia requiere ocho hosts:
- Cuatro instancias para Tableau Server.
- Dos instancias para servidores proxy (Apache).
- Una instancia para el host de Bastion.
- Una o dos instancias de base de datos EC2 PostgreSQL
Detalles de la instancia de host
Instale los equipos host de acuerdo con los detalles a continuación.
Tableau Server
- Amazon Linux 2
- Tipo de instancia: m5a.8xlarge
- ID de grupo de seguridad: Privado
- Almacenamiento: EBS, 150 GiB, tipo de volumen gp2. Si su implementación hará uso de almacenamiento externo para el almacén de archivos de Tableau, necesitará calcular el espacio de disco apropiado. Consulte Instalar Tableau Server con el almacén de archivos externo (Linux(El enlace se abre en una ventana nueva)).
- Red: instale dos hosts EC2 en cada subred privada (10.0.30.0/24 y 10.0.31.0/24).
- Copie el paquete rpm de versiones de mantenimiento de Tableau Server 2021.2 (o versiones posteriores) más reciente desde la página de descargas de Tableau(El enlace se abre en una ventana nueva) en cada host de Tableau.
Host de Bastion
- Amazon Linux 2
- Tipo de instancia: t3.micro
- ID de grupo de seguridad: Bastion
- Almacenamiento: EBS, 50 GiB, tipo de volumen gp2
- Red: subred de Bastion 10.0.0.0/24
Puerta de enlace independiente de Tableau Server
- Amazon Linux 2
- Tipo de instancia: t3.xlarge
- ID de grupo de seguridad: Público
- Almacenamiento: EBS, 100 GiB, tipo de volumen gp2
- Red: instale una instancia EC2 en cada subred pública (10.0.1.0/24 y 10.0.2.0/24)
Host EC2 de PostgreSQL
- Amazon Linux 2
- Tipo de instancia: r5.4xlarge
- ID de grupo de seguridad: Datos
- Almacenamiento: el requisito de espacio en disco depende de la carga de datos y de cómo afectará a la copia de seguridad. Consulte la sección, Procesos de copia de seguridad y restauración, en el tema Requisitos de espacio en disco (Linux(El enlace se abre en una ventana nueva)).
- Red: subred privada 10.0.50.0/24. (Si está replicando PostgreSQL en un clúster de alta disponibilidad, instale el segundo host en la subred 10.0.51.0/24)
Verificación: conectividad VPC
Una vez que haya instalado los equipos host, verifique la configuración de la red. Compruebe la conectividad entre los hosts conectándose con SSH desde el host en el grupo de seguridad de Bastion a los hosts en cada subred.
Ejemplo: conectarse al host de Bastion en AWS
Configure su equipo de administración para ssh-agent. Esto le permite conectarse a hosts en AWS sin colocar su archivo de clave privada en ninguna instancia EC2.
Para configurar ssh-agent en un Mac, ejecute el siguiente comando:
ssh-add -K myPrivateKey.pem
o para Mac OS más reciente,ssh-add --apple-use-keychain myPrivateKey.pem
Para Windows, consulte el tema Conexión segura a instancias de Linux que se ejecutan en una Amazon VPC privada(El enlace se abre en una ventana nueva).
Conéctese al host de Bastion ejecutando el siguiente comando:
ssh -A ec2-user@<public-IP>
Después puede conectarse a otros hosts en la VPC desde el host de Bastion, utilizando la dirección IP privada, por ejemplo:
ssh -A ec2-user@10.0.1.93