Ingress — OpenMetadata
The tdp-openmetadata chart exposes the Ingress via values. By default, it is disabled.
Prerequisites
- Ingress Controller installed in the cluster (e.g., NGINX).
- Hostname configured in DNS or an entry in
/etc/hosts. - In this chart, the field used is
openmetadata.ingress.className, notingressClassName.
Ingress vs Gateway API
TDPConfiguration.gateway.ingress and TDPConfiguration.gateway.gatewayApi are mutually exclusive. Enable only one of them.
Enable Ingress
TDPConfiguration:
gateway:
ingress:
enabled: true
openmetadata:
ingress:
className: <ingress-class>
hosts:
- host: openmetadata.tdp.local
paths:
- path: /
pathType: ImplementationSpecific
tls: []
Enable TLS
TDPConfiguration:
gateway:
ingress:
enabled: true
openmetadata:
ingress:
className: <ingress-class>
annotations:
nginx.ingress.kubernetes.io/ssl-redirect: "true"
hosts:
- host: openmetadata.tdp.local
paths:
- path: /
pathType: ImplementationSpecific
tls:
- hosts:
- openmetadata.tdp.local
secretName: openmetadata-tls-secret
Replace <ingress-class> with the name of the Ingress Controller in the environment (verify with kubectl get ingressclass).
Access
- Obtain the external IP of the Ingress Controller:
Terminal input
kubectl get svc -A -l app.kubernetes.io/name=ingress-nginx \
-o jsonpath='{.items[0].status.loadBalancer.ingress[0].ip}' - Add the hostname to DNS or to the
/etc/hostsfile:<INGRESS_IP> openmetadata.tdp.local - Access
http://openmetadata.tdp.local(orhttps://if TLS is configured).
Troubleshooting
| Issue | Cause | Solution |
|---|---|---|
| Ingress not created | Incorrect className or TDPConfiguration.gateway.ingress.enabled: false | Check both settings |
| 502 Bad Gateway | OpenMetadata did not start | Check kubectl get pods -n <namespace> |