Document toolboxDocument toolbox

re:dash client over Redshift

Access it here.

To deploy, launch an EC2 instance from AMI `redash-20151001`.  Once launched add the instance to the Redshift security group and the redash load balancer.

To manage users, `ssh` to the host, `cd /opt/redash/current`, and then `sudo -u redash bin/run ./manage.py users`.

Here are steps to create the AMI:

  1. Base AMI: Ubuntu 14.04 LTS HVM 64-bit
    1. The user is "ubuntu"
    2. Remember to open HTTP 80 for testing
  2. Connect to the instance
    1. `sudo apt-get update`
    2. `sudo apt-get -y -q dist-upgrade`
    3. `sudo apt-get -y -q autoremove` 
    4. `sudo apt-get -y -q autoclean`
    5. Run the bootstrap script
    6. Test that the website is up and running
  3. Edit `/opt/redash/.env` and change the cookie secret
  4. Go to `/opt/redash/current` and change the admin password `sudo -u redash bin/run ./manage.py users password admin <new password>`
  5. Set up Google OAuth in `/opt/redash/.env`.  The credentials are also backed up in belltown
  6. Restart redash `sudo supervisorctl restart redash_server`
  7. Set up a load balancer behind Route53.  Make sure the health check is on `/login` which the redash server returns 200
  8. Connect to Redshift. Note Redshift is in a different AWS account in on VPC.  Must add the instance's IP to the Redshift's security group.  Test the connection using `telnet`
  9. Configure the data source for Redshift by logging in as `admin` and browsing to `/data_source`