Ingress — Superset
Exposing Superset via Ingress enables external access to the cluster using a dedicated hostname. The tdp-superset chart uses the upstream subchart Ingress configuration under the superset.ingress key.
Prerequisites
- Ingress Controller installed in the cluster (e.g., NGINX).
- DNS entry pointing to the Ingress Controller IP (or local
/etc/hostsfor testing). - Certificate issuance: optional, via
cert-managerfor automatic TLS.
Configuration example
Ingress vs Gateway API
TDPConfiguration.gateway.ingress and TDPConfiguration.gateway.gatewayApi are mutually exclusive. Enable only one of them.
TDPConfiguration:
gateway:
ingress:
enabled: true
superset:
ingress:
ingressClassName: "<ingress-class>"
hosts:
- superset.tdp.local
path: /
pathType: ImplementationSpecific
tls: []
Replace <ingress-class> with the name of the Ingress Controller in the environment (verify with kubectl get ingressclass). For TLS, configure the tls block according to the chart template.
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> superset.tdp.local - Access
http://superset.tdp.local/(orhttps://if TLS is configured).
Troubleshooting
| Issue | Cause | Solution |
|---|---|---|
| Ingress not created | superset.ingress.enabled: false or incorrect ingressClassName | Enable the field in values and set ingressClassName to match the cluster's Ingress Controller |
| Host not resolving | DNS or /etc/hosts not configured | Adjust name resolution on the client |
| TLS failure | Issuer or Secret incorrect | Check cert-manager and the TLS Secret |
| 502/503 error | Superset pod not ready | Check status with kubectl get pods |