SlideShare a Scribd company logo
1 of 46
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
End-to-End CI/CD at scale with
Infrastructure-as-Code on AWS
Bhuvaneswari Subramani (she/hers)
D1DEV102
Director, Engineering Operations, Infor
AWS DevTools Hero
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Quick Intro
• Bhuvaneswari Subramani (Bhuvana)
• Director, Engineering Operations, Infor
• AWS Hero since 2019
• Organizer, AWS User Group Bengaluru
• Leading cloud computing, DevOps,
and Performance QA
https://bhuvana.pro
/bhuvanas
@installjournal
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Agenda
• Why Infrastructure as Code (IaC) for CI CD ?
• CI CD multi-account Architecture
• Build & Deployment Infrastructure Setup
• Best Practices
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Why Infrastructure as Code
for CI CD ?
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Key Benefits
Speed Consistency Traceability
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
CI CD with multi-account
architecture
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC Gateway
EndPoint
Continuous Integration
VPC
Developer Service Account
Private subnet
Build & Deploy
Server
Worker Nodes
Lin 1
2
3
Mirror Git
Repo
CI
1 - Initiate Build process
2 - Get Source code
3 - Compile & generate artifacts
4 - Publish artifacts
5 - Run code validation suite
AWS Cloud
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC Gateway
EndPoint
Continuous Integration
VPC
Developer Service Account
Private subnet
Build & Deploy
Server
Worker Nodes
Lin 1
2
3
Mirror Git
Repo
Publish build
artifacts
4
S3 Buckets
CI
1 - Initiate Build process
2 - Get Source code
3 - Compile & generate artifacts
4 - Publish artifacts
5 - Run code validation suite
AWS Cloud
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC Gateway
EndPoint
Continuous Integration
VPC
Developer Service Account
Private subnet
Build & Deploy
Server
Worker Nodes
Lin 1
2
3
Mirror Git
Repo
Publish build
artifacts
4
S3 Buckets
CI
1 - Initiate Build process
2 - Get Source code
3 - Compile & generate artifacts
4 - Publish artifacts
5 - Run code validation suite
5
AWS Cloud
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC Gateway
EndPoint
Continuous Integration
VPC
Developer Service Account
Build & Deploy
Server
Worker Nodes
Lin
Private subnet
1
2
3
Mirror Git
Repo
Publish build
artifacts
4
S3 Buckets
5
App artifacts
Config artifacts
Data system artifacts
Test artifacts
AWS Cloud
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Mirror Git
Repo
Lin
VPC
Continuous Deployment – Nano Env
AWS Cloud AWS Cloud
Developer Service Account Nano Environment(s) Account
https://<env-id>.nano.infornexus.com
Public Subnet
Internet gateway
Windows
Peer
Linux
Peer
Users
Availability Zone
VPC
Private subnet
Build & Deploy
Server
S3 Buckets
Deploy
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Nano to Full Scale Environments
Beta
…
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Continuous Integration – Alpha / Beta / Prod Env
VPC
Developer Service Account
Private subnet
Build Server
Worker Nodes
Lin 1
2
3
Mirror Git
Repo
CI
1 - Initiate Build process
2 - Get Source code
3 - Compile & generate artifacts
4 - Publish artifacts
5 - Run code validation suite
AWS Cloud
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Continuous Integration – Alpha / Beta / Prod Env
VPC
Developer Service Account
Private subnet
Build Server
Worker Nodes
Lin 1
2
3
Mirror Git
Repo
Publish build
artifacts
4
S3 Buckets
CI
1 - Initiate Build process
2 - Get Source code
3 - Compile & generate artifacts
4 - Publish artifacts
5 - Run code validation suite
AWS Cloud
VPC Gateway
EndPoint
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Continuous Integration – Alpha / Beta / Prod Env
VPC
Developer Service Account
Private subnet
Build Server
Worker Nodes
Lin 1
2
3
Mirror Git
Repo
Publish build
artifacts
4
S3 Buckets
CI
1 - Initiate Build process
2 - Get Source code
3 - Compile & generate artifacts
4 - Publish artifacts
5 - Run code validation suite
AWS Cloud
VPC Gateway
EndPoint
ECR
Publish container
images
VPC Interface
EndPoint
4
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Continuous Deployment – Alpha / Beta / Prod Env
VPC
Developer Service Account
Private subnet
Build Server
Worker Nodes
Lin 1
2
3
Mirror Git
Repo
Publish build
artifacts
4
S3 Buckets
CI
1 - Initiate Build process
2 - Get Source code
3 - Compile & generate artifacts
4 - Publish artifacts
5 - Run code validation suite
5
AWS Cloud
VPC Gateway
EndPoint
AWS Cloud
Prod Account
Deploy Server
ECR
Publish container
images
VPC Interface
EndPoint
4
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Mirror Git
Repo
Lin
Continuous Deployment – Alpha / Beta / Prod Env
AWS Cloud
Developer Service Account
VPC
Private subnet
Build Server
VPC
AWS Cloud
Alpha / Beta / Prod Environment Account
Private subnet
App Container Services
• Web Tier
• Integration Tier
Intermediate Tier
• Caching
• Lock co-ordination
• Service Discovery
Data Tier
• Queueing
• AWS Hosted Data Services
• AWS Managed Data Services
Logging
&
Monitoring
Supply
Chain
Intelligence
Deploy Server
Deploy Nodes
A
Publish build
artifacts
ECR
B Publish
container
images
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Mirror Git
Repo
Lin
Continuous Deployment – Alpha / Beta / Prod Env
AWS Cloud
Developer Service Account
VPC
Private subnet
Build Server
VPC
AWS Cloud
Alpha / Beta / Prod Environment Account
Private subnet
App Container Services
• Web Tier
• Integration Tier
Intermediate Tier
• Caching
• Lock co-ordination
• Service Discovery
Data Tier
• Queueing
• AWS Hosted Data Services
• AWS Managed Data Services
Logging
&
Monitoring
Supply
Chain
Intelligence
Deploy Server
Deploy Nodes
A
Publish build
artifacts
C
ECR
B Publish
container
images
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Mirror Git
Repo
Lin
Continuous Deployment – Alpha / Beta / Prod Env
AWS Cloud
Developer Service Account
VPC
Private subnet
Build Server
VPC
AWS Cloud
Alpha / Beta / Prod Environment Account
Private subnet
App Container Services
• Web Tier
• Integration Tier
Intermediate Tier
• Caching
• Lock co-ordination
• Service Discovery
Data Tier
• Queueing
• AWS Hosted Data Services
• AWS Managed Data Services
Logging
&
Monitoring
Supply
Chain
Intelligence
Deploy Server
Deploy Nodes
A
Publish build
artifacts
C
ECR
B Publish
container
images
D
D
VPC Gateway
EndPoint
VPC Interface
EndPoint
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Build & Deployment
Infrastructure Setup
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Build Infrastructure Components
AWS
CloudFormation
Mirror Git Repo
Jenkins Master
S3 Bucket
IAM Roles
Secrets
Jenkins Win Agent Jenkins Linux
Agent
VPC EndPoints
ECR
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Setup Mirror Git Repo using IaC
Create Git repo tar.gz &
Upload to S3
Create EC2 Instance
Pull Git repo tar.gz from S3
and place in EC2
Configure Cron job to sync
Git repo
AWS
CloudFormation
Mirror Git Repo
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Setup Jenkins Master using IaC
Pipeline
Create
EC2
Salt
minion
Jenkins
Server
Gitlab
IaC Developers
Source - Bootstrap
Bootstrap
Jenkins
Linux Agent
Windows Agent
Jenkins Job
Configuration
Source - IaC
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dev Environment for Jenkins Bootstrapping
Run Jenkins as Container
Install Docker
Setup local repo
Bind mount the directories into
Docker Containers
Install Jenkins as a Container
Configure Jenkins
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dev Environment for Jenkins Bootstrapping
Run Jenkins as Container
Install Docker
Setup local repo
Bind mount the directories into
Docker Containers
Install Jenkins as a Container
Configure Jenkins
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dev Environment for Jenkins Bootstrapping
Run Jenkins as Container
Install Docker
Setup local repo
Bind mount the directories into
Docker Containers
Install Jenkins as a Container
Configure Jenkins
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dev Environment for Jenkins Bootstrapping
Run Jenkins as Container
Install Docker
Setup local repo
Bind mount the directories into
Docker Containers
Install Jenkins as a Container
Configure Jenkins
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dev Environment for Jenkins Bootstrapping
Run Jenkins as Container
Install Docker
Setup local repo
Bind mount the directories into
Docker Containers
Install Jenkins as a Container
Configure Jenkins
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dev Environment for Jenkins Bootstrapping
Run Jenkins as Container
Install Docker
Setup local repo
Bind mount the directories into
Docker Containers
Install Jenkins as a Container
Configure Jenkins
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Best Practices
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Best Practices
• Operational excellence
• Security
• Reliability
• Performance efficiency
• Cost optimization
• Sustainability
AWS Well-Architected Framework
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Operational excellence
• Continually improving quality process
• Design for failure
• Opportunities for improvement
• Clearly defined Promotion model for IaC
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Operational Excellence – Promotion Model
Stable
Staging
Feature
• Holds IaC for services that are live on an Env
• Protected Branch ; Changes needs approval
• Holds IaC for services ready to go live
• Protected Branch ; Changes needs approval
• To apply changes to production or alpha
branch
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Operational Excellence – Promotion Model
[STAGING]
[FEATURE-1]
{Create} {rebase} {promote}
[FEATURE-N] {Create}
{Promote to Stable for go
live}
[ … ]
Conventions
o commit
+ branch create
* rebase
^ promote
/ code flow
[ ] branch
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Operational Excellence – Promotion Model
[STAGING]
[FEATURE-1]
{Create} {rebase} {promote}
[FEATURE-N] {Create}
[STABLE]
Conventions
o commit
+ branch create
* rebase
^ promote
/ code flow
[ ] branch
{Promote to Stable for go
live}
[ … ]
[FEATURE-1] {Create} {rebase} {promote}
[FEATURE-N]
{Create}
[ … ]
{Code flow to Staging}
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Security
• Infrastructure protection
• Centralized identities with SAML 2.0
• End-to-end Traceability
• Data Protection
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Reliability
• Monitor workload Resources
• Adapt to changes in Demand
• Implement resiliency for reliable workload
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Performance Efficiency
• Capability to deploy the workload in multiple AWS
Regions
• Use serverless architectures
• Monitor your resources
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Cost Optimization
• Implement cloud financial management
• Monitor Cost and Usage
• Stop spending money on undifferentiated heavy
lifting
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Sustainability
• Remove or refactor workload components with low or
no use
• Increase utilization of build environments
• Optimize areas of code that consume the most time or
resources
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Key Benefits
Speed Consistency Traceability
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Additional resources
Link 1
About Link 1
AWS speakers,
more resources
are on the wiki
Link 1
About Link 1
Link 1
About Link 1
Link 1
About Link 1
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Deepen your skills with digital
learning on demand
Access 500+ free digital courses
and Learning Plans
Earn an industry-recognized credential
AWS Skill Builder AWS Certifications
Explore resources with a variety of
skill levels and 16+ languages to
meet your learning needs
Join the AWS Certified community and
get exclusive benefits
Receive Foundational,
Associate, Professional, and
Specialty certifications
Train now
Access new
exam guides
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Learn in-demand AWS Cloud skills
Thank you!
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Bhuvaneswari Subramani
https://bhuvana.pro
/bhuvanas
@installjournal
!
Please complete
the session survey
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.

More Related Content

What's hot

DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
Simplilearn
 

What's hot (20)

CI CD Basics
CI CD BasicsCI CD Basics
CI CD Basics
 
Gitops: the kubernetes way
Gitops: the kubernetes wayGitops: the kubernetes way
Gitops: the kubernetes way
 
DevOps introduction
DevOps introductionDevOps introduction
DevOps introduction
 
DevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the AutomationDevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the Automation
 
Docker: From Zero to Hero
Docker: From Zero to HeroDocker: From Zero to Hero
Docker: From Zero to Hero
 
GitOps and ArgoCD
GitOps and ArgoCDGitOps and ArgoCD
GitOps and ArgoCD
 
DevOps 101
DevOps 101DevOps 101
DevOps 101
 
DevOps overview 2019-04-13 Nelkinda April Meetup
DevOps overview  2019-04-13 Nelkinda April MeetupDevOps overview  2019-04-13 Nelkinda April Meetup
DevOps overview 2019-04-13 Nelkinda April Meetup
 
Kubernetes Architecture
 Kubernetes Architecture Kubernetes Architecture
Kubernetes Architecture
 
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
 
Introduction to Docker - 2017
Introduction to Docker - 2017Introduction to Docker - 2017
Introduction to Docker - 2017
 
An introduction to DevOps
An introduction to DevOpsAn introduction to DevOps
An introduction to DevOps
 
Designing a complete ci cd pipeline using argo events, workflow and cd products
Designing a complete ci cd pipeline using argo events, workflow and cd productsDesigning a complete ci cd pipeline using argo events, workflow and cd products
Designing a complete ci cd pipeline using argo events, workflow and cd products
 
2019 DevSecOps Reference Architectures
2019 DevSecOps Reference Architectures2019 DevSecOps Reference Architectures
2019 DevSecOps Reference Architectures
 
Introduction to DevSecOps
Introduction to DevSecOpsIntroduction to DevSecOps
Introduction to DevSecOps
 
Google Cloud Platform Solutions for DevOps Engineers
Google Cloud Platform Solutions  for DevOps EngineersGoogle Cloud Platform Solutions  for DevOps Engineers
Google Cloud Platform Solutions for DevOps Engineers
 
Using Azure DevOps to continuously build, test, and deploy containerized appl...
Using Azure DevOps to continuously build, test, and deploy containerized appl...Using Azure DevOps to continuously build, test, and deploy containerized appl...
Using Azure DevOps to continuously build, test, and deploy containerized appl...
 
DevOps explained
DevOps explainedDevOps explained
DevOps explained
 
Docker Birthday #3 - Intro to Docker Slides
Docker Birthday #3 - Intro to Docker SlidesDocker Birthday #3 - Intro to Docker Slides
Docker Birthday #3 - Intro to Docker Slides
 
DevOps, Common use cases, Architectures, Best Practices
DevOps, Common use cases, Architectures, Best PracticesDevOps, Common use cases, Architectures, Best Practices
DevOps, Common use cases, Architectures, Best Practices
 

Similar to End-to-End CI/CD at scale with Infrastructure-as-Code on AWS

CI-CD with AWS Developer Tools and Fargate_AWSPSSummit_Singapore
CI-CD with AWS Developer Tools and Fargate_AWSPSSummit_SingaporeCI-CD with AWS Developer Tools and Fargate_AWSPSSummit_Singapore
CI-CD with AWS Developer Tools and Fargate_AWSPSSummit_Singapore
Amazon Web Services
 

Similar to End-to-End CI/CD at scale with Infrastructure-as-Code on AWS (20)

From Code to a running container | AWS Summit Tel Aviv 2019
From Code to a running container | AWS Summit Tel Aviv 2019From Code to a running container | AWS Summit Tel Aviv 2019
From Code to a running container | AWS Summit Tel Aviv 2019
 
From Code to a running container | AWS Summit Tel Aviv 2019
From Code to a running container | AWS Summit Tel Aviv 2019From Code to a running container | AWS Summit Tel Aviv 2019
From Code to a running container | AWS Summit Tel Aviv 2019
 
Integrating security testing into your container build pipeline - SDD308 - AW...
Integrating security testing into your container build pipeline - SDD308 - AW...Integrating security testing into your container build pipeline - SDD308 - AW...
Integrating security testing into your container build pipeline - SDD308 - AW...
 
CI CD using AWS Developer Tools @ AWS Community Day Chennai 2019
CI CD using AWS Developer Tools @ AWS Community Day Chennai 2019CI CD using AWS Developer Tools @ AWS Community Day Chennai 2019
CI CD using AWS Developer Tools @ AWS Community Day Chennai 2019
 
DevOps Spain 2019. Pedro Mendoza-AWS
DevOps Spain 2019. Pedro Mendoza-AWSDevOps Spain 2019. Pedro Mendoza-AWS
DevOps Spain 2019. Pedro Mendoza-AWS
 
Community day _aws_ci_cd_v0.2
Community day _aws_ci_cd_v0.2Community day _aws_ci_cd_v0.2
Community day _aws_ci_cd_v0.2
 
Transitioning to the Next Generation Hybrid Cloud Operating Model- AWS Summit...
Transitioning to the Next Generation Hybrid Cloud Operating Model- AWS Summit...Transitioning to the Next Generation Hybrid Cloud Operating Model- AWS Summit...
Transitioning to the Next Generation Hybrid Cloud Operating Model- AWS Summit...
 
Build CICD Pipeline for Container Presentation Slides
Build CICD Pipeline for Container Presentation SlidesBuild CICD Pipeline for Container Presentation Slides
Build CICD Pipeline for Container Presentation Slides
 
20201012 - Serverless Architecture Conference - Deploying serverless applicat...
20201012 - Serverless Architecture Conference - Deploying serverless applicat...20201012 - Serverless Architecture Conference - Deploying serverless applicat...
20201012 - Serverless Architecture Conference - Deploying serverless applicat...
 
AWS DevOps Essentials: An Introductory Workshop on CI/CD Best Practices (DEV3...
AWS DevOps Essentials: An Introductory Workshop on CI/CD Best Practices (DEV3...AWS DevOps Essentials: An Introductory Workshop on CI/CD Best Practices (DEV3...
AWS DevOps Essentials: An Introductory Workshop on CI/CD Best Practices (DEV3...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 
CI/CD with AWS Developer Tools and Fargate
CI/CD with AWS Developer Tools and FargateCI/CD with AWS Developer Tools and Fargate
CI/CD with AWS Developer Tools and Fargate
 
ACDKOCHI19 - CI / CD using AWS Developer Tools
ACDKOCHI19 - CI / CD using AWS Developer ToolsACDKOCHI19 - CI / CD using AWS Developer Tools
ACDKOCHI19 - CI / CD using AWS Developer Tools
 
Developing applications on AWS with .NET core - AWS Cape Town Summit 2018
Developing applications on AWS with .NET core - AWS Cape Town Summit 2018Developing applications on AWS with .NET core - AWS Cape Town Summit 2018
Developing applications on AWS with .NET core - AWS Cape Town Summit 2018
 
Simplificando Arquiteturas Microsoft com os Serviços da AWS - ARC204 - Sao P...
Simplificando Arquiteturas Microsoft com os Serviços da AWS -  ARC204 - Sao P...Simplificando Arquiteturas Microsoft com os Serviços da AWS -  ARC204 - Sao P...
Simplificando Arquiteturas Microsoft com os Serviços da AWS - ARC204 - Sao P...
 
Continuously Deploy Your CDK Application by Petra novandi barus
Continuously  Deploy Your CDK Application by Petra novandi barusContinuously  Deploy Your CDK Application by Petra novandi barus
Continuously Deploy Your CDK Application by Petra novandi barus
 
CI/CD best practices for building modern applications - MAD310 - New York AWS...
CI/CD best practices for building modern applications - MAD310 - New York AWS...CI/CD best practices for building modern applications - MAD310 - New York AWS...
CI/CD best practices for building modern applications - MAD310 - New York AWS...
 
CI-CD with AWS Developer Tools and Fargate_AWSPSSummit_Singapore
CI-CD with AWS Developer Tools and Fargate_AWSPSSummit_SingaporeCI-CD with AWS Developer Tools and Fargate_AWSPSSummit_Singapore
CI-CD with AWS Developer Tools and Fargate_AWSPSSummit_Singapore
 
Lessons learnt in CI/CD with AWS serverless architecture
Lessons learnt in CI/CD with AWS serverless architectureLessons learnt in CI/CD with AWS serverless architecture
Lessons learnt in CI/CD with AWS serverless architecture
 
CI/CD Best Practices for Building Modern Applications - MAD302 - Anaheim AWS ...
CI/CD Best Practices for Building Modern Applications - MAD302 - Anaheim AWS ...CI/CD Best Practices for Building Modern Applications - MAD302 - Anaheim AWS ...
CI/CD Best Practices for Building Modern Applications - MAD302 - Anaheim AWS ...
 

More from 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
 
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
 
Infrastructure as Code on AWS
Infrastructure as Code on AWSInfrastructure as Code on AWS
Infrastructure as Code on AWS
 
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

TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governance
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
ChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps Productivity
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 

End-to-End CI/CD at scale with Infrastructure-as-Code on AWS

  • 1.
  • 2. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. End-to-End CI/CD at scale with Infrastructure-as-Code on AWS Bhuvaneswari Subramani (she/hers) D1DEV102 Director, Engineering Operations, Infor AWS DevTools Hero
  • 3. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Quick Intro • Bhuvaneswari Subramani (Bhuvana) • Director, Engineering Operations, Infor • AWS Hero since 2019 • Organizer, AWS User Group Bengaluru • Leading cloud computing, DevOps, and Performance QA https://bhuvana.pro /bhuvanas @installjournal
  • 4. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Agenda • Why Infrastructure as Code (IaC) for CI CD ? • CI CD multi-account Architecture • Build & Deployment Infrastructure Setup • Best Practices
  • 5. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Why Infrastructure as Code for CI CD ?
  • 6. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Key Benefits Speed Consistency Traceability
  • 7. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. CI CD with multi-account architecture
  • 8. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. VPC Gateway EndPoint Continuous Integration VPC Developer Service Account Private subnet Build & Deploy Server Worker Nodes Lin 1 2 3 Mirror Git Repo CI 1 - Initiate Build process 2 - Get Source code 3 - Compile & generate artifacts 4 - Publish artifacts 5 - Run code validation suite AWS Cloud
  • 9. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. VPC Gateway EndPoint Continuous Integration VPC Developer Service Account Private subnet Build & Deploy Server Worker Nodes Lin 1 2 3 Mirror Git Repo Publish build artifacts 4 S3 Buckets CI 1 - Initiate Build process 2 - Get Source code 3 - Compile & generate artifacts 4 - Publish artifacts 5 - Run code validation suite AWS Cloud
  • 10. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. VPC Gateway EndPoint Continuous Integration VPC Developer Service Account Private subnet Build & Deploy Server Worker Nodes Lin 1 2 3 Mirror Git Repo Publish build artifacts 4 S3 Buckets CI 1 - Initiate Build process 2 - Get Source code 3 - Compile & generate artifacts 4 - Publish artifacts 5 - Run code validation suite 5 AWS Cloud
  • 11. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. VPC Gateway EndPoint Continuous Integration VPC Developer Service Account Build & Deploy Server Worker Nodes Lin Private subnet 1 2 3 Mirror Git Repo Publish build artifacts 4 S3 Buckets 5 App artifacts Config artifacts Data system artifacts Test artifacts AWS Cloud
  • 12. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Mirror Git Repo Lin VPC Continuous Deployment – Nano Env AWS Cloud AWS Cloud Developer Service Account Nano Environment(s) Account https://<env-id>.nano.infornexus.com Public Subnet Internet gateway Windows Peer Linux Peer Users Availability Zone VPC Private subnet Build & Deploy Server S3 Buckets Deploy
  • 13. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Nano to Full Scale Environments Beta …
  • 14. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Continuous Integration – Alpha / Beta / Prod Env VPC Developer Service Account Private subnet Build Server Worker Nodes Lin 1 2 3 Mirror Git Repo CI 1 - Initiate Build process 2 - Get Source code 3 - Compile & generate artifacts 4 - Publish artifacts 5 - Run code validation suite AWS Cloud
  • 15. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Continuous Integration – Alpha / Beta / Prod Env VPC Developer Service Account Private subnet Build Server Worker Nodes Lin 1 2 3 Mirror Git Repo Publish build artifacts 4 S3 Buckets CI 1 - Initiate Build process 2 - Get Source code 3 - Compile & generate artifacts 4 - Publish artifacts 5 - Run code validation suite AWS Cloud VPC Gateway EndPoint
  • 16. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Continuous Integration – Alpha / Beta / Prod Env VPC Developer Service Account Private subnet Build Server Worker Nodes Lin 1 2 3 Mirror Git Repo Publish build artifacts 4 S3 Buckets CI 1 - Initiate Build process 2 - Get Source code 3 - Compile & generate artifacts 4 - Publish artifacts 5 - Run code validation suite AWS Cloud VPC Gateway EndPoint ECR Publish container images VPC Interface EndPoint 4
  • 17. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Continuous Deployment – Alpha / Beta / Prod Env VPC Developer Service Account Private subnet Build Server Worker Nodes Lin 1 2 3 Mirror Git Repo Publish build artifacts 4 S3 Buckets CI 1 - Initiate Build process 2 - Get Source code 3 - Compile & generate artifacts 4 - Publish artifacts 5 - Run code validation suite 5 AWS Cloud VPC Gateway EndPoint AWS Cloud Prod Account Deploy Server ECR Publish container images VPC Interface EndPoint 4
  • 18. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Mirror Git Repo Lin Continuous Deployment – Alpha / Beta / Prod Env AWS Cloud Developer Service Account VPC Private subnet Build Server VPC AWS Cloud Alpha / Beta / Prod Environment Account Private subnet App Container Services • Web Tier • Integration Tier Intermediate Tier • Caching • Lock co-ordination • Service Discovery Data Tier • Queueing • AWS Hosted Data Services • AWS Managed Data Services Logging & Monitoring Supply Chain Intelligence Deploy Server Deploy Nodes A Publish build artifacts ECR B Publish container images
  • 19. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Mirror Git Repo Lin Continuous Deployment – Alpha / Beta / Prod Env AWS Cloud Developer Service Account VPC Private subnet Build Server VPC AWS Cloud Alpha / Beta / Prod Environment Account Private subnet App Container Services • Web Tier • Integration Tier Intermediate Tier • Caching • Lock co-ordination • Service Discovery Data Tier • Queueing • AWS Hosted Data Services • AWS Managed Data Services Logging & Monitoring Supply Chain Intelligence Deploy Server Deploy Nodes A Publish build artifacts C ECR B Publish container images
  • 20. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Mirror Git Repo Lin Continuous Deployment – Alpha / Beta / Prod Env AWS Cloud Developer Service Account VPC Private subnet Build Server VPC AWS Cloud Alpha / Beta / Prod Environment Account Private subnet App Container Services • Web Tier • Integration Tier Intermediate Tier • Caching • Lock co-ordination • Service Discovery Data Tier • Queueing • AWS Hosted Data Services • AWS Managed Data Services Logging & Monitoring Supply Chain Intelligence Deploy Server Deploy Nodes A Publish build artifacts C ECR B Publish container images D D VPC Gateway EndPoint VPC Interface EndPoint
  • 21. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Build & Deployment Infrastructure Setup
  • 22. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Build Infrastructure Components AWS CloudFormation Mirror Git Repo Jenkins Master S3 Bucket IAM Roles Secrets Jenkins Win Agent Jenkins Linux Agent VPC EndPoints ECR
  • 23. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Setup Mirror Git Repo using IaC Create Git repo tar.gz & Upload to S3 Create EC2 Instance Pull Git repo tar.gz from S3 and place in EC2 Configure Cron job to sync Git repo AWS CloudFormation Mirror Git Repo
  • 24. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Setup Jenkins Master using IaC Pipeline Create EC2 Salt minion Jenkins Server Gitlab IaC Developers Source - Bootstrap Bootstrap Jenkins Linux Agent Windows Agent Jenkins Job Configuration Source - IaC
  • 25. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Dev Environment for Jenkins Bootstrapping Run Jenkins as Container Install Docker Setup local repo Bind mount the directories into Docker Containers Install Jenkins as a Container Configure Jenkins
  • 26. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Dev Environment for Jenkins Bootstrapping Run Jenkins as Container Install Docker Setup local repo Bind mount the directories into Docker Containers Install Jenkins as a Container Configure Jenkins
  • 27. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Dev Environment for Jenkins Bootstrapping Run Jenkins as Container Install Docker Setup local repo Bind mount the directories into Docker Containers Install Jenkins as a Container Configure Jenkins
  • 28. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Dev Environment for Jenkins Bootstrapping Run Jenkins as Container Install Docker Setup local repo Bind mount the directories into Docker Containers Install Jenkins as a Container Configure Jenkins
  • 29. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Dev Environment for Jenkins Bootstrapping Run Jenkins as Container Install Docker Setup local repo Bind mount the directories into Docker Containers Install Jenkins as a Container Configure Jenkins
  • 30. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Dev Environment for Jenkins Bootstrapping Run Jenkins as Container Install Docker Setup local repo Bind mount the directories into Docker Containers Install Jenkins as a Container Configure Jenkins
  • 31. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Best Practices
  • 32. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Best Practices • Operational excellence • Security • Reliability • Performance efficiency • Cost optimization • Sustainability AWS Well-Architected Framework
  • 33. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Operational excellence • Continually improving quality process • Design for failure • Opportunities for improvement • Clearly defined Promotion model for IaC
  • 34. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Operational Excellence – Promotion Model Stable Staging Feature • Holds IaC for services that are live on an Env • Protected Branch ; Changes needs approval • Holds IaC for services ready to go live • Protected Branch ; Changes needs approval • To apply changes to production or alpha branch
  • 35. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Operational Excellence – Promotion Model [STAGING] [FEATURE-1] {Create} {rebase} {promote} [FEATURE-N] {Create} {Promote to Stable for go live} [ … ] Conventions o commit + branch create * rebase ^ promote / code flow [ ] branch
  • 36. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Operational Excellence – Promotion Model [STAGING] [FEATURE-1] {Create} {rebase} {promote} [FEATURE-N] {Create} [STABLE] Conventions o commit + branch create * rebase ^ promote / code flow [ ] branch {Promote to Stable for go live} [ … ] [FEATURE-1] {Create} {rebase} {promote} [FEATURE-N] {Create} [ … ] {Code flow to Staging}
  • 37. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Security • Infrastructure protection • Centralized identities with SAML 2.0 • End-to-end Traceability • Data Protection
  • 38. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Reliability • Monitor workload Resources • Adapt to changes in Demand • Implement resiliency for reliable workload
  • 39. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Performance Efficiency • Capability to deploy the workload in multiple AWS Regions • Use serverless architectures • Monitor your resources
  • 40. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Cost Optimization • Implement cloud financial management • Monitor Cost and Usage • Stop spending money on undifferentiated heavy lifting
  • 41. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Sustainability • Remove or refactor workload components with low or no use • Increase utilization of build environments • Optimize areas of code that consume the most time or resources
  • 42. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Key Benefits Speed Consistency Traceability
  • 43. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Additional resources Link 1 About Link 1 AWS speakers, more resources are on the wiki Link 1 About Link 1 Link 1 About Link 1 Link 1 About Link 1
  • 44. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Deepen your skills with digital learning on demand Access 500+ free digital courses and Learning Plans Earn an industry-recognized credential AWS Skill Builder AWS Certifications Explore resources with a variety of skill levels and 16+ languages to meet your learning needs Join the AWS Certified community and get exclusive benefits Receive Foundational, Associate, Professional, and Specialty certifications Train now Access new exam guides © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Learn in-demand AWS Cloud skills
  • 45. Thank you! © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Bhuvaneswari Subramani https://bhuvana.pro /bhuvanas @installjournal
  • 46. ! Please complete the session survey © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.