Engineers are understandably attracted to serverless as it allows them to execute code in response to events without the complexity of building and maintaining infrastructure. In a previous article, we shared how a serverless framework allows you to develop, deploy, test, secure and monitor any number of serverless applications with increased agility and a lower cost of ownership. While we compared different models and gave a high-level overview of serverless with example use cases, in today’s article, we’ll highlight how Flux7 implemented an AWS serverless framework for one of its customers with best practices.
This retail organization wanted a serverless framework for the benefits it brings in delivering business value and innovation at a low operating cost. Moreover, the retailer has a large number of remote, on-demand applications to manage. As some of its deployments are partially based on Azure, and some are based on AWS, Flux7 helped the organization create serverless continuous integration (CI) and continuous delivery (CD) tools and pipelines for their cloud deployments. These CI/CD tools facilitated the customer’s ability to build more custom pipelines for infrastructure provisioning, and application and service deployments. The pipelines were made as cloud agnostic as possible, supporting rolling deployments. Through these pipelines, even ECS and EKS were deployed to AWS to support blue/green deployments with options to automatically scale up or down the nodes in the cluster.
Serverless Framework Architecture
Before we deep dive into the details of the technical implementation, let’s take a quick look at a generic serverless framework architecture and its prerequisites.