Saltar para o conteúdo principal
Versão 3.0

Integrações — Superset

ChartVersion3.0.1TypeapplicationAppVersion5.0.0
CompatibilidadeKubernetes1.32+OpenShift4.19+Rancher2.10.x+

Visão geral

O chart tdp-superset pode usar um PostgreSQL externo (tdp-postgresql) como banco de metadados — consulte Configuração do Superset.

O chart tdp-superset registra datasources para Trino e ClickHouse automaticamente durante a inicialização quando tdp-superset.datasources.autoImport.enabled: true e os blocos de cada datasource estão habilitados.

O job de importação é executado em toda instalação e atualização (post-install,post-upgrade). Ele realiza um upsert por UUID — conexões existentes são atualizadas, não duplicadas. Quando autoImport.enabled: false, o ConfigMap de datasources não é criado e a montagem de volume é ignorada silenciosamente.

Para que a importação funcione, os serviços de dados precisam estar acessíveis no cluster antes do término do job.

Se o auto-import falhar ou os serviços não estiverem disponíveis, os datasources podem ser cadastrados manualmente pela interface do Superset após o deploy.

ClickHouse

O bloco tdp-superset.datasources.clickhouse configura a conexão com um cluster ClickHouse.

Exemplo
tdp-superset:
datasources:
autoImport:
enabled: true
clickhouse:
enabled: true
name: "ClickHouse TDP"
host: "<CLICKHOUSE_SERVICE>.<NAMESPACE>.svc.cluster.local"
port: "8123"
database: "default"
username: "<USERNAME>"
password: "<PASSWORD>"
uuid: "92122244-b262-44a6-a2ed-e49a05860dda"
CampoDescrição
hostEndereço interno do serviço ClickHouse no formato <SERVICE_NAME>.<NAMESPACE>.svc.cluster.local
portPorta HTTP do ClickHouse. O padrão é 8123
databaseBanco de dados padrão para o datasource. Use default se não houver banco específico
usernameUsuário com acesso de leitura ao ClickHouse
passwordSenha do usuário. Não versione em texto claro
uuidIdentificador estável do datasource. Não altere após a primeira criação no ambiente

Trino

O bloco tdp-superset.datasources.trino configura a conexão com um cluster Trino.

Exemplo
tdp-superset:
datasources:
autoImport:
enabled: true
trino:
enabled: true
name: "Trino TDP"
host: "<TRINO_SERVICE>.<NAMESPACE>.svc.cluster.local"
port: "8080"
catalog: ""
username: "<USERNAME>"
password: ""
uuid: "8a92c01b-2d6e-4fc1-a302-b6a5f0e56789"
CampoDescrição
hostEndereço interno do serviço Trino no formato <SERVICE_NAME>.<NAMESPACE>.svc.cluster.local
portPorta do Trino. Use 8080 para HTTP sem LDAP
catalogCatálogo Trino padrão para o datasource. Deixe vazio para que o Superset liste todos os catálogos disponíveis
usernameUsuário Trino. Para ambientes sem LDAP, qualquer valor é aceito
passwordSenha Trino. Deixe vazio quando LDAP não estiver ativo
uuidIdentificador estável do datasource. Não altere após a primeira criação no ambiente

Combinar ClickHouse e Trino

Para importar ambos os datasources no mesmo deploy:

Exemplo
tdp-superset:
datasources:
autoImport:
enabled: true
clickhouse:
enabled: true
name: "ClickHouse TDP"
host: "<CLICKHOUSE_SERVICE>.<NAMESPACE>.svc.cluster.local"
port: "8123"
database: "default"
username: "<USERNAME>"
password: "<PASSWORD>"
uuid: "92122244-b262-44a6-a2ed-e49a05860dda"
trino:
enabled: true
name: "Trino TDP"
host: "<TRINO_SERVICE>.<NAMESPACE>.svc.cluster.local"
port: "8080"
catalog: ""
username: "<USERNAME>"
password: ""
uuid: "8a92c01b-2d6e-4fc1-a302-b6a5f0e56789"

UUID do datasource

O uuid identifica o datasource de forma estável entre deploys.
Não altere o UUID após a primeira criação em um ambiente existente, pois dashboards e gráficos que referenciam esse datasource usam o UUID como chave.
Para um ambiente novo, o UUID padrão do chart pode ser mantido ou substituído por um novo gerado localmente.

Para gerar um UUID novo localmente, use uma ferramenta de UUID v4.
Em ambientes com uuidgen:

uuidgen

Outra opção, usando Python:

python -c "import uuid; print(uuid.uuid4())"

Use o valor gerado no campo uuid do datasource antes do primeiro deploy do ambiente.

Dependência de ordem

O auto-import ocorre durante o job de inicialização do Superset.
Certifique-se de que os serviços Trino e ClickHouse estejam em execução e acessíveis antes de iniciar o deploy do Superset com autoImport.enabled: true.
Se o job de init for executado antes dos datasources estarem prontos, o import falhará e precisará ser refeito manualmente.

Validação de acessibilidade

Antes de habilitar o auto-import, confirme se os Services de Trino e ClickHouse existem no namespace esperado:

kubectl -n <NAMESPACE> get svc

Valide também a conectividade a partir de dentro do cluster.
Para Trino, o endpoint /v1/info confirma que o serviço HTTP está respondendo:

kubectl -n <NAMESPACE> run trino-check --rm -it --image=curlimages/curl --restart=Never -- curl -sS http://<TRINO_SERVICE>.<NAMESPACE>.svc.cluster.local:8080/v1/info

Para ClickHouse, o endpoint /ping deve retornar Ok:

kubectl -n <NAMESPACE> run clickhouse-check --rm -it --image=curlimages/curl --restart=Never -- curl -sS http://<CLICKHOUSE_SERVICE>.<NAMESPACE>.svc.cluster.local:8123/ping

Se a importação falhar, consulte os jobs e logs de inicialização do Superset:

kubectl -n <NAMESPACE> get jobs
kubectl -n <NAMESPACE> logs job/<JOB_NAME>

Cadastro manual pela interface

Quando o auto-import estiver desabilitado, falhar no init ou a fonte de dados for criada depois do deploy, cadastre o datasource pela interface do Superset.
Na UI, acesse Settings > Database Connections e crie uma nova conexão.

Use os mesmos dados previstos no bloco do chart: nome do datasource, host, porta, usuário, senha e banco ou catálogo padrão.
Para ClickHouse, normalmente informe a porta HTTP 8123 e o banco de dados padrão.
Para Trino, informe a porta 8080 para HTTP sem LDAP, o usuário Trino e, quando necessário, o catálogo inicial.

Depois de salvar, use a ação de teste de conexão da própria interface antes de criar datasets, gráficos ou dashboards.

Segurança e credenciais

Não versione senhas de datasources em texto claro.
Para ambientes de produção, injete as senhas via Secret do Kubernetes usando secretKeyRef em extraEnvRaw, ou use ferramenta de gestão de segredos.
Consulte Segurança — Superset para boas práticas de credenciais e configuração de LDAP.