Redash on multiple ec2 servers

We launched 2 ec2-server with redash image and tried to RDS as backend.
Redash1 & Redash2 server launched using below yaml file through docker.
We set RDS postgres as a backend(Refer env below). And we successfully launched both servers but in redash2 we are unable to see data sources. Screen shot attached.
env file

PYTHONUNBUFFERED=0
REDASH_LOG_LEVEL=INFO
REDASH_REDIS_URL=redis://redis:6379/0
REDASH_COOKIE_SECRET=SECRET
REDASH_SECRET_KEY=SECRET
REDASH_MAIL_SERVER=smtp-relay.gmail.com
REDASH_MAIL_PORT=587
REDASH_MAIL_USE_TLS=true
POSTGRES_PASSWORD=Admin
REDASH_DATABASE_URL=postgresql://postgres:Admin@postgres-dev.xxxxxxxxxx.us-east-1.rds.amazonaws.com/postgres

compose file in server1 and server2

version: "2"
x-redash-service: &redash-service
  image: redash/redash:8.0.0.b32245
  depends_on:
    - postgres
    - redis
  env_file: /opt/redash/env
  restart: always
services:
  server:
    <<: *redash-service
    command: server
    ports:
      - "5000:5000"
    environment:
      REDASH_WEB_WORKERS: 4
  scheduler:
    <<: *redash-service
    command: scheduler
    environment:
      QUEUES: "celery"
      WORKERS_COUNT: 1
  scheduled_worker:
    <<: *redash-service
    command: worker
    environment:
      QUEUES: "scheduled_queries,schemas"
      WORKERS_COUNT: 1
  adhoc_worker:
    <<: *redash-service
    command: worker
    environment:
      QUEUES: "queries"
      WORKERS_COUNT: 2
  redis:
    image: redis:5.0-alpine
    restart: always
  postgres:
    image: postgres:9.6-alpine
    env_file: /opt/redash/env
    volumes:
      - /opt/redash/postgres-data:/var/lib/postgresql/data
    restart: always
  nginx:
    image: redash/nginx:latest
    ports:
      - "80:80"
    depends_on:
      - server
    links:
      - server:redash
    restart: always

1 Like

Don’t post your cookie secrets on a public forum!

You should reset these immediately following these instructions.


As for your data sources: I suspect the secret keys are different between both servers. In which case, the server without correct secret keys will not be able to decrypt the data source info so they won’t appear in the front-end. This should be reflected in your logs.

I do wonder why you are running two servers? For concurrency? Unless you have many thousands of concurrent users this isn’t necessary.

[edit] I see that you removed the secrets from your post, but you should still change the secrets on your installation since post edits are visible to all users here.

2 Likes

@jesse , thanks you so much for your response. ultimate aim of having multiple systems for redash is to have high availability (or fault tolerance) system. if one system goes down , we still can access redash from another server. as i newbie exploring(trying) best options to build such as system for redash, kindly let us know if you have better alternative methods.
I will try to have secret keys same for both servers and get back with you findings today.
have a nice day ! take care.

Thanks,
Sathish

1 Like

Thanks jesse. it worked ! i kept same keys in both servers and restarted redash services. thus worked!

1 Like

Awesome! Thanks for verifying it worked :sunglasses:

2 Likes