Ingress — CloudBeaver
Exposure via Ingress uses a hostname, path, optional TLS, and cert-manager annotations (illustrative example — replace with a domain you control).
Prerequisites
- Ingress Controller (e.g., NGINX).
- Certificate issuance: optional, via
cert-managerif using the annotation below.
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
tdp-cloudbeaver:
ingress:
ingressClassName: "<ingress-class>"
hostname: cloudbeaver.tdp.local
Replace <ingress-class> with the name of the Ingress Controller in the environment (verify with kubectl get ingressclass) and the hostname with a domain you control.
For TLS and additional annotations (e.g., cert-manager), refer to helm show values for the chart version in use.
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> cloudbeaver.tdp.local - Access
http://cloudbeaver.tdp.local(orhttps://if TLS is configured).
Troubleshooting
| Issue | Cause | Solution |
|---|---|---|
| Ingress missing | ingress.enabled: false or incorrect ingressClassName | Enable in values and set ingressClassName to match the cluster's Ingress Controller |
| Host does not resolve | DNS / local hosts | Adjust DNS or client resolution |
| TLS fails | Incorrect Issuer / Secret | Check cert-manager and the TLS Secret |