Outlining our plan
Setting up the infrastructure
The course is part of these learning paths
In this course, the expert CloudAcademy's Senior Devops Engineer, Antonio Angelino, will discuss how to set up a static website on the Cloud using only Amazon S3 to store the files, Amazon CloudFront for content delivery, Route 53 to associate a custom domain name to our website, and Amazon Glacier to set up an automatic backup strategy of the website's files on S3. It's an effective and low-cost solution that avoids the burden of configuring an EC2 instance with a webserver for a task that is very simple, but still needs good skills to be accomplished proficiently.
Who should follow this course
As a beginner-to-intermediate course, you are expected to have some experience with the basic concepts of website hosting. Also, you should have at least a small experience with the AWS services described in the course, namely S3, CloudFront, Route53 and Glacier. In any case, you should be able to understand the key concepts shown in this course even if you are a newcomer of the Amazon Cloud.
If you need to learn more about the AWS services cited here, please check our collection of AWS courses. Also, if you want to test your knowledge on the basic topics covered in this course, check out our AWS questions. You will learn more about every single services cited in this course.
If you have thoughts or suggestions for this course, please contact Cloud Academy at email@example.com.
When you host a website on Amazon S3, AWS assigns a website URL based on the name of the storage location you create in Amazon S3 to hold the website files in the geographical region where you created the bucket. CloudFront also creates an ugly URL to serve all files of your distribution. If you want to associate a custom domain to a CloudFront distribution you need to configure its DNS zone records accordingly. In this video we'll configure the cloudacademylab.com domain using Route 53. Amazon Route 53 is a scalable domain name system, or DNS, service that provide secure and reliable routing to locations both inside and outside of AWS.
We need to associate an A record with the route domain and the www sub domain, open the Amazon Route 53 console and in hosted zones window, click create hosted zone.
In the domain name box, type the custom domain name, click the create hosted zone button at the bottom of the page. When the hosted zone is successfully created, in the list or domain names select the check box that corresponds to the domain name.
In the details pane under delegation set, Amazon Route 53 displays the set of name servers that have been allocated for that domain.
We need to point our registered domain to these name servers for using it. Now we are ready to configure the required A record in order to use CloudFront in the Amazon Route 53 console. In the details pane, select the check box that corresponds to the previously created zone, and then click create record set. Fill in the fields as follows, the name box is already pre-filled, you can leave the default value. In the type box select A-IPv4 address to create an A record for your domain, in alias click yes, and under alias target select the CloudFront distribution.
In the routing policy box select simple. Leave evaluate target health set to no. Finally click the create record set button at the bottom of the pane. Next we have to create another A record that points to the www sub-domain. Click create record set and fill in the following fields. In the name box type www. In the type box select A-IPv4 address to create an A record. In alias click yes, in the alias target box select the CloudFront distribution from the drop down list that appears. In the routing policy box click simple. Leave evaluate target health set to no. Click the create record set button at the bottom of the pane. All services are now configured but we need to wait up to 48 hours for these changes to take effect, and then any visitors who refer to the site by using cloudacademylab.com or cloudacademymylab.com will be invisibly redirected to the nearest CloudFront edge location where they'll benefit from faster download times.
About the Author
Antonio is an IT Manager and a software and infrastructure Engineer with 15 years of experience in designing, implementing and deploying complex webapps.
He has a deep knowledge of the IEEE Software and Systems Engineering Standards and of several programming languages (Python, PHP, Java, Scala, JS).
Antonio has also been using and designing cloud infrastructures for five years, using both public and private cloud services (Amazon Web Services, Google Cloud Platform, Azure, Openstack and Vmware vSphere).
During his past working experiences, he designed and managed large web clusters, also developing a service orchestrator for providing automatic scaling, self-healing and a Disaster Recovery Strategy.
Antonio is currently the Labs Product Manager and a Senior DevOps Engineer at Cloud Academy; his main goal is providing the best learn-by-doing experience possible taking care of the Cloud Academy Labs platform.