Parte 3 - Preparação para a implantação corporativa do Tableau Server
A Parte 3 descreve os requisitos para preparar sua infraestrutura para implantar a arquitetura de referência do Tableau Server. Antes de começar, recomendamos revisar a Parte 2 - Compreensão da Arquitetura de referência de implantação do Tableau Server .
Além das descrições dos requisitos, este tópico fornece um exemplo de implementação da arquitetura de referência em um ambiente AWS. O restante deste guia baseia-se no exemplo de arquitetura de referência da AWS iniciado neste tópico.
Um princípio básico da arquitetura de referência é a padronização com as melhores práticas de segurança do data center. Especificamente, a arquitetura é projetada para segregar serviços em sub-redes de rede protegidas. A comunicação entre sub-redes é restrita a protocolo específico e tráfego de porta.
O diagrama a seguir ilustra o design da sub-rede da arquitetura de referência para uma implantação local ou na nuvem gerenciada pelo cliente. Para obter um exemplo de implantação de nuvem, consulte a seção abaixo, Exemplo: configurar sub-redes e grupos de segurança na AWS.
Sub-redes
Crie três sub-redes:
- Um nível da Web
- Um nível de aplicativo
- Uma sub-rede de dados.
Regras de grupo de firewall/segurança
As guias abaixo descrevem as regras de firewall para cada nível do datacenter. Para regras de grupo de segurança específicas da AWS, consulte a seção mais adiante neste tópico.
O nível da Web é uma sub-rede DMZ pública que manipulará as solicitações HTTPS de entrada e fará o proxy das solicitações para o nível do aplicativo. Esse design fornece uma camada de defesa contra malware que pode ser direcionado à sua organização. O nível da Web bloqueia o acesso ao nível de aplicativo/dados.
Tráfego | Tipo | Protocolo | Intervalo da porta | Fonte |
---|---|---|---|---|
Entrada | SSH | TCP | 22 | Sub-rede Bastion (para implantações em nuvem) |
Entrada | HTTP | TCP | 80 | Internet (0.0.0.0/0) |
Entrada | HTTPS | TCP | 443 | Internet (0.0.0.0/0) |
Saída | Todo o tráfego | Todos | Todos |
A sub-rede de aplicativo é onde reside a implantação do Tableau Server. A sub-rede do aplicativo inclui os servidores de aplicativos Tableau (Nó 1 e Nó 2). Os servidores de aplicativos do Tableau processam as solicitações do usuário para os servidores de dados e executam a lógica comercial principal.
A sub-rede do aplicativo também inclui os servidores de dados Tableau (Nó 3 e Nó 4).
Todo o tráfego do cliente para o nível do aplicativo é autenticado no nível da Web. O acesso administrativo à sub-rede do aplicativo é autenticado e roteado por meio do host Bastion.
Tráfego | Tipo | Protocolo | Intervalo da porta | Fonte |
---|---|---|---|---|
Entrada | SSH | TCP | 22 | Sub-rede Bastion (para implantações em nuvem) |
Entrada | HTTPS | TCP | 443 | Sub-rede de nível da Web |
Saída | Todo o tráfego | Todos | Todos |
A sub-rede dos dados é onde o servidor de banco de dados PostgreSQL externo reside.
Tráfego | Tipo | Protocolo | Intervalo da porta | Fonte |
---|---|---|---|---|
Entrada | SSH | TCP | 22 | Sub-rede Bastion (para implantações em nuvem) |
Entrada | PostgreSQL | TCP | 5432 | Sub-rede de nível de aplicativo |
Saída | Todo o tráfego | Todos | Todos |
A maioria das equipes de segurança corporativa não permite a comunicação direta do sistema administrativo local com os nós implantados na nuvem. Em vez disso, todo o tráfego SSH administrativo para os nós da nuvem é encaminhado por proxy por meio de um host bastion (também conhecido como "servidor de salto"). Para implantações na nuvem, recomendamos a conexão de proxy do host Bastion para todos os recursos na arquitetura de referência. Esta é uma configuração opcional para ambientes locais.
O host Bastion autentica o acesso administrativo e só permite o tráfego por meio do protocolo SSH.
Tráfego | Tipo | Protocolo | Intervalo da porta | Fonte | Destino |
---|---|---|---|---|---|
Entrada | SSH | TCP | 22 | Endereço IP do computador do administrador | |
Saída | SSH | TCP | 22 | Sub-rede de nível da Web | |
Saída | SSH | TCP | 22 | Sub-rede de nível de aplicativo |
Exemplo: configurar sub-redes e grupos de segurança na AWS
Esta seção fornece procedimentos passo a passo para criar e configurar o ambiente de VPC e rede para a implantação da arquitetura de referência do Tableau Server na AWS.
Os slides abaixo mostram a arquitetura de referência em quatro camadas. Conforme você avança nos slides, os elementos componentes são colocados em camadas no mapa de topologia:
- Topologia de sub-rede VPC e instâncias EC2: um host bastião, dois servidores proxy reversos, quatro servidores Tableau e pelo menos um servidor PostgreSQL.
- Fluxo de protocolo e conectividade com a Internet. Todo o tráfego de entrada é gerenciado por meio do gateway de Internet AWS. O tráfego para a Internet é roteado por meio do NAT.
- Zonas de disponibilidade. Os hosts proxy, Tableau Server e PostgreSQL são implantados uniformemente em duas zonas de disponibilidade.
- Grupos de segurança. Quatro grupos de segurança (Público, Privado, Dados e Bastion) protegem cada camada no nível do protocolo.
Zonas de disponibilidade da AWS e alta disponibilidade
A arquitetura de referência conforme apresentada neste Guia especifica uma implantação que fornece disponibilidade por meio de redundância quando um único host falha. No entanto, no caso da AWS em que a arquitetura de referência é implantada em duas zonas de disponibilidade, a disponibilidade é comprometida no caso muito raro em que uma zona de disponibilidade falha.
Configuração VPC
Esta seção descreve como:
- Instalar e configurar a VPC
- Configurar a conectividade à Internet
- Configurar sub-redes
- Criar e configurar grupos de segurança
Configurar a VPC
O procedimento nesta seção é mapeado para a interface do usuário na experiência VPC "clássica". Você pode alternar a IU para exibir a visualização clássica desativando a Nova experiência de VPC no canto superior esquerdo do Painel VPC da AWS.
Execute o assistente da VPC para criar sub-redes privadas e públicas padrão e roteamento e ACL de rede padrão.
- Antes de configurar um VPC, você deve criar um IP elástico. Crie uma alocação usando todos os padrões.
- Execute o assistente de VPC > "VPC com sub-redes públicas e privadas"
- Aceite a maioria dos padrões. Exceto pelo seguinte:
- Insira um nome de VPC.
- Especifique a ID de alocação do IP elástico.
- Especifique as seguintes máscaras CIDR:
- CIDR IPv4 da sub-rede pública: 10.0.1.0/24, renomeie esta sub-rede como
Public-a
. - CIDR IPv4 da sub-rede privada: 10.0.30.0/24, renomeie esta sub-rede como
Private-a
.
- CIDR IPv4 da sub-rede pública: 10.0.1.0/24, renomeie esta sub-rede como
- Zona de disponibilidade: para ambas sub-redes, selecione a opção para a região em que você está.
Observação: para este exemplo, podemos utilizar a e b para distinguir entre Zonas de disponibilidade em um determinado datacenter AWS. Na AWS, os nomes da zona de disponibilidade podem não corresponder aos exemplos mostrados aqui. Por exemplo, algumas zonas de disponibilidade incluem zonas c e d em um datacenter.
- Clique em Criar VPC.
- Depois que o VPC for criado, crie as sub-redes
Public-b
Private-b
,Data
eBastion
. Para criar uma sub-rede, clique em Sub-redes > Criar sub-rede .Public-b
: para a zona de disponibilidade, selecione a opção b para a região em que você está. Bloco CIDR: 10.0.2.0/24Private-b
: para a zona de disponibilidade, selecione a opção b para a região em que você está. Bloco CIDR: 10.0.31.0/24Data
: para a zona de disponibilidade, selecione a zona a para a região em que você está. Bloco CIDR: 10.0.50.0/24 Opcional: se você planeja replicar o banco de dados externo em um cluster PostgreSQL, crie uma sub-rede Data-b na Zona de disponibilizade b com um bloco CIDR de 10.0.51.0/24.Bastion
: para a zona de disponibilidade, selecione uma das zonas. Bloco CIDR: 10.0.0.0/24
- Depois que as sub-redes forem criadas, edite as tabelas de rota nas sub-redes Pública e Bastion para usar a tabela de rota configurada para o gateway de Internet associado (IGW). E edite as sub-redes Privada e de Dados para usar a tabela de rotas configurada para o conversor de endereço de rede (NAT).
- Para determinar qual tabela de rota está configurada com o IGW ou o NAT, clique em Rotear tabelas no painel AWS. Clique em um dos dois links da tabela de rota para abrir a página de propriedades. Observe o valor de Destino em Rotas > Destino > 0.0.0.0/0. O valor de Destino diferencia o tipo de rota e começará com o fragmento
igw-
ounat-
. - Para atualizar as tabelas de rota, VPC > Sub-redes > [subnet_name]> Tabela de rota > Editar associação da tabela de rota.
- Para determinar qual tabela de rota está configurada com o IGW ou o NAT, clique em Rotear tabelas no painel AWS. Clique em um dos dois links da tabela de rota para abrir a página de propriedades. Observe o valor de Destino em Rotas > Destino > 0.0.0.0/0. O valor de Destino diferencia o tipo de rota e começará com o fragmento
Configurar grupos de segurança
O assistente VPC cria um único grupo de segurança que você não usará. Crie os seguintes grupos de segurança (Grupos de segurança > Criar grupo de segurança). Os hosts EC2 serão instalados nesses grupos em duas zonas de disponibilidade, conforme mostrado no diagrama deslizante acima.
- Crie um novo grupo de segurança: Privado. Nesse local todos os quatro nós do Tableau Server serão instalados. Posteriormente, no processo de instalação, o grupo de segurança Privado será associado às sub-redes 10.0.30.0/24 e 10.0.31.0/24.
- Crie um novo grupo de segurança: Público . É aqui que os servidores proxy serão instalados. Posteriormente, no processo de instalação, o grupo de segurança Público será associado às sub-redes 10.0.1.0/24 e 10.0.2.0/24.
- Crie um novo grupo de segurança: Dados. É aqui que o repositório externo do Tableau PostgreSQL será instalado. Posteriormente, no processo de instalação, o grupo de segurança Dados será associado à sub-rede 10.0.50.0/24 (e, opcionalmente, 10.0.51.0/24).
- Crie um novo grupo de segurança: Bastion. É aqui que você instalará o host Bastion. Posteriormente, no processo de instalação, o grupo de segurança Bastion será associado à sub-rede 10.0.0.0/24.
Especifique as regras de entrada e saída
Na AWS, os grupos de segurança são análogos aos firewalls em um ambiente local. Você deve especificar o tipo de tráfego (por exemplo, https, https etc), protocolo (TCP ou UDP) e portas ou intervalo de portas (por exemplo, 80, 443, etc) que têm permissão para entrar e/ou sair do grupo de segurança. Para cada protocolo, você também deve especificar o destino ou o tráfego de origem.
Regras do grupo de segurança público
Regras de entrada | |||
---|---|---|---|
Tipo | Protocolo | Intervalo da porta | Fonte |
HTTP | TCP | 80 | 0.0.0.0/0 |
HTTPS | TCP | 443 | 0.0.0.0/0 |
SSH | TCP | 22 | Grupo de segurança Bastion |
Regras de saída | |||
---|---|---|---|
Tipo | Protocolo | Intervalo da porta | Destino |
Todo o tráfego | Todos | Todos | 0.0.0.0/0 |
Regras de grupo de segurança privado
O grupo de segurança privada inclui uma regra de entrada para permitir o tráfego HTTP do grupo de segurança pública. Permita o tráfego HTTP apenas durante o processo de implantação, para verificar a conectividade. Recomendamos remover a regra de entrada HTTP, após terminar de implantar o proxy reverso e configurar SSL para Tableau.
Regras de entrada | |||
---|---|---|---|
Tipo | Protocolo | Intervalo da porta | Fonte |
HTTP | TCP | 80 | Grupo de segurança Público |
HTTPS | TCP | 443 | Grupo de segurança Público |
PostgreSQL | TCP | 5432 | Grupo de segurança Dados |
SSH | TCP | 22 | Grupo de segurança Bastion |
Todo o tráfego | Todos | Todos | Grupo de segurança Privado |
Regra de saída | |||
---|---|---|---|
Tipo | Protocolo | Intervalo da porta | Destino |
Todo o tráfego | Todos | Todos | 0.0.0.0/0 |
PostgreSQL | TCP | 5432 | Grupo de segurança Dados |
SSH | TCP | 22 | Grupo de segurança Bastion |
Regras de grupo de segurança Dados
Regras de entrada | |||
---|---|---|---|
Tipo | Protocolo | Intervalo da porta | Fonte |
PostgreSQL | TCP | 5432 | Grupo de segurança Privado |
SSH | TCP | 22 | Grupo de segurança Bastion |
Regras de saída | |||
---|---|---|---|
Tipo | Protocolo | Intervalo da porta | Destino |
Todo o tráfego | Todos | Todos | 0.0.0.0/0 |
PostgreSQL | TCP | 5432 | Grupo de segurança Privado |
SSH | TCP | 22 | Grupo de segurança Bastion |
Regras de grupo de segurança de host Bastion
Regras de entrada | |||
---|---|---|---|
Tipo | Protocolo | Intervalo da porta | Fonte |
SSH | TCP | 22 | O endereço IP e a máscara de rede do computador que você usará para fazer login na AWS (computador administrador). |
SSH | TCP | 22 | Grupo de segurança Privado |
SSH | TCP | 22 | Grupo de segurança Público |
Regras de saída | |||
---|---|---|---|
Tipo | Protocolo | Intervalo da porta | Destino |
SSH | TCP | 22 | O endereço IP e a máscara de rede do computador que você usará para fazer login na AWS (computador administrador). |
SSH | TCP | 22 | Grupo de segurança Privado |
SSH | TCP | 22 | Grupo de segurança Público |
SSH | TCP | 22 | Grupo de segurança Dados |
HTTPS | TCP | 443 | 0.0.0.0/0 (Opcional: crie esta regra se você precisar acessar a Internet para baixar o software de suporte no host Bastion) |
Habilitar atribuição automática de IP público
Fornece um endereço IP para conexão com o host dos servidores proxy e Bastion.
Para sub-redes Public e Bastion:
- Selecione a sub-rede
- No menu Ações, selecione "Modificar configurações de atribuição automática de IP".
- Clique em "Ativar a atribuição automática de endereços IPv4 públicos".
- Clique em Salvar.
Balanceador de carga
Observação: se você estiver instalando na AWS e seguindo o exemplo de implantação neste guia, deverá instalar e configurar o balanceador de carga da AWS posteriormente no processo de implantação, conforme descrito na Parte 5 - Configuração do nível da Web.
Para implantações locais, trabalhe com seus administradores de rede para implantar balanceadores de carga para oferecer suporte à camada da Web da arquitetura de referência:
- Um balanceador de carga de aplicativo voltado para a Web que aceita solicitações HTTPS de clientes Tableau e se comunica com os servidores proxy reverso.
- Proxy reverso:
- Recomendamos um mínimo de dois servidores proxy para redundância e para lidar com a carga do cliente.
- Recebe tráfego HTTPS do balanceador de carga.
- Compatível com sessão fixa para o host do Tableau
- Configure o proxy para balanceamento de carga round robin para cada Tableau Server executando o processo de Gateway.
- Lida com solicitações de autenticação de IdP externo.
- Proxy de encaminhamento: o Tableau Server requer acesso à Internet para licenciamento e funcionalidade de mapa. Dependendo do seu ambiente de proxy de encaminhamento, você pode precisar configurar listas seguras de proxy de encaminhamento para URLs de serviço do Tableau. Consulte Comunicação com a Internet ( Linux(O link abre em nova janela)).
Configurar computadores host
Hardware mínimo recomendado
As recomendações a seguir são baseadas em nossos testes de dados do mundo real na arquitetura de referência.
Servidores de aplicativos:
- CPU: 8 núcleos físicos (16vCPUs),
- RAM: 128 GB (16 GB/núcleo físico)
- Espaço em disco: 100 GB
Servidores de dados
- CPU: 8 núcleos físicos (16vCPUs),
- RAM: 128 GB (16 GB/núcleo físico)
- Espaço em disco: 1 TB. Se sua implantação usará armazenamento externo para o Armazenamento de Arquivo do Tableau, você precisará calcular o espaço em disco apropriado. Consulte Instalar o Tableau Server com o armazenamento de arquivos externo (Linux(O link abre em nova janela)).
Servidores proxy
- CPU: 2 núcleos físicos (4vCPUs),
- RAM: 8 GB (4 GB/núcleo físico)
- Espaço em disco: 100 GB
Banco de dados de repositório externo
- CPU: 8 núcleos físicos (16vCPUs),
- RAM: 128 GB (16 GB/núcleo físico)
- O requisito de espaço em disco depende da carga de dados e de como isso afetará o backup. Consulte a seção Processos de backup e restauração, no tópico Requisitos de espaço em disco (Linux(O link abre em nova janela)).
Estrutura de diretório
A arquitetura de referência recomenda instalar o pacote do Tableau Server e os dados em locais não padrão:
- Instale o pacote em:
/app/tableau_server
: crie esse caminho de diretório antes de instalar o pacote do Tableau Server e, a seguir, especifique o caminho durante a instalação. - Instale os dados do Tableau para:
/data/tableau_data
. Não crie esse diretório antes de instalar o Tableau Server. Em vez disso, você deve especificar o caminho durante a instalação e, em seguida, a instalação do Tableau criará e concederá permissão ao caminho de forma adequada.
Consulte Execute o pacote de instalação e inicialize o TSM para obter detalhes de implementação.
Exemplo: instalar e preparar computadores host na AWS
Esta seção explica como instalar hosts EC2 para cada tipo de servidor na arquitetura de referência do Tableau Server.
A arquitetura de referência requer oito hosts:
- Quatro instâncias para Tableau Server.
- Duas instâncias para servidores proxy (Apache).
- Um exemplo para host Bastion.
- Uma ou duas instâncias de banco de dados EC2 PostgreSQL
Detalhes da instância de host
Instale os computadores host de acordo com os detalhes abaixo.
Tableau Server
- Amazon Linux 2
- Tipo de instância: m5a.8xlarge
- ID do grupo de segurança: Privado
- Armazenamento: tipo de volume EBS, 150 GiB, gp2 Se sua implantação usará armazenamento externo para o Armazenamento de Arquivo do Tableau, você precisará calcular o espaço em disco apropriado. Consulte Instalar o Tableau Server com o armazenamento de arquivos externo (Linux(O link abre em nova janela)).
- Rede: instale dois hosts EC2 em cada sub-rede privada (10.0.30.0/24 e 10.0.31.0/24).
- Copie a última versão de manutenção do pacote rpm do Tableau Server 2021.2 (ou posterior) da página de downloads do Tableau(O link abre em nova janela) para cada host do Tableau.
Host Bastion
- Amazon Linux 2
- Tipo de instância: t3.micro
- ID do grupo de segurança: Bastion
- Armazenamento: tipo de volume EBS, 50 GiB, gp2
- Rede: sub-rede Bastion 10.0.0.0/24
Tableau Server Independent Gateway
- Amazon Linux 2
- Tipo de instância: t3.xlarge
- ID do grupo de segurança: Público
- Armazenamento: tipo de volume EBS, 100 GiB, gp2
- Rede: instale uma instância EC2 em cada sub-rede pública (10.0.1.0/24 e 10.0.2.0/24)
Host PostgreSQL EC2
- Amazon Linux 2
- Tipo de instância: r5.4xlarge
- ID do grupo de segurança: Dados
- Armazenamento: o requisito de espaço em disco depende da carga de dados e de como isso afetará o backup. Consulte a seção Processos de backup e restauração, no tópico Requisitos de espaço em disco (Linux(O link abre em nova janela)).
- Rede: sub-rede de dados 10.0.50.0/24. (Se você estiver replicando PostgreSQL em um cluster HA, instale o segundo host na sub-rede 10.0.51.0/24)
Verificação: conectividade de VPC
Depois de instalar os computadores host, verifique a configuração da rede. Verifique a conectividade entre os hosts conectando-se com o SSH do host no grupo de segurança Bastion aos hosts em cada sub-rede.
Exemplo: conecte-se ao host Bastion na AWS
Configure seu computador administrativo para o agente ssh. Isso permite que você se conecte a hosts na AWS, sem colocar o arquivo de chave privada em nenhuma instância do EC2.
Para configurar o ssh-agent em um Mac, execute o seguinte comando:
ssh-add -K myPrivateKey.pem
ou para o Mac OS mais recente,ssh-add --apple-use-keychain myPrivateKey.pem
Para Windows, consulte o tópico Conectar-se com segurança a instâncias do Linux em execução em uma VPC da Amazon privada(O link abre em nova janela) .
Conecte-se ao host Bastion executando o seguinte comando:
ssh -A ec2-user@<public-IP>
Em seguida, você pode se conectar a outros hosts na VPC do host Bastion, usando o endereço IP privado, por exemplo:
ssh -A ec2-user@10.0.1.93