Hi guys, I’d like to know if there’s some tips&tricks to have multiple redash instance balanced by nginx in active/passive mode using a centralized postgresql. I mean: Having multiple redash instance running on several servers that using the same postgresql, could be cause some problems? Or a single redash instance don’t do anything on DB unless someone connect directly on it?
Thansk in advance.
Use PGBouncer for connection pooling while running Redash/Airflow sort of applications against PostgreSQL. Celery tasks needs multiple parallel connections to DB, each direct PostgreSQL connects needs about 10 MB process space at the cost of 1 process per connection. PGBouncer helps here a lot.
Having Multiple Instances by nginx/HA-Proxy recommended, I go by active mode for Load Balancing and HA together.
1 Like
If you want scalability and HA then you can also run Redash on Kubernetes and use either a containerised database or an external one (e.g. Cloud SQL or Amazon RDS if you’re in a cloud environment).
Running applications on Kubernetes can be daunting but there’s a community maintained Helm chart to help you set up Redash on Kubernetes here: https://github.com/getredash/contrib-helm-chart