I started a yugabyte cluster in minikube using the helm chart in Deploy | YugabyteDB Docs - how can I run psql or ysqlsh queries against this cluster from outside? I don’t see the load balancer specified in the page.
Hi @CharlieORiley,
You can use port forwarding I believe. For example, you could do one of the following.
-
Forward the ports for the entire
yb-tserver
service:kubectl port-forward svc/yb-tserver-service 5433:5433
-
Forward the ports from just one pod:
kubectl port-forward pod/yb-tserver-0 5433:5433
Subsequently, you can run psql
or ysqlsh
pointing to localhost
port 5433
as follows:
ysqlsh -h localhost -p 5433
NOTE #1: Get the exact service name by running the following commands:
kubectl get pods -A
kubectl get svc -A`
NOTE #2: The port 5433 needs to be unused on the machine.
If it is already in use, you could get an error as follows:
❯ kubectl port-forward svc/yb-tservers 5433:5433
Unable to listen on port 5433:
Listeners failed to create with the following errors:
[unable to create listener:
Error listen tcp4 127.0.0.1:5433:
bind: address already in use unable to create listener:
Error listen tcp6 [::1]:5433: bind: address already in use
]
error: unable to listen on any of the requested ports: [{5433 5433}]
NOTE #3: Use a Kubernetes load balancer in production
In production. you would typically use a kubernetes load balancer as described in our docs.
Hope that helps. cc @sanketh @arnav in case I have something wrong.
I keep getting connection refused when running from pgadmin4. Has anyone encountered this?
@asevans48 This was fixed in thread Cannot seem to connect on minikube at forwarded port - #2 by dorian_yugabyte.