Instructions for Installation on Amazon Elastic Beanstalk and RDS
This guide is a simplified approach for installing the customized questionnaire package on Amazon Elastic Beanstalk and RDS. Unlike Instructions for Installation on Another Server, this guide assumes little to no knowledge for managing a LAMP stack.
- Amazon AWS account
- Some familiarity with navigating the AWS Management web console
- For HTTPS connections, complete the steps below, then refer to http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/configuring-https.html
- Log in to the AWS Management Console at https://console.aws.amazon.com using your Amazon AWS account credentials
- Navigate to the VPC service and click "Start VPC Wizard"
- Choose "VPC with Public and Private Subnets" and click "Select"
- Give your VPC a name, in this case, "Watson", and click "Create VPC". The other settings may be kept at their default values assuming they do not conflict with pre-existing VPCs in your Amazon account.
- Click "OK"
- Amazon RDS requires private subnets in two or more availability zones. Click "Subnets" in the left hand menu. Look at the "Availability Zone" column for the private subnet, in this case us-east-1a. Create a second private subnet in any "Availability Zone" that is not us-east-1a. Click "Create Subnet"
- Choose an "Availability Zone" other than the one associated with the Private subnet in the step above. Enter "10.0.2.0/24" as the CIDR block, and click "Yes, Create"
- Your VPC is ready. Click "Elastic Beanstalk" in the Services Menu, then click "Create New Application"
- Give your app a name and click "Next"
- Click "Create web server"
- Choose "Docker" and "Load balancing, auto scaling" from the dropdowns, then click "Next"
- Download https://sites.google.com/site/watsonresearchdocs/instructions-for-installation-on-amazon-elastic-beanstalk/Watson-Beanstalk.zip?attredirects=0&d=1, then select "Upload your own" and upload the file you just downloaded. Click "Next"
- Give your environment a name and URL, then click "Next"
- Select both boxes for RDS and VPC resources, and click "Next"
- You can change settings here depending on your requirements, but for our purposes, it is safe to accept the default settings and click "Next"
- Optionally add tags to easily identify resources associated with this application later, and click "Next"
- Set your username and password to connect to the database. Remembering these is very important! They will be used when you open the questionnaires for the first time. Select "Multiple Availability Zones" under "Availability". Click "Next"
- Your ELB should be in the Public subnet. If you followed the instructions here, the public subnet will be in the CIDR block "10.0.0.0/24". If not, refer back to your VPC service to determine which subnet is public. EC2 instances should be placed in the private subnet and the same availability zone as the ELB. RDS should be spread across 2 availability zones in private subnets. Click "Next".
- Click "Next"
- On the "Review" screen, click "Launch"
- Beanstalk will begin launching your environment. This step can take 10 to 20 minutes, so be patient. Reported errors are generally temporary, so wait until everything is done before reaching out for help.
- Eventually, you should see a confirmation screen like the one below. Click the URL at the top of the page, in this case, "watson-wiki.elasticbeanstalk.com"
- An installation screen will open in a new window. Click "Start Installation"
- Click "I accept"
- Click "Next"
- Now we need to determine the location of your MySQL RDS database on Amazon Web Services. Navigate back to the Amazon Web Services Console, select "RDS" from the "Services" tab, click "Instances", and expand the instance. There should only be one instance if you started with a clean account. Copy the "Endpoint" field, up to the colon (leave out ":3306"). In our case, the endpoint value is aatkj3wwds5oy9.cu6fkvidg83q.us-east-1.rds.amazonaws.com
- Back in the LimeSurvey tab, paste the endpoint value into the "Database location" field. Enter the database user you specified in the "RDS Configuration" step, in our case, watson. The password must also match the password you created in the "RDS Configuration" step. The database name can be any useful name. Click "Next"
- Click "Create database"
- Click "Populate database"
- Set the admin login name, password, name, email, site name, and language. It is very important you remember your login name and password. These are the credentials that you will use to import new questionnaires, add new users to the questionnaires, and export questionnaire results. In this case, we use user "admin" with password "admin", and click "Next"
- Click "Administration"
- Log in with the credentials you just provided. In our case, "admin" and "admin"
- Congratulations! You have a new installation ready to be used for research purposes. To create additional LimeSurvey users, see Creating a new researcher. To import a new questionnaire, refer to step 4 in Configuration. A list of questionnaires ready to be imported is available here for convenience:
- CC for Research Use (filename: cc_research_use.lss)
- PC for Research Use (filename: pc_research_use.lss)
- PC, Imp, Ref for Research Use (filename: pc_imp_ref_research_use.lss)
- PC, Imp, Ref for Clinical and Research Use(filename: pc_imp_ref_clinical_and_research_use.lss)
- CC, Imp, Ref for Research Use (filename: cc_imp_ref_research_use.lss)
- PC, CC, AM, Imp, Ref for Research Use (filename: pc_cc_am_imp_ref.lss