SlideShare a Scribd company logo
Bengaluru, India
IaC on AWS
Bhuvaneswari Subramani | 21st May 2021
https://bhuvana.pro/
/bhuvanas
@installjournal
Agenda
• Infrastructure as Code on AWS
• AWS CloudFormation
• AWS Serverless Application Model (SAM)
• AWS CDK (CDK)
• IaC Solutions in AWS Marketplace
Infrastructure as Code on AWS
Managing Infrastructure as Code
SOURCE
Developers
commit changes
BUILD
Changes
are built
STAGING
Code is deployed and
tested
PRODUCTION
Developers commit
changes
AWS CodeCommit AWS CodeBuild Third Party Tooling AWS CodeDeploy
AWS CodePipeline
AWS CodeDeploy
IaC Tools AWS
CloudFormation
AWS
Serverless
Application Model
AWS CDK
c
Apply DevOps Principles to IaC
AWS CloudFormation
AWS CloudFormation
• Create and provision AWS infrastructure deployments
predictably and repeatedly
• Resources are written in text files using JSON or YAML
format. Use Cloud9 or your favorite editor
• Version Control the template
• Helps build the specified services in safe, repeatable
manner
AWS CloudFormation Template
Stack
Parameters
Mappings
Resources
Outputs
Template
Parameter
Values
Create /
Update
sync
Env =>
Test / Prod
One Template
Entire Environment
Repeatable
AWS CloudFormation Template Anatomy
JSON vs YAML
Except
resources all
sections are
optional
CI / CD for Infrastructure & WebApp
Source Build Deploy
Pipeline view of Infra Rollout +
Web App Deployment
AWS Serverless Application Model
(SAM)
c
AWS Serverless Application Model
• AWS CloudFormation extension, optimized for serverless
• AWS SAM is supported directly by AWS CloudFormation
• YAML or JSON
• Supported Resources
• Api, Application, Function, HttpApi, LayerVersion, SimpleTable,
StateMachine
c
AWS SAM Template Anatomy
• Transform declaration
Transform: AWS::Serverless-2016-10-31
• Globals section
AWS::Serverless::Function, AWS::Serverless::Api, etc.
• Resources section
Combination of CloudFormation & AWS SAM resources
• Parameters section
Objects declared in Parameters section cause SAM deploy
AWS SAM CLI
• CLI tool for local development, debugging, testing, deploying, and monitoring of
serverless applications
• Supports API Gateway “proxy-style” and Lambda service API testing
• Response object and function logs available on your local machine
• Uses open-source docker-lambda images to mimic Lambda’s execution environment
• Can tail production logs from CloudWatch logs
• Can help you build in native dependencies
AWS SAM CLI Commands
• sam build – install dependencies
• sam deploy – deploy AWS SAM application with AWS CloudFormation
• sam init – initialize a serverless application
• sam local:
• generate-event– generate sample payloads from event sources
• Invoke invokes a Lambda function once
• start-api – set up local endpoint to test your API
• start-lambda – start a local endpoint to test your local lambda
• sam logs – fetch logs for a function
• sam package – package an AWS SAM application
• sam publish – Publish an AWS SAM application to the AWS Serverless Application Repository
• sam validate – Verifies whether an AWS SAM template file is valid
CI / CD for Lambda Deployment using AWS SAM
AWS CDK (CDK)
AWS CDK
• AWS CDK to define your cloud resources in a familiar
programming language
• AWS CDK supports TypeScript, JavaScript, Python, Java,
C#/.Net, and (in developer preview) Go
• Define reusable cloud components known as Constructs
• Compose Constructs together into Stacks and Apps
AWS CDK
AWS CDK Development Workflow
Create App Add Code Build Synthesize Deploy
AWS CDK Development Workflow
Create App Add Code Build Synthesize Deploy
Add code to the app to create
resources within stacks
Build the app
Synthesize stack(s) in app to
create AWS CloudFormation
template Deploy stacks to
your AWS account
AWS CDK Toolkit
The AWS CDK Toolkit is a command line tool for interacting with CDK apps
• cdk lists (ls) – Lists the stacks in the app
• cdk synthesize (synth) – Synthesizes and prints the CloudFormation template for the specified
stack(s)
• cdk bootstrap – Deploys the CDK Toolkit stack
• cdk deploy - Deploys the specified stack(s)
• cdk destroy - Destroys the specified stack(s)
• cdk diff – Compares the stack with deployed or local CloudFormation template
• cdk metadata – Displays metadata about the specified stack
• cdk init – Creates a new CDK project in the current directory from a specified template
• cdk context - Manages cached context values
• cdk docs (doc) – Opens the CDK API reference in your browser
• cdk doctor - Checks your CDK project for potential problems
IaC Solutions in AWS Marketplace
IaC Solutions in AWS Marketplace
Key benefits of using solutions from AWS Marketplace
Key Take Aways AWS
CloudFormation
AWS
Serverless
Application Model
AWS CDK
c
Better together: AWS SAM and AWS CDK
Let’s Orchestrate IaC
Bengaluru, India
https://bhuvana.pro/
/bhuvanas
@installjournal

More Related Content

What's hot

AWS Code-Deploy
AWS Code-DeployAWS Code-Deploy
AWS Code-Deploy
Knoldus Inc.
 
(ARC307) Infrastructure as Code
(ARC307) Infrastructure as Code(ARC307) Infrastructure as Code
(ARC307) Infrastructure as Code
Amazon Web Services
 
Best Practices for CI/CD with AWS Lambda and Amazon API Gateway (SRV355-R1) -...
Best Practices for CI/CD with AWS Lambda and Amazon API Gateway (SRV355-R1) -...Best Practices for CI/CD with AWS Lambda and Amazon API Gateway (SRV355-R1) -...
Best Practices for CI/CD with AWS Lambda and Amazon API Gateway (SRV355-R1) -...
Amazon Web Services
 
Getting Started With Cypress
Getting Started With CypressGetting Started With Cypress
Getting Started With Cypress
Knoldus Inc.
 
CI/CD pipelines on AWS - Builders Day Israel
CI/CD pipelines on AWS - Builders Day IsraelCI/CD pipelines on AWS - Builders Day Israel
CI/CD pipelines on AWS - Builders Day Israel
Amazon Web Services
 
AWS CodeDeploy, AWS CodePipeline, and AWS CodeCommit: Transforming Software D...
AWS CodeDeploy, AWS CodePipeline, and AWS CodeCommit: Transforming Software D...AWS CodeDeploy, AWS CodePipeline, and AWS CodeCommit: Transforming Software D...
AWS CodeDeploy, AWS CodePipeline, and AWS CodeCommit: Transforming Software D...Amazon Web Services
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
Robert Greiner
 
Amazon SageMaker 모델 빌딩 파이프라인 소개::이유동, AI/ML 스페셜리스트 솔루션즈 아키텍트, AWS::AWS AIML 스...
Amazon SageMaker 모델 빌딩 파이프라인 소개::이유동, AI/ML 스페셜리스트 솔루션즈 아키텍트, AWS::AWS AIML 스...Amazon SageMaker 모델 빌딩 파이프라인 소개::이유동, AI/ML 스페셜리스트 솔루션즈 아키텍트, AWS::AWS AIML 스...
Amazon SageMaker 모델 빌딩 파이프라인 소개::이유동, AI/ML 스페셜리스트 솔루션즈 아키텍트, AWS::AWS AIML 스...
Amazon Web Services Korea
 
Developer Experience (DX) as a Fitness Function for Platform Teams
Developer Experience (DX) as a Fitness Function for Platform TeamsDeveloper Experience (DX) as a Fitness Function for Platform Teams
Developer Experience (DX) as a Fitness Function for Platform Teams
Andy Marks
 
Introduction to helm
Introduction to helmIntroduction to helm
Introduction to helm
Jeeva Chelladhurai
 
Helm intro
Helm introHelm intro
CI:CD in Lightspeed with kubernetes and argo cd
CI:CD in Lightspeed with kubernetes and argo cdCI:CD in Lightspeed with kubernetes and argo cd
CI:CD in Lightspeed with kubernetes and argo cd
Billy Yuen
 
Deep Dive on AWS Lambda
Deep Dive on AWS LambdaDeep Dive on AWS Lambda
Deep Dive on AWS Lambda
Amazon Web Services
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
Amazon Web Services
 
How to Build a CICD Pipeline with AWS CodeStar
How to Build a CICD Pipeline with AWS CodeStarHow to Build a CICD Pipeline with AWS CodeStar
How to Build a CICD Pipeline with AWS CodeStar
Amazon Web Services
 
Amazon API Gateway
Amazon API GatewayAmazon API Gateway
Amazon API Gateway
Amazon Web Services
 
Monitoring Kubernetes with Prometheus
Monitoring Kubernetes with PrometheusMonitoring Kubernetes with Prometheus
Monitoring Kubernetes with Prometheus
Grafana Labs
 
Build your APPs in Lean and Agile Way using AWS Amplify
Build your APPs in Lean and Agile Way using AWS AmplifyBuild your APPs in Lean and Agile Way using AWS Amplify
Build your APPs in Lean and Agile Way using AWS Amplify
Amazon Web Services
 
02 api gateway
02 api gateway02 api gateway
02 api gateway
Janani Velmurugan
 
AWS Certified Solutions Architect Professional Course S1-S5
AWS Certified Solutions Architect Professional Course S1-S5AWS Certified Solutions Architect Professional Course S1-S5
AWS Certified Solutions Architect Professional Course S1-S5
Neal Davis
 

What's hot (20)

AWS Code-Deploy
AWS Code-DeployAWS Code-Deploy
AWS Code-Deploy
 
(ARC307) Infrastructure as Code
(ARC307) Infrastructure as Code(ARC307) Infrastructure as Code
(ARC307) Infrastructure as Code
 
Best Practices for CI/CD with AWS Lambda and Amazon API Gateway (SRV355-R1) -...
Best Practices for CI/CD with AWS Lambda and Amazon API Gateway (SRV355-R1) -...Best Practices for CI/CD with AWS Lambda and Amazon API Gateway (SRV355-R1) -...
Best Practices for CI/CD with AWS Lambda and Amazon API Gateway (SRV355-R1) -...
 
Getting Started With Cypress
Getting Started With CypressGetting Started With Cypress
Getting Started With Cypress
 
CI/CD pipelines on AWS - Builders Day Israel
CI/CD pipelines on AWS - Builders Day IsraelCI/CD pipelines on AWS - Builders Day Israel
CI/CD pipelines on AWS - Builders Day Israel
 
AWS CodeDeploy, AWS CodePipeline, and AWS CodeCommit: Transforming Software D...
AWS CodeDeploy, AWS CodePipeline, and AWS CodeCommit: Transforming Software D...AWS CodeDeploy, AWS CodePipeline, and AWS CodeCommit: Transforming Software D...
AWS CodeDeploy, AWS CodePipeline, and AWS CodeCommit: Transforming Software D...
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
 
Amazon SageMaker 모델 빌딩 파이프라인 소개::이유동, AI/ML 스페셜리스트 솔루션즈 아키텍트, AWS::AWS AIML 스...
Amazon SageMaker 모델 빌딩 파이프라인 소개::이유동, AI/ML 스페셜리스트 솔루션즈 아키텍트, AWS::AWS AIML 스...Amazon SageMaker 모델 빌딩 파이프라인 소개::이유동, AI/ML 스페셜리스트 솔루션즈 아키텍트, AWS::AWS AIML 스...
Amazon SageMaker 모델 빌딩 파이프라인 소개::이유동, AI/ML 스페셜리스트 솔루션즈 아키텍트, AWS::AWS AIML 스...
 
Developer Experience (DX) as a Fitness Function for Platform Teams
Developer Experience (DX) as a Fitness Function for Platform TeamsDeveloper Experience (DX) as a Fitness Function for Platform Teams
Developer Experience (DX) as a Fitness Function for Platform Teams
 
Introduction to helm
Introduction to helmIntroduction to helm
Introduction to helm
 
Helm intro
Helm introHelm intro
Helm intro
 
CI:CD in Lightspeed with kubernetes and argo cd
CI:CD in Lightspeed with kubernetes and argo cdCI:CD in Lightspeed with kubernetes and argo cd
CI:CD in Lightspeed with kubernetes and argo cd
 
Deep Dive on AWS Lambda
Deep Dive on AWS LambdaDeep Dive on AWS Lambda
Deep Dive on AWS Lambda
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
 
How to Build a CICD Pipeline with AWS CodeStar
How to Build a CICD Pipeline with AWS CodeStarHow to Build a CICD Pipeline with AWS CodeStar
How to Build a CICD Pipeline with AWS CodeStar
 
Amazon API Gateway
Amazon API GatewayAmazon API Gateway
Amazon API Gateway
 
Monitoring Kubernetes with Prometheus
Monitoring Kubernetes with PrometheusMonitoring Kubernetes with Prometheus
Monitoring Kubernetes with Prometheus
 
Build your APPs in Lean and Agile Way using AWS Amplify
Build your APPs in Lean and Agile Way using AWS AmplifyBuild your APPs in Lean and Agile Way using AWS Amplify
Build your APPs in Lean and Agile Way using AWS Amplify
 
02 api gateway
02 api gateway02 api gateway
02 api gateway
 
AWS Certified Solutions Architect Professional Course S1-S5
AWS Certified Solutions Architect Professional Course S1-S5AWS Certified Solutions Architect Professional Course S1-S5
AWS Certified Solutions Architect Professional Course S1-S5
 

Similar to Infrastructure as Code on AWS

Track 4 Session 4_ MAD02 MAD 04 如何藉由 CICD 流程管理容器化和無伺服器應用
Track 4 Session 4_ MAD02 MAD 04 如何藉由 CICD 流程管理容器化和無伺服器應用Track 4 Session 4_ MAD02 MAD 04 如何藉由 CICD 流程管理容器化和無伺服器應用
Track 4 Session 4_ MAD02 MAD 04 如何藉由 CICD 流程管理容器化和無伺服器應用Amazon Web Services
 
NEW LAUNCH! Developing Serverless C# Applications
NEW LAUNCH! Developing Serverless C# ApplicationsNEW LAUNCH! Developing Serverless C# Applications
NEW LAUNCH! Developing Serverless C# Applications
Amazon Web Services
 
Day 3 - DevOps Culture - Continuous Integration & Continuous Deployment on th...
Day 3 - DevOps Culture - Continuous Integration & Continuous Deployment on th...Day 3 - DevOps Culture - Continuous Integration & Continuous Deployment on th...
Day 3 - DevOps Culture - Continuous Integration & Continuous Deployment on th...
Amazon Web Services
 
Application Lifecycle Management in a Serverless World
Application Lifecycle Management in a Serverless WorldApplication Lifecycle Management in a Serverless World
Application Lifecycle Management in a Serverless World
Amazon Web Services
 
AWS Devops
AWS DevopsAWS Devops
AWS Devops
Sivakumar Ramar
 
Infrastructure Continuous Delivery Using AWS CloudFormation
Infrastructure Continuous Delivery Using AWS CloudFormationInfrastructure Continuous Delivery Using AWS CloudFormation
Infrastructure Continuous Delivery Using AWS CloudFormation
Amazon Web Services
 
Eliminate repetitive work by using AWS Serverless Application Repository
Eliminate repetitive work by using AWS Serverless Application RepositoryEliminate repetitive work by using AWS Serverless Application Repository
Eliminate repetitive work by using AWS Serverless Application Repository
Igor Soroka
 
Deep Dive on Serverless Stack
Deep Dive on Serverless StackDeep Dive on Serverless Stack
Deep Dive on Serverless Stack
Amazon Web Services
 
AWS Lambda in C#
AWS Lambda in C#AWS Lambda in C#
AWS Lambda in C#
Amazon Web Services
 
Introduction to DevOps on AWS
Introduction to DevOps on AWSIntroduction to DevOps on AWS
Introduction to DevOps on AWS
Shiva Narayanaswamy
 
Application Lifecycle Management on AWS
Application Lifecycle Management on AWSApplication Lifecycle Management on AWS
Application Lifecycle Management on AWS
David Mat
 
AWS CDK (Cloud Development Kit): A Comprehensive Guide
AWS CDK (Cloud Development Kit): A Comprehensive GuideAWS CDK (Cloud Development Kit): A Comprehensive Guide
AWS CDK (Cloud Development Kit): A Comprehensive Guide
Inexture Solutions
 
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
Amazon Web Services
 
DevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software DeliveryDevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software Delivery
Amazon Web Services
 
Infrastructure Continuous Delivery Using AWS CloudFormation
Infrastructure Continuous Delivery Using AWS CloudFormationInfrastructure Continuous Delivery Using AWS CloudFormation
Infrastructure Continuous Delivery Using AWS CloudFormation
Amazon Web Services
 
DevOps for Serverless Computing with Demo
DevOps for Serverless Computing with DemoDevOps for Serverless Computing with Demo
DevOps for Serverless Computing with Demo
Amazon Web Services
 
Developing Java Applications in AWS
Developing Java Applications in AWSDeveloping Java Applications in AWS
Developing Java Applications in AWS
Nemanja Kostic
 
AWS re:Invent 2016: Infrastructure Continuous Delivery Using AWS CloudFormati...
AWS re:Invent 2016: Infrastructure Continuous Delivery Using AWS CloudFormati...AWS re:Invent 2016: Infrastructure Continuous Delivery Using AWS CloudFormati...
AWS re:Invent 2016: Infrastructure Continuous Delivery Using AWS CloudFormati...
Amazon Web Services
 
re:Invent recap session 1: What's New with AWS Lambda
re:Invent recap session 1: What's New with AWS Lambda re:Invent recap session 1: What's New with AWS Lambda
re:Invent recap session 1: What's New with AWS Lambda
Amazon Web Services
 
AWS and DevOps Session 1
AWS and DevOps Session 1AWS and DevOps Session 1

Similar to Infrastructure as Code on AWS (20)

Track 4 Session 4_ MAD02 MAD 04 如何藉由 CICD 流程管理容器化和無伺服器應用
Track 4 Session 4_ MAD02 MAD 04 如何藉由 CICD 流程管理容器化和無伺服器應用Track 4 Session 4_ MAD02 MAD 04 如何藉由 CICD 流程管理容器化和無伺服器應用
Track 4 Session 4_ MAD02 MAD 04 如何藉由 CICD 流程管理容器化和無伺服器應用
 
NEW LAUNCH! Developing Serverless C# Applications
NEW LAUNCH! Developing Serverless C# ApplicationsNEW LAUNCH! Developing Serverless C# Applications
NEW LAUNCH! Developing Serverless C# Applications
 
Day 3 - DevOps Culture - Continuous Integration & Continuous Deployment on th...
Day 3 - DevOps Culture - Continuous Integration & Continuous Deployment on th...Day 3 - DevOps Culture - Continuous Integration & Continuous Deployment on th...
Day 3 - DevOps Culture - Continuous Integration & Continuous Deployment on th...
 
Application Lifecycle Management in a Serverless World
Application Lifecycle Management in a Serverless WorldApplication Lifecycle Management in a Serverless World
Application Lifecycle Management in a Serverless World
 
AWS Devops
AWS DevopsAWS Devops
AWS Devops
 
Infrastructure Continuous Delivery Using AWS CloudFormation
Infrastructure Continuous Delivery Using AWS CloudFormationInfrastructure Continuous Delivery Using AWS CloudFormation
Infrastructure Continuous Delivery Using AWS CloudFormation
 
Eliminate repetitive work by using AWS Serverless Application Repository
Eliminate repetitive work by using AWS Serverless Application RepositoryEliminate repetitive work by using AWS Serverless Application Repository
Eliminate repetitive work by using AWS Serverless Application Repository
 
Deep Dive on Serverless Stack
Deep Dive on Serverless StackDeep Dive on Serverless Stack
Deep Dive on Serverless Stack
 
AWS Lambda in C#
AWS Lambda in C#AWS Lambda in C#
AWS Lambda in C#
 
Introduction to DevOps on AWS
Introduction to DevOps on AWSIntroduction to DevOps on AWS
Introduction to DevOps on AWS
 
Application Lifecycle Management on AWS
Application Lifecycle Management on AWSApplication Lifecycle Management on AWS
Application Lifecycle Management on AWS
 
AWS CDK (Cloud Development Kit): A Comprehensive Guide
AWS CDK (Cloud Development Kit): A Comprehensive GuideAWS CDK (Cloud Development Kit): A Comprehensive Guide
AWS CDK (Cloud Development Kit): A Comprehensive Guide
 
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
 
DevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software DeliveryDevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software Delivery
 
Infrastructure Continuous Delivery Using AWS CloudFormation
Infrastructure Continuous Delivery Using AWS CloudFormationInfrastructure Continuous Delivery Using AWS CloudFormation
Infrastructure Continuous Delivery Using AWS CloudFormation
 
DevOps for Serverless Computing with Demo
DevOps for Serverless Computing with DemoDevOps for Serverless Computing with Demo
DevOps for Serverless Computing with Demo
 
Developing Java Applications in AWS
Developing Java Applications in AWSDeveloping Java Applications in AWS
Developing Java Applications in AWS
 
AWS re:Invent 2016: Infrastructure Continuous Delivery Using AWS CloudFormati...
AWS re:Invent 2016: Infrastructure Continuous Delivery Using AWS CloudFormati...AWS re:Invent 2016: Infrastructure Continuous Delivery Using AWS CloudFormati...
AWS re:Invent 2016: Infrastructure Continuous Delivery Using AWS CloudFormati...
 
re:Invent recap session 1: What's New with AWS Lambda
re:Invent recap session 1: What's New with AWS Lambda re:Invent recap session 1: What's New with AWS Lambda
re:Invent recap session 1: What's New with AWS Lambda
 
AWS and DevOps Session 1
AWS and DevOps Session 1AWS and DevOps Session 1
AWS and DevOps Session 1
 

More from Bhuvaneswari Subramani

Application Modernization with AWS - A Transformation in Digital Era
Application Modernization with AWS - A Transformation in Digital EraApplication Modernization with AWS - A Transformation in Digital Era
Application Modernization with AWS - A Transformation in Digital Era
Bhuvaneswari Subramani
 
The Operations effect of Dev, Data, ML and FM
The Operations effect of Dev, Data, ML and FMThe Operations effect of Dev, Data, ML and FM
The Operations effect of Dev, Data, ML and FM
Bhuvaneswari Subramani
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Bhuvaneswari Subramani
 
Architecting for Success: Designing Secure GCP Landing Zone for Enterprises
Architecting for Success: Designing Secure GCP Landing Zone for EnterprisesArchitecting for Success: Designing Secure GCP Landing Zone for Enterprises
Architecting for Success: Designing Secure GCP Landing Zone for Enterprises
Bhuvaneswari Subramani
 
How AWS Community in India reflects Unity in Diversity
How AWS Community in India reflects Unity in DiversityHow AWS Community in India reflects Unity in Diversity
How AWS Community in India reflects Unity in Diversity
Bhuvaneswari Subramani
 
An Insight Into Cloud Migration Story
An Insight Into Cloud Migration StoryAn Insight Into Cloud Migration Story
An Insight Into Cloud Migration Story
Bhuvaneswari Subramani
 
End-to-End CI/CD at scale with Infrastructure-as-Code on AWS
End-to-End CI/CD at scale with Infrastructure-as-Code on AWSEnd-to-End CI/CD at scale with Infrastructure-as-Code on AWS
End-to-End CI/CD at scale with Infrastructure-as-Code on AWS
Bhuvaneswari Subramani
 
COM 203 Enable continuous delivery and resiliency for a static website
COM 203 Enable continuous delivery and resiliency for a static websiteCOM 203 Enable continuous delivery and resiliency for a static website
COM 203 Enable continuous delivery and resiliency for a static website
Bhuvaneswari Subramani
 
LoadRunner walkthrough
LoadRunner walkthroughLoadRunner walkthrough
LoadRunner walkthrough
Bhuvaneswari Subramani
 
Jmeter Walkthrough
Jmeter WalkthroughJmeter Walkthrough
Jmeter Walkthrough
Bhuvaneswari Subramani
 
Fundamentals Performance Testing
Fundamentals Performance TestingFundamentals Performance Testing
Fundamentals Performance Testing
Bhuvaneswari Subramani
 
Fundamentals of Cloud Computing & AWS
Fundamentals of Cloud Computing & AWSFundamentals of Cloud Computing & AWS
Fundamentals of Cloud Computing & AWS
Bhuvaneswari Subramani
 
IaC on AWS Cloud
IaC on AWS CloudIaC on AWS Cloud
IaC on AWS Cloud
Bhuvaneswari Subramani
 
A Pathway to Continuous Integration/Continuous Delivery on AWS
A Pathway to Continuous Integration/Continuous Delivery on AWSA Pathway to Continuous Integration/Continuous Delivery on AWS
A Pathway to Continuous Integration/Continuous Delivery on AWS
Bhuvaneswari Subramani
 
Transformational DevOps with AWS Native Tools
Transformational DevOps with AWS Native ToolsTransformational DevOps with AWS Native Tools
Transformational DevOps with AWS Native Tools
Bhuvaneswari Subramani
 
Demystifying DevOps
Demystifying DevOpsDemystifying DevOps
Demystifying DevOps
Bhuvaneswari Subramani
 
Application & Account Monitoring in AWS
Application & Account Monitoring in AWSApplication & Account Monitoring in AWS
Application & Account Monitoring in AWS
Bhuvaneswari Subramani
 
Industry Awareness to KSRCT
Industry Awareness to KSRCT Industry Awareness to KSRCT
Industry Awareness to KSRCT
Bhuvaneswari Subramani
 
CI CD using AWS Developer Tools Online Workshop
CI CD using AWS Developer Tools Online WorkshopCI CD using AWS Developer Tools Online Workshop
CI CD using AWS Developer Tools Online Workshop
Bhuvaneswari Subramani
 
IndiaCloudSummit - Transforming to feature-driven development
IndiaCloudSummit - Transforming to feature-driven developmentIndiaCloudSummit - Transforming to feature-driven development
IndiaCloudSummit - Transforming to feature-driven development
Bhuvaneswari Subramani
 

More from Bhuvaneswari Subramani (20)

Application Modernization with AWS - A Transformation in Digital Era
Application Modernization with AWS - A Transformation in Digital EraApplication Modernization with AWS - A Transformation in Digital Era
Application Modernization with AWS - A Transformation in Digital Era
 
The Operations effect of Dev, Data, ML and FM
The Operations effect of Dev, Data, ML and FMThe Operations effect of Dev, Data, ML and FM
The Operations effect of Dev, Data, ML and FM
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Architecting for Success: Designing Secure GCP Landing Zone for Enterprises
Architecting for Success: Designing Secure GCP Landing Zone for EnterprisesArchitecting for Success: Designing Secure GCP Landing Zone for Enterprises
Architecting for Success: Designing Secure GCP Landing Zone for Enterprises
 
How AWS Community in India reflects Unity in Diversity
How AWS Community in India reflects Unity in DiversityHow AWS Community in India reflects Unity in Diversity
How AWS Community in India reflects Unity in Diversity
 
An Insight Into Cloud Migration Story
An Insight Into Cloud Migration StoryAn Insight Into Cloud Migration Story
An Insight Into Cloud Migration Story
 
End-to-End CI/CD at scale with Infrastructure-as-Code on AWS
End-to-End CI/CD at scale with Infrastructure-as-Code on AWSEnd-to-End CI/CD at scale with Infrastructure-as-Code on AWS
End-to-End CI/CD at scale with Infrastructure-as-Code on AWS
 
COM 203 Enable continuous delivery and resiliency for a static website
COM 203 Enable continuous delivery and resiliency for a static websiteCOM 203 Enable continuous delivery and resiliency for a static website
COM 203 Enable continuous delivery and resiliency for a static website
 
LoadRunner walkthrough
LoadRunner walkthroughLoadRunner walkthrough
LoadRunner walkthrough
 
Jmeter Walkthrough
Jmeter WalkthroughJmeter Walkthrough
Jmeter Walkthrough
 
Fundamentals Performance Testing
Fundamentals Performance TestingFundamentals Performance Testing
Fundamentals Performance Testing
 
Fundamentals of Cloud Computing & AWS
Fundamentals of Cloud Computing & AWSFundamentals of Cloud Computing & AWS
Fundamentals of Cloud Computing & AWS
 
IaC on AWS Cloud
IaC on AWS CloudIaC on AWS Cloud
IaC on AWS Cloud
 
A Pathway to Continuous Integration/Continuous Delivery on AWS
A Pathway to Continuous Integration/Continuous Delivery on AWSA Pathway to Continuous Integration/Continuous Delivery on AWS
A Pathway to Continuous Integration/Continuous Delivery on AWS
 
Transformational DevOps with AWS Native Tools
Transformational DevOps with AWS Native ToolsTransformational DevOps with AWS Native Tools
Transformational DevOps with AWS Native Tools
 
Demystifying DevOps
Demystifying DevOpsDemystifying DevOps
Demystifying DevOps
 
Application & Account Monitoring in AWS
Application & Account Monitoring in AWSApplication & Account Monitoring in AWS
Application & Account Monitoring in AWS
 
Industry Awareness to KSRCT
Industry Awareness to KSRCT Industry Awareness to KSRCT
Industry Awareness to KSRCT
 
CI CD using AWS Developer Tools Online Workshop
CI CD using AWS Developer Tools Online WorkshopCI CD using AWS Developer Tools Online Workshop
CI CD using AWS Developer Tools Online Workshop
 
IndiaCloudSummit - Transforming to feature-driven development
IndiaCloudSummit - Transforming to feature-driven developmentIndiaCloudSummit - Transforming to feature-driven development
IndiaCloudSummit - Transforming to feature-driven development
 

Recently uploaded

Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 

Recently uploaded (20)

Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 

Infrastructure as Code on AWS

  • 1. Bengaluru, India IaC on AWS Bhuvaneswari Subramani | 21st May 2021 https://bhuvana.pro/ /bhuvanas @installjournal
  • 2. Agenda • Infrastructure as Code on AWS • AWS CloudFormation • AWS Serverless Application Model (SAM) • AWS CDK (CDK) • IaC Solutions in AWS Marketplace
  • 4. Managing Infrastructure as Code SOURCE Developers commit changes BUILD Changes are built STAGING Code is deployed and tested PRODUCTION Developers commit changes AWS CodeCommit AWS CodeBuild Third Party Tooling AWS CodeDeploy AWS CodePipeline AWS CodeDeploy
  • 8. AWS CloudFormation • Create and provision AWS infrastructure deployments predictably and repeatedly • Resources are written in text files using JSON or YAML format. Use Cloud9 or your favorite editor • Version Control the template • Helps build the specified services in safe, repeatable manner
  • 11. AWS CloudFormation Template Anatomy JSON vs YAML Except resources all sections are optional
  • 12. CI / CD for Infrastructure & WebApp Source Build Deploy
  • 13. Pipeline view of Infra Rollout + Web App Deployment
  • 14. AWS Serverless Application Model (SAM) c
  • 15. AWS Serverless Application Model • AWS CloudFormation extension, optimized for serverless • AWS SAM is supported directly by AWS CloudFormation • YAML or JSON • Supported Resources • Api, Application, Function, HttpApi, LayerVersion, SimpleTable, StateMachine c
  • 16. AWS SAM Template Anatomy • Transform declaration Transform: AWS::Serverless-2016-10-31 • Globals section AWS::Serverless::Function, AWS::Serverless::Api, etc. • Resources section Combination of CloudFormation & AWS SAM resources • Parameters section Objects declared in Parameters section cause SAM deploy
  • 17. AWS SAM CLI • CLI tool for local development, debugging, testing, deploying, and monitoring of serverless applications • Supports API Gateway “proxy-style” and Lambda service API testing • Response object and function logs available on your local machine • Uses open-source docker-lambda images to mimic Lambda’s execution environment • Can tail production logs from CloudWatch logs • Can help you build in native dependencies
  • 18. AWS SAM CLI Commands • sam build – install dependencies • sam deploy – deploy AWS SAM application with AWS CloudFormation • sam init – initialize a serverless application • sam local: • generate-event– generate sample payloads from event sources • Invoke invokes a Lambda function once • start-api – set up local endpoint to test your API • start-lambda – start a local endpoint to test your local lambda • sam logs – fetch logs for a function • sam package – package an AWS SAM application • sam publish – Publish an AWS SAM application to the AWS Serverless Application Repository • sam validate – Verifies whether an AWS SAM template file is valid
  • 19. CI / CD for Lambda Deployment using AWS SAM
  • 21. AWS CDK • AWS CDK to define your cloud resources in a familiar programming language • AWS CDK supports TypeScript, JavaScript, Python, Java, C#/.Net, and (in developer preview) Go • Define reusable cloud components known as Constructs • Compose Constructs together into Stacks and Apps
  • 23. AWS CDK Development Workflow Create App Add Code Build Synthesize Deploy
  • 24. AWS CDK Development Workflow Create App Add Code Build Synthesize Deploy Add code to the app to create resources within stacks Build the app Synthesize stack(s) in app to create AWS CloudFormation template Deploy stacks to your AWS account
  • 25. AWS CDK Toolkit The AWS CDK Toolkit is a command line tool for interacting with CDK apps • cdk lists (ls) – Lists the stacks in the app • cdk synthesize (synth) – Synthesizes and prints the CloudFormation template for the specified stack(s) • cdk bootstrap – Deploys the CDK Toolkit stack • cdk deploy - Deploys the specified stack(s) • cdk destroy - Destroys the specified stack(s) • cdk diff – Compares the stack with deployed or local CloudFormation template • cdk metadata – Displays metadata about the specified stack • cdk init – Creates a new CDK project in the current directory from a specified template • cdk context - Manages cached context values • cdk docs (doc) – Opens the CDK API reference in your browser • cdk doctor - Checks your CDK project for potential problems
  • 26. IaC Solutions in AWS Marketplace
  • 27. IaC Solutions in AWS Marketplace
  • 28. Key benefits of using solutions from AWS Marketplace
  • 29. Key Take Aways AWS CloudFormation AWS Serverless Application Model AWS CDK c Better together: AWS SAM and AWS CDK
  • 30. Let’s Orchestrate IaC Bengaluru, India https://bhuvana.pro/ /bhuvanas @installjournal