Skip to main content
Version 3.0.0

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/hosts for testing).
  • Certificate issuance: optional, via cert-manager for 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

  1. 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}'
  2. Add the hostname to DNS or to the /etc/hosts file:
    <INGRESS_IP>   superset.tdp.local
  3. Access http://superset.tdp.local/ (or https:// if TLS is configured).

Troubleshooting

IssueCauseSolution
Ingress not createdsuperset.ingress.enabled: false or incorrect ingressClassNameEnable the field in values and set ingressClassName to match the cluster's Ingress Controller
Host not resolvingDNS or /etc/hosts not configuredAdjust name resolution on the client
TLS failureIssuer or Secret incorrectCheck cert-manager and the TLS Secret
502/503 errorSuperset pod not readyCheck status with kubectl get pods