Automating EBS snapshots with Lambda

Lab Steps

Logging in to the Amazon Web Services Console
Creating a AWS Lambda Function That Takes EBS Snapshots
Testing the AWS Lambda function
Automating Snapshot Creation

Ready for the real environment experience?

Time Limit1h


In this Lab, you will automate the process of creating EBS snapshots using Lambda functions and CloudWatch Events.

Learning Objectives

Upon completion of this Lab, you will be able to:

  • Create Lambda functions to take the EBS snapshots
  • Schedule Lambda functions to run automatically every day with CloudWatch Event triggers


You should be familiar with:

  • Basic AWS Lambda concepts
  • Amazon Elastic Block Storage (EBS) volumes and snapshots
  • Node.js development experience is beneficial, but not required

Lab Environment

Before completing the Lab instructions, the environment will look as follows:

After completing the Lab instructions, the environment should look similar to:


May 11th, 2022 - Updated the instructions and screenshots to reflect the latest UI

January 18th, 2022 - Updated the instructions and screenshots to reflect the latest UI

March 9th, 2021 - Updated AWS Lambda instructions and screenshots to reflect the latest user-interface changes

January 10th, 2019 - Added a validation Lab Step to check the work you perform in the Lab

June 15, 2018 - Complete update (easier to follow instructions, updated screenshots, updating to Node.js 8.10 runtime)

About the Author

Eric Magalhães has a strong background as a Systems Engineer for both Windows and Linux systems and, currently, work as a DevOps Consultant for Embratel. Lazy by nature, he is passionate about automation and anything that can make his job painless, thus his interest in topics like coding, configuration management, containers, CI/CD and cloud computing went from a hobby to an obsession. Currently, he holds multiple AWS certifications and, as a DevOps Consultant, helps clients to understand and implement the DevOps culture in their environments, besides that, he play a key role in the company developing pieces of automation using tools such as Ansible, Chef, Packer, Jenkins and Docker.