Saltar para o conteúdo principal
Versão 3.0.0

Segurança — Delta Lake

O chart tdp-deltalake executa jobs de manutenção (VACUUM, OPTIMIZE) no armazenamento S3/MinIO. As credenciais de acesso ao bucket são fornecidas via Secret Kubernetes s3-credentials, lido pelos CronJobs via env.secretKeyRef.

Secret de credenciais S3

Crie o Secret no namespace antes do deploy:

kubectl -n <namespace> create secret generic s3-credentials \
--from-literal=access-key="<ACCESS_KEY>" \
--from-literal=secret-key="<SECRET_KEY>"
ChaveDescrição
access-keyChave de acesso ao bucket S3/MinIO
secret-keyChave secreta para autenticação S3

O nome do Secret deve ser exatamente s3-credentials. Os CronJobs do chart referenciam esse nome diretamente.

Configuração do endpoint S3

O endpoint do S3/MinIO é configurado no bloco maintenance.spark.config:

maintenance:
spark:
config:
"spark.hadoop.fs.s3a.endpoint": "http://<s3-endpoint>:<porta>"
"spark.hadoop.fs.s3a.path.style.access": "true"

Substitua <s3-endpoint> pelo endereço interno do serviço S3 no cluster. Para o Ozone instalado junto ao TDP, o endereço padrão segue o padrão:

http://<release>-s3g-rest.<namespace>.svc.cluster.local:9878

Boas práticas

AspectoRecomendação
CredenciaisNão versionar access-key e secret-key em repositório Git
RotaçãoRecriar o Secret e aguardar o próximo ciclo de execução dos CronJobs
Acesso mínimoConfigurar credenciais com permissão apenas nos buckets usados pelos jobs de manutenção

Resolução de Problemas

ProblemaCausa provávelSolução
CronJob falha com erro de autenticaçãoSecret ausente ou chaves com nome incorretoVerificar Secret s3-credentials no namespace
Endpoint S3 inacessívelURL ou porta incorretosTestar conectividade com kubectl exec dentro do namespace
Permissão negada no bucketCredenciais sem acesso ao path configuradoRevisar permissões no MinIO/Ozone

Para a lista completa de parâmetros, use helm show values na versão do chart que instalou.