Watch Newvem's Video
14 Steps to Launching an Application, part 1
14 Steps to Launching an AWS Application, part 1
Step 1: Signing-Up for AWS
You can have complete access to Amazon’s cloud computing services by signing up for AWS.
Note: You will need a credit card to sign up. However, you will not be charged till you start using the services. Moreover, with the convenient “Pay-as-you-go” pricing model, you can stop using AWS at any time.
Step 2: Installing the Command Line Tool
To minimize the usage of billable services, you need to install certain command line tools for the purpose of Auto Scaling.
To learn more about installing the Auto Scaling command line tools, go to the section Setting Up The Amazon EC2 Command Line Tools.
Step 3: Creating an Amazon S3 Bucket
Amazon S3 can be used to store images, files and other static objects. You can make your objects fully-public if you want to see how Amazon S3 can act as an image server in the cloud also. Amazon S3 is redundant across multiple data centres, and can thus provide very high levels of durability for minimal costs (a few cents) per gb/month.
Note: There is no charge for creating a bucket. Users are only charged for storage and transfer of objects in a bucket, and these charges are minimal. For more information, go to Amazon S3 Pricing.
Step 4: Creating a CloudFront Distribution
Amazon CloudFront is an AWS content delivery service. It helps in improving reliability, performance, and availability of one’s websites and applications. Data delivered by Amazon CloudFront is stored on an origin server. CloudFront uses a number of edge locations around the globe, to distribute your images, files, videos, and other data. Your data is served from your personally configured Amazon S3 bucket or some custom origin, to the edge location with the lowest latency towards the user who requests the data. Amazon CloudFront is the best choice if you have global users, and expect high traffic. You can successfully set up an Amazon CloudFront distribution.
Note: This is an optional step. It can be skipped, and deployment of the web application can still be done at the end of the tutorial.
Step 5: Creating an Elastic Load Balancer
Elastic Load Balancing is a user-friendly, cost-effective web service which helps in improving your application’s availability, and also scalability. Elastic Load Balancing facilitates easy distribution of applications, and their loads, between any more Amazon EC2 instances. It makes your application available through redundancy.
Elastic Load Balancing also supports the traffic growth of an application. It automatically balances and distributes the incoming traffic among all running instances of an application. This service can also help you increase the capacity of your application, by easily adding new instances when needed. Dynamic registration and deregistration of instances can be carried out from the load balances, depending on your application’s capacity requirements.
Once this service is activated, billing is done according to how long the load balancer keeps running. This step helps us create a load balancer for an HTTP service.
Note: The creation of an Elastic Load Balancer resource will balance your traffic load between multiple running instances. Ultimately, Elastic Load Balancing is cost-relative to instance hours. In Step 13, Launching New Environments Using AWS CloudFormation, we will create a template for your resources, and add instances to your Auto-Scaling group using AWS CloudFormation.