Tibbr Installation Addendum for Amazon Web Services Version 1.1 February 17, 2013
Table of Contents Introduction... 3 MySQL... 3 Choosing a RDS instance size... 3 Creating the RDS instance... 3 RDS DB Security group... 3 RDS instance... 4 S3 bucket... 7 Create the bucket... 7 Create a user to access the S3 bucket... 9 Configure the tibbr instance... 12 Configure the S3 bucket... 13 Configure site_root... 13 Configure the database connection... 13 Configure the firewall... 14 Configure Apache... 14 Initialize the database... 14 Start tibbr... 15
Introduction Tibbr on AWS has three pre-requisites, a MySQL instance, a S3 bucket and an IAM user. This document details the process to create the resources as well as configuring the tibbr instance to use them. MySQL While you can choose to create and manage your own MySQL server, using AWS s managed database service (RDS) is recommended. Choosing a RDS instance size Tibbr recommends Users Instance Class Allocated Storage 1-200 db.m1.large 50GB Creating the RDS instance Login to the AWS RDS Web Console https://console.aws.amazon.com/rds/home. RDS DB Security group Start by creating a DB Security group
Choose an EC2 security group you have or will launch your Tibbr instance in. Choose a EC2 security group you have or will launch your Tibbr instance in. RDS instance
Set - DB Instance Class to db.m1.large - Multi-AZ Deployment to Yes - Allocated Storage to 50 - DB Instance Identifier to tibbr - Master Username to tibbr_user - Set a strong master password
Set - Database Name to tibbrdb - DB Security Group to the security group you created above. Make sure the backup retention period meets your business requirements; the default is 1 day. Creating the instance can take up to 10 minutes. Note the endpoint name
S3 bucket You will need to create a S3 bucket and a user to access the bucket. Create the bucket Browse to the S3 console
Your bucket name must be globally unique. Record the bucket name, you will need it later.
Create a user to access the S3 bucket Browse to the IAM console
Record the access key and secret access key
Copy and paste the sample policy below, replacing both instances of the sample bucket name with your bucket name. { } "Statement": [ { "Action": "s3:*", "Effect": "Allow", "Resource": [ "arn:aws:s3:::tibbr_documentation_bucket", "arn:aws:s3:::tibbr_documentation_bucket/*" ] } ] Configure the tibbr instance If you haven t already launched the tibbr AMI go to the AWS MarketPlace and launch it via 1-Click Launch or manually using Launch with EC2 Console. Once the instance is running, record the Public DNS name of the instance. Connect to the instance via SSH client (PuTTY, Java SSH, etc) using the key pair you specified when you launched the AMI. If prompted, login as root. For more information about using SSH, see http://docs.aws.amazon.com/awsec2/latest/userguide/putty.html. # ssh -i <key pair> root@<instance Public DNS name>
Configure the S3 bucket # vim /opt/tibco4.0.1v9/tibbr/4.0.0/tibbr-config/default_app_config.yml Edit the storage: section starting on line 37. Change the style to s3 and add the bucket you created and the access key and secret access key from the IAM user you created. Configure site_root # vim /opt/tibco4.0.1v9/tibbr/4.0.0/tibbr-config/default_app_config.yml Edit the site_root: value on line 265, replacing localhost with the instances Public DNS name Configure the database connection # vim /opt/tibco4.0.1v9/tibbr/4.0.0/tibbr-config/database.yml Edit the production: section starting on line 40. Set the database name, username and password from the RDS configuration. The host: is the RDS endpoint name.
Configure the firewall By default the iptables firewall will block inbound connections to the web server on your instance. To open port 80 and 443 # vim /etc/sysconfig/iptables Add these lines just above the line that starts -A RH-Firewall-1-INPUT -j REJECT -A RH-Firewall-1-INPUT -m tcp -p tcp --dport 80 -j ACCEPT -A RH-Firewall-1-INPUT -m tcp -p tcp --dport 443 -j ACCEPT **NOTE** Connections on port 80 are insecure. To force users to use SSL don t include the first line (port 80) above. Restart the firewall - # service iptables restart Configure Apache By default connections on port 80 (http://) are redirected to tibbr.com. If you want to enable port 80 access to your instance you need to disable the redirection by editing the httpd.conf file. # vim /opt/tibco4.0.1v9/tibbr/4.0.0/tools/apache2/conf/httpd.conf Comment out lines 532, 533, 534 Initialize the database # cd /opt/tibco4.0.1v9/tibbr/4.0.0/scripts/ #./init_database.sh Initializing the database can take up to 15 minutes.
Start tibbr #./start_tibbr.sh Tibbr can take several minutes to start. To make sure tibbr has started successfully run #./status.sh You can now access the tibbr application via a web browser at https://<public DNS Name>/. For more information on using the product, please refer to the tibbr documentation located at https://docs.tibco.com/products/tibbr.