O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Learn CloudFormation

Book Description

Get up and running with AWS automation using CloudFormation

Key Features

  • Explore the fundamentals of AWS CloudFormation
  • Get acquainted with concepts such as CloudFormation templates and mappings
  • Learn to implement Infrastructure as a Code (IaC) on AWS

Book Description

As the Amazon Web Services (AWS) infrastructure is gradually moving towards cloud, managing cloud-related tasks efficiently continues to be a challenge for system administrators. CloudFormation is a language developed for managing infrastructure-related services efficiently on AWS and its features help secure the AWS resource deployment process.

Learn CloudFormation serves as a fundamental guide to kick-start your journey on CloudFormation. We will introduce you to the basic concepts on IaC and the AWS services required for implementing automation and infrastructure management. Then, we deep dive into concepts such as CloudFormation mapping, conditions, limit, and output and EC2. In the concluding chapters, you will manage the entire AWS infrastructure using CloudFormation templates.

By the end of this book, you will get up and running with IaC with CloudFormation.

What you will learn

  • Understand AWS CloudFormation
  • Develop AWS CloudFormation templates
  • Deploy AWS CloudFormation for AWS resources
  • Build your first AWS CloudFormation project
  • Explore AWS Security features
  • Deploy testing and production stages using CloudFormation

Who this book is for

Learn CloudFormation is for cloud engineers, system administrators, cloud architects, or any stakeholders working in the field of cloud development or cloud administration. Basic knowledge of AWS is necessary.

Downloading the example code for this book You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the files e-mailed directly to you.

Table of Contents

  1. Title Page
  2. Copyright and Credits
    1. Learn CloudFormation
  3. Packt Upsell
    1. Why subscribe?
    2. PacktPub.com
  4. Contributors
    1. About the author
    2. About the reviewer
    3. Packt is searching for authors like you
  5. Preface
    1. Who this book is for
    2. What this book covers
    3. To get the most out of this book
      1. Download the example code files
      2. Download the color images
      3. Conventions used
    4. Get in touch
      1. Reviews
  6. Introducing AWS CloudFormation
    1. Introducing IaC
    2. AWS CloudFormation
      1. How does it work?
      2. Controlling IaC source scripts
    3. CloudFormation templates
    4. CloudFormation stacks
    5. CloudFormation StackSets
    6. Exploring the AWS CloudFormation management console
    7. Managing CloudFormation using the AWS CLI
    8. Summary
    9. Questions
  7. Building Your First AWS CloudFormation Project
    1. CloudFormation project scenario
      1. Preparation
    2. Implementing a CloudFormation project using the management console
    3. Implementing a CloudFormation project using the AWS CLI
      1. Setting up the AWS Command Line Interface (CLI)
      2. Configuring security access for CloudFormation
      3. Building and deploying CloudFormation
    4. Editing a CloudFormation project
      1. Editing CloudFormation using the management console
      2. Editing CloudFormation using the AWS CLI
    5. Deleting a CloudFormation project
      1. Deleting CloudFormation using the management console
      2. Deleting CloudFormation Stack using the AWS CLI
    6. Summary
    7. Questions
  8. Developing AWS CloudFormation Templates
    1. Reviewing the AWS CloudFormation template format
    2. Reviewing JSON and YAML programming
      1. JSON programming
      2. YAML programming
    3. The programming model for AWS CloudFormation templates
    4. Writing JSON and YAML to create AWS CloudFormation templates
    5. Getting input from the CloudFormation template
    6. Introducing AWS CloudFormation Designer
    7. Giving a template description
    8. Selecting the input from options
    9. Mapping parameters
    10. Working with intrinsic functions
    11. Working with Metadata on the CloudFormation template
    12. CloudFormation resources
    13. CloudFormation output
    14. Demo – building Amazon EC2 using AWS CloudFormation
      1. Preparing
      2. Developing a CloudFormation template
      3. Deploying the template
    15. Summary
    16. Questions
  9. AWS CloudFormation StackSets
    1. Introduction to AWS CloudFormation StackSets
    2. Preparing CloudFormation StackSets
      1. Getting the user ID from the IAM user
      2. Creating the AWSCloudFormationStackSetAdministrationRole IAM role
      3. Creating a service role – AWSCloudFormationStackSetExecutionRole
    3. Implementing StackSets using management console
      1. Creating a new StackSet
      2. Adding a new CloudFormation Stack
      3. Deleting CloudFormation stacks
    4. Creating StackSets using the AWS CLI
    5. Editing CloudFormation StackSets
    6. Deleting CloudFormation StackSets
    7. Summary
    8. Questions
  10. Building Lambda Functions Using AWS CloudFormation
    1. Introducing AWS Lambda
    2. Building AWS Lambda 
      1. Creating the IAM role
      2. Developing AWS Lambda using Web Management Console (WMC)
      3. Testing AWS Lambda
    3. CloudFormation template for AWS Lambda functions
    4. Deploying Lambda functions using AWS CloudFormation
      1. Creating a CloudFormation template for the Lambda function
      2. Deploying AWS Lambda to CloudFormation
    5. CloudFormation for AWS Lambda and DynamoDB
      1. Creating the CloudFormation template for AWS DynamoDB
      2. Building a CloudFormation template for Lambda and DynamoDB
        1. Accessing DynamoDB from Lambda functions
        2. Creating the CloudFormation template
      3. Deploying the CloudFormation template
      4. Configuring the Lambda invocation policy
      5. Testing our Lambda function
    6. Deploying the Lambda function to multiple regions
      1. Preparation
      2. Developing a CloudFormation template for the Lambda function
      3. Deploying the Lambda function to multiple regions
      4. Invoking the Lambda function
    7. Summary
    8. Questions
  11. AWS CloudFormation Security
    1. Security threats and models for AWS CloudFormation
    2. Best practices for AWS security
    3. Managing all AWS resource securities
    4. Reducing security access to CloudFormation stacks
    5. Stack policies
    6. IAM conditions for CloudFormation
    7. AWS security checklist
    8. Summary
  12. Assessment
    1. Chapter 1
    2. Chapter 2
    3. Chapter 3
    4. Chapter 4
    5. Chapter 5
  13. Other Books You May Enjoy
    1. Leave a review - let other readers know what you think