Integrações — Apache Ozone
Visão geral das integrações
No chart tdp-ozone, o S3 Gateway REST fica acessível dentro do cluster em:
http://<release>-s3g-rest.<namespace>.svc.cluster.local:9878
Para Ingress, utilize hostnames que o seu DNS resolva (em laboratório costuma-se ver exemplos como ozone-s3.local).
Spark (s3a)
spark.hadoop.fs.s3a.endpoint=http://<release>-s3g-rest.<namespace>.svc.cluster.local:9878
spark.hadoop.fs.s3a.access.key=<AWS_ACCESS_KEY_ID>
spark.hadoop.fs.s3a.secret.key=<AWS_SECRET_ACCESS_KEY>
spark.hadoop.fs.s3a.path.style.access=true
spark.hadoop.fs.s3a.connection.ssl.enabled=false
Trino (S3 nativo)
fs.native-s3.enabled=true
s3.endpoint=http://<release>-s3g-rest.<namespace>.svc.cluster.local:9878
s3.region=us-east-1
s3.aws-access-key=<AWS_ACCESS_KEY_ID>
s3.aws-secret-key=<AWS_SECRET_ACCESS_KEY>
s3.path-style-access=true
Exemplo em catálogo Trino (valores ilustrativos)
tdp-trino:
catalogs:
iceberg: |
connector.name=iceberg
iceberg.catalog.type=hive_metastore
hive.metastore.uri=thrift://<hive-metastore-host>.<namespace>.svc.cluster.local:9083
fs.native-s3.enabled=true
s3.endpoint=http://<release>-s3g-rest.<namespace>.svc.cluster.local:9878
s3.region=us-east-1
s3.aws-access-key=<AWS_ACCESS_KEY_ID>
s3.aws-secret-key=<AWS_SECRET_ACCESS_KEY>
s3.path-style-access=true
Ajuste o nome do catálogo e do serviço Hive Metastore ao chart/release reais.
Testar com AWS CLI
Terminal input
aws s3 mb s3://test-bucket --endpoint-url=http://<endpoint>
aws s3 ls --endpoint-url=http://<endpoint>
Use <endpoint> como URL do S3 Gateway (interna ou via Ingress), por exemplo http://<release>-s3g-rest.<namespace>.svc.cluster.local:9878.