Skip to main content
Você pode usar o AWS PrivateLink para estabelecer conectividade segura entre VPCs, serviços da AWS, seus sistemas on-premise e o ClickHouse Cloud sem expor o tráfego à internet pública. Este documento descreve as etapas para se conectar ao ClickHouse Cloud usando o AWS PrivateLink.
O AWS PrivateLink oferece suporte apenas a conexões iniciadas da sua AWS VPC para o ClickHouse Cloud. Ele não pode ser usado para conexões iniciadas do ClickHouse Cloud para serviços na sua VPC, como um banco de dados privado.
Para restringir o acesso aos seus serviços do ClickHouse Cloud exclusivamente por meio de endereços do AWS PrivateLink, siga as instruções fornecidas pelo ClickHouse Cloud em IP Access Lists.
O ClickHouse Cloud oferece suporte a PrivateLink entre regiões nas seguintes regiões:
  • sa-east-1
  • il-central-1
  • me-south-1
  • mx-central-1
  • eu-central-2
  • eu-north-1
  • eu-south-2
  • eu-west-3
  • eu-south-1
  • eu-west-2
  • eu-west-1
  • eu-central-1
  • ca-west-1
  • ca-central-1
  • ap-northeast-1
  • ap-southeast-2
  • ap-southeast-1
  • ap-northeast-2
  • ap-northeast-3
  • ap-south-1
  • ap-southeast-4
  • ap-southeast-3
  • ap-south-2
  • ap-east-1
  • af-south-1
  • us-west-2
  • us-west-1
  • us-east-2
  • us-east-1 Considerações sobre preços: a AWS cobrará dos usuários pela transferência de dados entre regiões. Consulte os preços aqui.
Conclua as etapas a seguir para habilitar o AWS PrivateLink:
  1. Obtenha o “Service name” do Endpoint.
  2. Crie o endpoint da AWS.
  3. Adicione o “Endpoint ID” à organização do ClickHouse Cloud.
  4. Adicione o “Endpoint ID” à lista de permissões do serviço do ClickHouse.
Encontre exemplos de Terraform aqui.

Considerações importantes

O ClickHouse tenta agrupar seus serviços para reutilizar o mesmo endpoint de serviço publicado na mesma região da AWS. No entanto, esse agrupamento não é garantido, especialmente se você distribuir seus serviços entre várias organizações do ClickHouse. Se você já tiver o PrivateLink configurado para outros serviços na sua organização do ClickHouse, muitas vezes poderá pular a maior parte das etapas graças a esse agrupamento e seguir diretamente para a etapa final: adicionar o “Endpoint ID” do ClickHouse à lista de permissões do serviço ClickHouse.

Pré-requisitos para este processo

Antes de começar, você precisará de:
  1. Sua conta da AWS.
  2. Chave de API do ClickHouse com as permissões necessárias para criar e gerenciar endpoints privados no lado do ClickHouse.

Passos

Siga estes passos para conectar seus serviços no ClickHouse Cloud por meio do AWS PrivateLink.

Obtenha o endpoint “Service name”

Opção 1: console do ClickHouse Cloud

No console do ClickHouse Cloud, abra o serviço ao qual você deseja se conectar via PrivateLink e, em seguida, acesse o menu Settings. Anote o Service name e o DNS name e siga para a próxima etapa.

Opção 2: API

Primeiro, defina as seguintes variáveis de ambiente antes de executar qualquer comando:
Obtenha o INSTANCE_ID do seu ClickHouse filtrando por região, provedor e nome do serviço:
Obtenha endpointServiceId e privateDnsHostname para sua configuração do PrivateLink:
Este comando deve retornar algo parecido com:
Anote o endpointServiceId e o privateDnsHostname siga para a próxima etapa.

Criar endpoint da AWS

Esta seção aborda detalhes específicos do ClickHouse para configurar o ClickHouse por meio do AWS PrivateLink. As etapas específicas da AWS são fornecidas apenas como referência para indicar onde procurar, mas podem mudar ao longo do tempo sem aviso prévio da AWS. Considere a configuração da AWS de acordo com o seu caso de uso específico.Observe que o ClickHouse não é responsável por configurar os endpoints de VPC da AWS necessários, as regras de Security Group nem os registros DNS.Se você ativou anteriormente “private DNS names” ao configurar o PrivateLink e está enfrentando dificuldades para configurar novos serviços via PrivateLink, entre em contato com o suporte do ClickHouse. Para qualquer outro problema relacionado a tarefas de configuração da AWS, entre em contato diretamente com o suporte da AWS.

Opção 1: Console da AWS

Abra o Console da AWS e vá para VPCEndpointsCreate endpoints. Selecione Endpoint services that use NLBs and GWLBs e use Service nameconsole ou endpointServiceIdAPI obtido na etapa Obtain Endpoint “Service name” , no campo Service Name. Clique em Verify service: Se quiser estabelecer uma conexão entre regiões via PrivateLink, marque a caixa de seleção “Cross region endpoint” e especifique a região do serviço. A região do serviço é aquela em que a instância do ClickHouse está em execução. Se você receber o erro “Service name couldn’t be verified.”, entre em contato com o Suporte ao Cliente para solicitar a adição de novas regiões à lista de regiões compatíveis. Em seguida, selecione sua VPC e sub-redes: Como etapa opcional, atribua Security groups/Tags:
Certifique-se de que as portas 443, 8443, 9440, 3306 estejam liberadas no Security Group.
Após criar o endpoint da VPC, anote o valor de Endpoint ID; você precisará dele em uma próxima etapa.

Opção 2: AWS CloudFormation

Em seguida, você precisa criar um endpoint da VPC usando Service nameconsole ou endpointServiceIdAPI obtido na etapa Obter endpoint “Service name” . Certifique-se de usar os IDs de sub-rede, os grupos de segurança e o ID da VPC corretos.
Depois de criar o endpoint da VPC, anote o valor de Endpoint ID; você vai precisar dele em um próximo passo.

Opção 3: Terraform

service_name abaixo corresponde a Service nameconsole ou endpointServiceIdAPI obtido na etapa Obter o endpoint “Service name”
Após criar o endpoint da VPC, anote o valor de Endpoint ID; você precisará dele em um próximo passo.

Defina o nome DNS privado do endpoint

Há várias formas de configurar o DNS. Configure-o de acordo com o seu caso de uso específico.
Você precisa apontar o “DNS name”, obtido na etapa Obtain Endpoint “Service name” , para as interfaces de rede do AWS Endpoint. Isso garante que os serviços/componentes dentro da sua VPC/rede consigam resolvê-lo corretamente.

Adicione o “Endpoint ID” à lista de permissões do serviço ClickHouse

Opção 1: console do ClickHouse Cloud

Para adicionar, navegue até o console do ClickHouse Cloud, abra o serviço ao qual você deseja se conectar via PrivateLink e depois vá para Configurações. Clique em Set up private endpoint para abrir as configurações de endpoints privados. Insira o Endpoint ID obtido na etapa Create AWS Endpoint. Clique em “Create endpoint”.
Se você quiser permitir acesso a partir de uma conexão PrivateLink existente, use o menu suspenso de endpoint existente.
Para remover, navegue até o console do ClickHouse Cloud, localize o serviço e depois vá para Configurações do serviço. Localize o endpoint que deseja remover. Remova-o da lista de endpoints.

Opção 2: API

Você precisa adicionar um Endpoint ID à lista de permissões de cada instância que deve ficar disponível via PrivateLink. Defina a variável de ambiente ENDPOINT_ID usando os dados da etapa Criar AWS Endpoint. Defina as seguintes variáveis de ambiente antes de executar qualquer comando:
Para adicionar um ID do endpoint a uma lista de permissões:
Para remover um ID de endpoint de uma lista de permissões:
Cada serviço com o Private Link habilitado tem um endpoint público e outro privado. Para se conectar via Private Link, você precisa usar um endpoint privado, que será privateDnsHostnameAPI ou DNS Nameconsole, obtido em Obter endpoint “Service name”.

Como obter o hostname DNS privado

Opção 1: console do ClickHouse Cloud
No console do ClickHouse Cloud, acesse Settings. Clique no botão Set up private endpoint. No painel lateral aberto, copie o DNS Name.
Opção 2: API
Defina as seguintes variáveis de ambiente antes de executar quaisquer comandos:
Você pode obter INSTANCE_ID na etapa.
Isso deve retornar algo como:
Neste exemplo, a conexão usando o valor do nome de host privateDnsHostname será roteada pelo PrivateLink, mas a conexão usando o nome de host endpointServiceId será roteada pela Internet.

Solução de problemas

Na maioria dos casos, você só precisa criar um único serviço de endpoint para cada VPC. Esse endpoint pode encaminhar solicitações da VPC para vários serviços do ClickHouse Cloud. Consulte aqui

A conexão com o endpoint privado expirou

  • Anexe o Security Group ao endpoint da VPC.
  • Verifique as regras de inbound no Security Group anexado ao Endpoint e libere as portas do ClickHouse.
  • Verifique as regras de outbound no Security Group anexado à VM usada para o teste de conectividade e permita conexões às portas do ClickHouse.

Hostname privado: endereço do host não encontrado

  • Verifique sua configuração de DNS

Conexão redefinida pelo host remoto

  • Muito provavelmente, o Endpoint ID não foi adicionado à lista de permissões do serviço; consulte o passo

Verificando os filtros de endpoint

Defina as seguintes variáveis de ambiente antes de executar qualquer comando:
Você pode obter INSTANCE_ID na etapa.

Conectando-se a um banco de dados remoto

De acordo com a documentação do AWS PrivateLink:
Use o AWS PrivateLink quando houver uma configuração cliente/servidor em que você queira permitir que uma ou mais VPCs consumidoras tenham acesso unidirecional a um serviço específico ou a um conjunto de instâncias na VPC do provedor de serviço. Somente os clientes na VPC consumidora podem iniciar uma conexão com o serviço na VPC do provedor de serviço.
Para conectar as funções de tabela MySQL ou PostgreSQL no ClickHouse Cloud a um banco de dados hospedado na sua VPC da AWS, configure seus grupos de segurança da AWS para permitir conexões do ClickHouse Cloud. Consulte os endereços IP de egress padrão das regiões do ClickHouse Cloud, juntamente com os endereços IP estáticos disponíveis.
Última modificação em 24 de julho de 2026