1. Home
  2. Training Library
  3. Amazon Web Services
  4. Courses
  5. AWS Solutions Architect Associate Level Certification Course: Part 3 of 3

CloudFormation

Start course
Overview
Difficulty
Advanced
Duration
1h 10m
Students
1617
Description

AWS Solutions Architect Associate Level Certification Course - Part 3 of 3

Having completed parts one and two of our AWS certification series, you should now be familiar with basic AWS services and some of the workings of AWS networking. This final course in our three-part certification exam preparation series focuses on data management and application and services deployment.

Who should take this course?

This is an advanced course that's aimed at people who already have some experience with AWS and a familiarity with the general principles of architecting cloud solutions.

Where will you go from here?

The self-testing quizzes of the AWS Solutions Architect Associate Level prep materialis a great follow up to this series...and a pretty good indicator of your readiness to take the AWS exam. Also, since you're studying for the AWS certification, check out our AWS Certifications Study Guide on our blog.

Transcript

Sometimes a shortcut is simply the best way to get somewhere. Amazon's CloudFormation certainly seems to feel that using two or three click approach to building common server profiles and templates make sense, even if from a geeky perspective it's really cheating. Let's try a quick CloudFormation build of a Wordpress instance. From the CloudFormation dashboard click on Create New Stack and give our new stack a name.

Now we can select a JSON formatted template either from the 10 or so common template samples that AWS provides or from your own template you can upload or whose S3 address you can specify. We'll choose WordPress blog from the samples and click Next. In the parameters page we'll accept five gigabytes of allocated storage, obviously a bit low for a normal deployment. We'll lower the database class from its default down to db.t1.micro, add a DBPassword and say admin as our DBUser.

We'll similarly downgrade the instance type to t1.micro point to the existing key pair on our account. Leave MultiAZDatabase as false even though we might normally prefer the significantly enhance reliability that MultiAZ's redundancy can provide and despite the fact that this could normally be a security weakness we'd prefer to avoid leave SSH origins wide open. The alternative will be the restrict SSH access to sessions originating on your local IP address but since we're creating a stack that might be reuse over and over again and since your local IP address might be dynamic or you might want to use SSH from multiple occassions it's safe in the short term to leave it open, we'll then click Next. Now if we if like we can create an identifying tag for the stack by clicking Advanced, add things like SNS notifications, both click Next again and review our stack details and click Create.

You might have to click the refresh button at the top right of the page to get CloudFront to display our new stack, where we can now see that the creation is in progress. If we headover to view our RDS database instances we should be able to see the WordPress database starting up.

In a quick trip to the EC2 dashboard should show us the same thing for our WordPress instance. Once CloudFormation is done creating our installation we can access it through SSH using the EC2 instances IP address. However, since the blog itself is actually behind the load balancer it can be reach only using the uniques end point that's displayed in the CloudFormation dashboard. With our stack selected click on the Outputs tab and note the end point shown as value. CloudFormer is a separate tool that allows us to create a reusable stack from an existing set of AWS tools. Let's click on Create Stack, give our new stack a name and this time from the sample templates dropdown select CloudFormer and then Next. As before and for similar reason we'll leave access open, although promising ourselves to type in things up as soon as possible.

We won't create a tag although such an identifier could be very useful if the number of stacks and other resources in our account increases. We'll acknowledge that CloudFormer will create an IAM rule as part of the process, review our configuration and launch. Once the stack is up and running we'll go to the end point that will be displayed in the Outputs tab as before, however this time since we haven't yet defined our Stack we'll be take into a CloudFormer configuration screen. We'll select the region and click Create Template.

CloudFormer will analyze the resources currently being used by our account looking for possible material for a new template. Before going to we can choose to focus on a particular template or to filter results by tags.

We'll just allow CloudFormer to search the whole account. We currently have no DNS record associated with this account so we'll skip through this step. We'll select our default VPC currently the only VPC on the account, and then select any VPC based resources we'd like to include. We'll go with everything there and through the next couple of screens.

We'll select the Load Balancer and other resources that are associated with our other stack and go on.

The summary page allows us modify our selections but we're happy with what we've got so we'll click Continue which creates a JSON template for us.

We'll save the template which will now be available to us as an option from the Create Stack window.

About the Author
Avatar
David Clinton
Linux SysAdmin
Students
12538
Courses
12
Learning Paths
4

David taught high school for twenty years, worked as a Linux system administrator for five years, and has been writing since he could hold a crayon between his fingers. His childhood bedroom wall has since been repainted.

Having worked directly with all kinds of technology, David derives great pleasure from completing projects that draw on as many tools from his toolkit as possible.

Besides being a Linux system administrator with a strong focus on virtualization and security tools, David writes technical documentation and user guides, and creates technology training videos.

His favorite technology tool is the one that should be just about ready for release tomorrow. Or Thursday.