Visão geral
Este guia orienta você na configuração de um MSK multi-VPC para uso com o endpoint privado reverso do ClickPipes.
O ClickPipes gerencia a VPC do cliente e cria a conexão de VPC gerenciada. Para estabelecer a conexão de rede, habilite a conectividade privada multi-VPC no seu cluster do MSK e autorize a conta AWS do ClickPipes na política do cluster.
Requisitos
A VPC do seu cluster do MSK deve estar localizada em uma das regiões do ClickPipes. Consulte regiões do ClickPipes para ver a lista de regiões suportadas.
Habilitar conectividade multi-VPC
- Navegue até o cluster do MSK.
- Escolha "Clusters" no painel de navegação à esquerda no console do Amazon MSK.
- Selecione o cluster do MSK específico que você quer configurar para conectividade multi-VPC.
- Habilite a conectividade MSK multi-VPC
- Na guia Connectivity, localize a seção Multi-VPC connectivity.
- Clique em Edit.
- Habilite a opção Turn-on MSK multi-VPC connectivity.
- Siga as instruções
- Adicione a entidade principal da conta do ClickPipes à política do cluster
- Navegue até a guia Configuration.
- Clique em Edit na seção Cluster policy.
- Inclua
arn:aws:iam::072088201116:rootna IAM policy. Example:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::072088201116:root" ] }, "Action": [ "kafka:CreateVpcConnection", "kafka:GetBootstrapBrokers", "kafka:DescribeCluster", "kafka:DescribeClusterV2" ], "Resource": "<MSK_CLUSTER_ARN>" } ] }
Habilite seu método de autenticação do MSK tanto para o cluster quanto para a conectividade multi-VPC. O exemplo a seguir usa SASL/IAM; em vez disso, defina scram = true para usar SASL/SCRAM.
resource "aws_msk_cluster" "this" {
# ... configuração existente ...
client_authentication {
sasl {
iam = true
}
}
broker_node_group_info {
# ... configuração existente ...
connectivity_info {
vpc_connectivity {
client_authentication {
sasl {
iam = true
}
}
}
}
}
}Autorize a conta AWS do ClickPipes na política do cluster do MSK:
resource "aws_msk_cluster_policy" "clickpipes" {
cluster_arn = aws_msk_cluster.this.arn
policy = jsonencode({
Version = "2012-10-17"
Statement = [{
Sid = "ClickPipesMultiVpc"
Effect = "Allow"
Principal = { AWS = "arn:aws:iam::072088201116:root" }
Action = [
"kafka:CreateVpcConnection",
"kafka:GetBootstrapBrokers",
"kafka:DescribeCluster",
"kafka:DescribeClusterV2",
]
Resource = aws_msk_cluster.this.arn
}]
})
}Se o cluster já tiver uma política, preserve as instruções existentes ao adicionar as permissões do ClickPipes.
Criar endpoint privado reverso
Siga as etapas para criar o endpoint privado reverso na documentação do ClickPipes.
Crie o endpoint privado reverso usando o provider Terraform do ClickHouse:
resource "clickhouse_clickpipes_reverse_private_endpoint" "msk" {
service_id = var.clickhouse_service_id
description = "MSK multi-VPC reverse private endpoint"
type = "MSK_MULTI_VPC"
msk_cluster_arn = aws_msk_cluster.this.arn
msk_authentication = "SASL_IAM" # Ou "SASL_SCRAM"
depends_on = [aws_msk_cluster_policy.clickpipes]
}Os campos do recurso são imutáveis. Alterar um campo destrói e recria o endpoint privado reverso.