Ingress — Apache Ozone
O Ozone pode expor múltiplas interfaces via Ingress, cada uma com sua própria configuração. A habilitação é controlada por TDPConfiguration.gateway.ingress.enabled e por flags individuais de cada sub-ingress.
Ingress vs Gateway API
TDPConfiguration.gateway.ingress e TDPConfiguration.gateway.gatewayApi são mutuamente exclusivos. Habilite apenas um deles.
Serviços e interfaces
| Interface | Parâmetro | Host de exemplo |
|---|---|---|
| Ozone Manager UI | tdp-ozone.ingress.om | ozone-om.tdp.local |
| Storage Container Manager UI | tdp-ozone.ingress.scm | ozone-scm.tdp.local |
| Recon UI | tdp-ozone.ingress.recon | ozone-recon.tdp.local |
| S3 Gateway Web UI | tdp-ozone.ingress.s3g.web | ozone-s3-ui.tdp.local |
| S3 Gateway REST | tdp-ozone.ingress.s3g.rest | — |
Exemplo de configuração
TDPConfiguration:
gateway:
ingress:
enabled: true
tdp-ozone:
ingress:
om:
enabled: true
ingressClassName: <ingress-class>
hosts:
- host: ozone-om.tdp.local
scm:
enabled: true
ingressClassName: <ingress-class>
hosts:
- host: ozone-scm.tdp.local
recon:
enabled: true
ingressClassName: <ingress-class>
hosts:
- host: ozone-recon.tdp.local
s3g:
rest:
enabled: true
ingressClassName: <ingress-class>
web:
enabled: true
ingressClassName: <ingress-class>
hosts:
- host: ozone-s3-ui.tdp.local
Substitua <ingress-class> pelo nome do Ingress Controller do ambiente (verifique com kubectl get ingressclass). Habilite apenas as interfaces necessárias.
TLS: configure tls em cada sub-ingress conforme o template do chart e o Ingress Controller utilizado.
Acesso
- Obtenha o IP externo do Ingress Controller:
Terminal input
kubectl get svc -A -l app.kubernetes.io/name=ingress-nginx \
-o jsonpath='{.items[0].status.loadBalancer.ingress[0].ip}' - Adicione os hostnames no DNS ou no arquivo
/etc/hosts:<INGRESS_IP> ozone-om.tdp.local
<INGRESS_IP> ozone-scm.tdp.local
<INGRESS_IP> ozone-recon.tdp.local
<INGRESS_IP> ozone-s3-ui.tdp.local - Acesse:
- Ozone Manager UI:
http://ozone-om.tdp.local - Storage Container Manager UI:
http://ozone-scm.tdp.local - Recon UI:
http://ozone-recon.tdp.local - Use
https://se TLS estiver configurado.
- Ozone Manager UI:
Verificação
Terminal input
kubectl -n <namespace> get ingress
Resolução de Problemas
| Problema | Solução |
|---|---|
| Ingress não criado | Verificar TDPConfiguration.gateway.ingress.enabled: true, o sub-ingress com enabled: true e se ingressClassName corresponde ao Ingress Controller do ambiente |
| Host não resolve | Ajustar DNS ou /etc/hosts para o IP do Ingress Controller |