AWS CloudFormation: A Concise Tutorial Just An Hour | ACTE
cloudformation tutorial

AWS CloudFormation: A Concise Tutorial Just An Hour – FREE

Last updated on 09th Jul 2020, Blog, Tutorials

About author

Eswar (Sr Cloud Platform Architecture )

He is A TOP Rated Domain Expert with 7+ Years Of Experience Also, He is a Technology Writer for Past 5 Years to Imparts Informative Blog for Fresher's & JOB Seeker

(5.0) | 16547 Ratings 1027

The easiest way to describe what CloudFormation is that it is a tool from AWS that allows you to spin up resources effortlessly. You define all the resources you want AWS to spin up in a blueprint document, click a button, and then AWS magically creates it all. This blueprint is called a template in CloudFormation speak.

CloudFormation makes sure that dependent resources in your template are all created in the proper order. For example, let’s say we want to create a DNS Route53 record and a EC2 instance having the DNS record point to the EC2 instance. CloudFormation will take care to provision the EC2 instance first, wait for that to be ready, and then create the DNS record afterwards. AWS CloudFormation “orchestrates” the provisioning of the desired resources.

So instead of having to write script with a bunch of AWS API calls, wait loops, and retry logic, you just tell describe what you want and tell CloudFormation to do it for you. Beautiful.

How Does CloudFormation Works?

  • Code the infrastructure from the scratch with the CloudFormation template language it can be in either YAML or JSON format.
  • Check the code locally and upload it to the AWS S3 bucket.
AWS S3 bucket
  • Use AWs with the help of the browser console, command line tools or APIs to create a stack-based in the template code.
Learn AWS CloudFormation
  • AWS CloudFormation provisions and configures the stacks and the resources the user specifies on the template.

    Subscribe For Free Demo


    Do you know What is Amazon CloudFront and its Working?

    Learn AWS CloudFormation

    Benefits of AWS CloudFormation

    Following are the Amazon CloudFormation Benefits, let’s discuss them:

    Benefits of AWS CloudFormation

    a. Model it all

    AWS CloudFormation permits The user to model The user entire infrastructure during a document. This templet becomes the one supply of truth for The user infrastructure. This helps The user to standardize infrastructure parts used across The user organization, facultative configuration compliance and quicker troubleshooting.

    b. Automate & Deploy

    Amazon CloudFormation provisions The user resources during a safe, while not having to perform manual actions or write custom scripts, repeatable manner, permitting The user to make and build The user infrastructure and applications. CloudFormation takes care of decisive the proper operations to perform once managing The user stack and rolls back changes automatically if errors are detected.

    c. It’s Simply Code

    Codifying the user infrastructure permits The user to treat The user infrastructure as simply code. The user will be able to author it with any code editor, check it into a version system, and review the files with team members before deploying into production.

     Amazon CloudFormation Features

     Amazon CloudFormation Features

    a. Authoring with JSON/YAML

    AWS CloudFormation permits The user to model The user entire infrastructure during a document. The user will be able to use JSON or YAML to explain what AWS resources The user would like to form and put together. If The user would like to style visually, The user will be able to use AWS CloudFormation Designer to assist The user start with AWS CloudFormation templates.

    Course Curriculum

    Get Enroll in AWS CloudFormation Training with Instructor-led Classes

    • Instructor-led Sessions
    • Real-life Case Studies
    • Assignments
    Explore Curriculum

    b. Safety Controls

    Amazon CloudFormation automates the provisioning and change of The user infrastructure in a safe and controlled manner. There are not any manual steps or controls which will cause errors. The user will be able to use Rollback Triggers to specify the CloudWatch alarm that CloudFormation ought to monitor throughout the stack creation and update method. If any of the alarms are broken, AWS CloudFormation rolls back the whole stack operation to a previous deployed state.

    c. Preview Changes to a User Environment

    AWS CloudFormation modification Sets permit The user to preview however projected changes to a stack would possibly impact The user running resources. as an example, whether or not The user changes can delete or replace any important resources. AWS CloudFormation makes the changes to The user stack solely once The user chooses to execute the modification Set.

    d. Dependency Management

    Amazon CloudFormation automatically manages dependencies between The user resources throughout stack management actions. {The user do|The user ar doing} not have to be compelled to worry concerning specifying the order during which resource are created, updated, or deleted. AWS CloudFormation determines the proper sequence of actions to use for every resource once playing stack operations.

    e. Cross Account and Cross-Region Management

    AWS StackSets that enables The user to provision a typical set of AWS resources across multiple accounts and regions with one CloudFormation template. StackSets takes care and provides safely provisioning, updating to the best, or deleting stacks in multiple accounts and across various regions. This provides an equivalent level of automation, repeatability, and dependability to stack management operations across regions and accounts.

    f. Extensibility

    Amazon CloudFormation allows The user to make custom extensions to The user stack template using AWS Lambda. The user will be able to use Custom Resources, that is associate extensibility mechanism that permits The user to write down custom provisioning during a Lambda perform and have it trigger throughout a CloudFormation stack. The user will be able to write custom provisioning logic for tasks like provisioning a 3rd party resource or trying up the most recent AMI IDs to be used in The user stacks.

    Launching the Stack

    After all that explanation, let’s finally launch the stack!

    $ aws cloudformation create-stack –template-body file://templates/single_instance.yml –stack-name single-instance –parameters ParameterKey=KeyName,ParameterValue=tutorial ParameterKey=InstanceType,ParameterValue=t2.micro

    Upon successfully launching the CloudFormation stack you will see output similar to this:

    • {
    •    “StackId”: “arn:aws:cloudformation:us-west-2:1606191131234:stack/single-instance/3401e900-3d83-11e7-bb7e-503f2a2cee4a”
    • }

    To check on the status of the newly launch stack, you can use the AWS CloudFormation console and click in the Events Tab after selecting the stack name. Here’s what it looks like.

    AWS CloudFormation console

    You can see that the EC2 Instance and the EC2 Security group were created in about a minute. Next let’s find the running instance so we can grab the Public DNS to log in. We can find that on the EC2 Console.

    Course Curriculum

    Learn AWS CloudFormation Training Courses to Build Your Skills & Career

    Weekday / Weekend BatchesSee Batch Details

    EC2 Console

    Use the DNS info to now ssh into the instance.

    $ ssh -i ~/.ssh/tutorial.pem ec2-user@ec2–54–71–197–

    $ uptime

    You have successfully launched an EC2 instance with CloudFormation and ssh into it!


    Let’s destroy the resources so you do not get charged more money than you have to. This is super simple.

    aws cloudformation delete-stack –stack-name single-instance

    Configuring CloudFormation Stack

    • Login to AWS and go to AWS CloudFormation console
    • Select the option “Upload a template to Amazon S3” under “Choose a template”. Upload your template by selecting “Choose File”
    • Give an appropriate “Stack name” to your CloudFormation Stack and provide the name of EC2 Keypair.  Click “Next”
    • All of the input fields on this page are optional, however, you can specify a tag that will be added to all the resources your template is going to create. You can use the permissions assigned to your AWS account to be considered at the time of running of your template or alternatively you can create an IAM role and run your template using it. Either way, your account or IAM role should have the permissions to create the resources listed in your template. Also, you can create roll back alarms.  
    • Click “Next” and then click “Create.”

    The execution of template will start and you can see the progress in the “Events” tab.



    AWS Sample Resumes! Download & Edit, Get Noticed by Top Employers! Download

    Hence, we studied the user can use AWS CloudFormation’s sample templates or produce the user own templates to explain the AWS resources. Amazon CloudFormation takes care of this for the user. When the AWS resources are deployed, the user will be able to modify and update them during a controlled and predictable approach. In result applying version management to the user AWS infrastructure a similar approach, the user is doing along with The user package.

    Are you looking training with Right Jobs?

    Contact Us
    Get Training Quote for Free