Visão geral
- Obtenha o ID da função de serviço do ClickHouse Cloud (IAM).
- Crie uma IAM função na sua conta AWS que o ClickHouse possa assumir.
- Anexe à função políticas específicas do Iceberg para objetos e catálogos.
- Use funções de tabela do Iceberg ou o mecanismo de tabela IcebergS3 com credenciais baseadas em IAM função.
Obtenha o ID da função de serviço do ClickHouse (ARN)
1
1. Faça login na sua conta do ClickHouse Cloud.
2
2. Selecione o serviço do ClickHouse no qual você deseja consultar dados do Iceberg.
3
3. Acesse a guia Configurações.
4
4. Role até Informações de segurança de rede.
5
5. Copie o valor de ID da função de serviço (IAM).
Esse ARN é necessário para a política de confiança da função do IAM da AWS que acessará seus dados do Iceberg.Configurar a assunção de função no IAM
1
1. Faça login na AWS e acesse o serviço IAM.
2
2. Selecione Roles e, em seguida, Create função.
SelecioneTrusted entity type como Custom trust policy e insira os valores com base na etapa 3.3
3. Adicione as políticas de confiança e do IAM.
Substitua{service-role-id} pelo Service Role ID (IAM) da sua instância do ClickHouse.Para cargas de trabalho de leitura/gravação, a política do IAM deve incluir
s3:PutObject, s3:DeleteObject e ações de modificação de metadados para o Iceberg. O exemplo acima é conservador e somente leitura.Se você precisar de um isolamento mais forte, exija que as solicitações se originem de endpoints de VPC do ClickHouse Cloud. Para mais informações sobre essa opção, consulte Secure S3 advanced action control.4
4. Conclua a criação da função.
a. Clique em Next e depois em Next novamente na tela de atribuição de permissões.b. Adicione um nome (por exemplo,iceberg-role-for-clickhouse) e uma descrição.c. Adicione tags (opcional).d. Revise as políticas.e. Selecione Create função.5
5. Copie o novo ARN da IAM Função após a criação.
Configure o acesso ao Iceberg no ClickHouse Cloud
Opção A: função de tabela Iceberg com ARN da função
icebergS3 com a opção NOSIGN e credenciais baseadas em função. O ClickHouse Cloud chamará o STS para assumir a função.
Opção B: mecanismo de tabela Iceberg persistente
Opção C: catálogo do Glue + IcebergS3
Observação: ao usar o catálogo do Glue, verifique se sua função do IAM tem permissões de leitura e listagem no S3 e no Glue.
Opção D: DataLake Catalog para Glue
O DataLake Catalog para Glue estará disponível na versão 26.2.
Verifique o acesso
- Execute uma consulta simples:
- Verifique se há erros de IAM, como
AccessDeniedouInvalidAccessKeyId.
Solução de problemas
- Verifique o ARN da função nas configurações do serviço ClickHouse Cloud.
- Certifique-se de que seu bucket/objetos estejam na mesma região das consultas ao Iceberg para reduzir a latência e o custo.
- Confirme se o caminho da tabela Iceberg aponta para um local válido de metadados do Iceberg (arquivos
metadata/v1/...no diretório raiz da tabela). - No modo de catálogo, verifique os metadados do Glue e a visibilidade das partições no console do AWS Glue.