How does Terraform deploy your lambda to AWS

Joey Yi Zhao
9 min readJul 23, 2019

When it comes to cloud management, many people find it is difficulty to maintain a complex infrastructure (networks, virtual machines, load balancers, and connection topology) on cloud environment such as AWS, Azure, GPC etc. It quickly becomes a challenge task for DevOps to keep their infrastructure clean, maintainable, scalable etc.

Infrastructure as Code, known as IaC, envolved to solve the problem of cloud settings maintenance in the release pipeline. AWS has introduced a solution, Cloudformation, to support IaC on AWS cloud environment. But, unfortunately, developers feel that read/write cloudformation configuration file is very painful especially when it becomes complicated or involves many AWS services, permission, policies, roles. In addition, some teams are supporting multiple cloud platform not only AWS, like AZure, GPC. That means DevOps has to work with different IaC solution in this project which greatly increase workload and bring more cost to our projects.

Terraform is the platform I used recently and I feel like it is a kind of framework to solve the pain of IaC. So I’d like to share with you about how I use Terraform in my project and show you step by step how I improve it to be able to support multiple environments with different settings.

Installation

--

--