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. 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.

Como se conectar a um banco de dados remoto

Digamos que você esteja tentando usar as table functions MySQL ou PostgreSQL no ClickHouse Cloud e se conectar ao seu banco de dados hospedado em uma VPC da Amazon Web Services (AWS). O AWS PrivateLink não pode ser usado para habilitar essa conexão com segurança. O PrivateLink é uma conexão unidirecional. Ele permite que sua rede interna ou VPC da Amazon se conecte com segurança ao ClickHouse Cloud, mas não permite que o ClickHouse Cloud se conecte à sua rede interna. De acordo com a documentação do AWS PrivateLink:
Use o AWS PrivateLink quando houver uma configuração cliente/servidor na qual 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ços. Somente os clientes na VPC consumidora podem iniciar uma conexão com o serviço na VPC do provedor de serviços.
Para isso, configure seus Security Groups da AWS para permitir conexões do ClickHouse Cloud com seu serviço de banco de dados interno/privado. 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 3 de julho de 2026