Professional Documents
Culture Documents
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Quick Intro
@installjournal
https://bhuvana.pro
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Agenda
• CI CD multi-account Architecture
• 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
© 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.
Continuous Integration
Developer Service Account
AWS Cloud
VPC Gateway
VPC
EndPoint
Private subnet
Lin 1
3
1 - Initiate Build process
2 Worker Nodes
Build & Deploy 2 - Get Source code
Server
CI 3 - Compile & generate artifacts
4 - Publish artifacts
Mirror Git
Repo
5 - Run code validation suite
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Continuous Integration
Developer Service Account
AWS Cloud
4 Publish build
artifacts
Private subnet
Lin 1
3
1 - Initiate Build process
2 Worker Nodes
Build & Deploy 2 - Get Source code
Server
CI 3 - Compile & generate artifacts
4 - Publish artifacts
Mirror Git
Repo
5 - Run code validation suite
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Continuous Integration
Developer Service Account
AWS Cloud
4 Publish build
artifacts
Private subnet
Lin 1
3
1 - Initiate Build process
2 Worker Nodes
Build & Deploy 2 - Get Source code
5 Server
CI 3 - Compile & generate artifacts
4 - Publish artifacts
Mirror Git
Repo
5 - Run code validation suite
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Continuous Integration
Developer Service Account
AWS Cloud
4 Publish build
artifacts
Private subnet
App artifacts
Lin 1
3
Config artifacts
2 Worker Nodes
Build & Deploy
5 Server
Data system artifacts
Mirror Git
Repo Test artifacts
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Continuous Deployment – Nano Env Users
https://<env-id>.nano.infornexus.com
Availability Zone
S3 Buckets
VPC VPC
Internet gateway
Lin
Mirror Git
Repo
© 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
Developer Service Account
AWS Cloud
VPC
Private subnet
Lin 1
3
1 - Initiate Build process
2 Worker Nodes
Build Server 2 - Get Source code
4 - Publish artifacts
Mirror Git
Repo
5 - Run code validation suite
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Continuous Integration – Alpha / Beta / Prod Env
Developer Service Account
AWS Cloud
4 Publish build
artifacts
Private subnet
Lin 1
3
1 - Initiate Build process
2 Worker Nodes
Build Server 2 - Get Source code
4 - Publish artifacts
Mirror Git
Repo
5 - Run code validation suite
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Continuous Integration – Alpha / Beta / Prod Env
Developer Service Account
AWS Cloud
4 Publish build
artifacts
4
VPC Gateway VPC Interface S3 Buckets
VPC
EndPoint EndPoint
4 - Publish artifacts
Mirror Git
Repo
5 - Run code validation suite
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Continuous Deployment – Alpha / Beta / Prod Env
Developer Service Account Prod Account
AWS Cloud AWS Cloud
4 Publish build
artifacts
4
VPC Gateway VPC Interface S3 Buckets
VPC
EndPoint EndPoint
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Continuous Deployment – Alpha / Beta / Prod Env
Developer Service Account Alpha / Beta / Prod Environment Account
AWS Cloud AWS Cloud
ECR
Publish build
artifacts
A
B Publish
VPC container VPC
images
Data Tier
• Queueing
Mirror Git Deploy Server • AWS Hosted Data Services
Repo • AWS Managed Data Services
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Continuous Deployment – Alpha / Beta / Prod Env
Developer Service Account Alpha / Beta / Prod Environment Account
AWS Cloud AWS Cloud
ECR
Publish build
artifacts
A
B Publish
VPC container VPC
images
Data Tier
• Queueing
Mirror Git Deploy Server • AWS Hosted Data Services
Repo • AWS Managed Data Services
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Continuous Deployment – Alpha / Beta / Prod Env
Developer Service Account Alpha / Beta / Prod Environment Account
AWS Cloud AWS Cloud
ECR
Publish build
artifacts
A D
D
B Publish
VPC Gateway VPC Interface
VPC container VPC
EndPoint EndPoint
images
Data Tier
• Queueing
Mirror Git Deploy Server • AWS Hosted Data Services
Repo • AWS Managed Data Services
© 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
IAM Roles
S3 Bucket Mirror Git Repo VPC EndPoints
Secrets
AWS
CloudFormation
Pipeline
IaC Developers
Linux Agent
Bootstrap
Jenkins
Gitlab Source - IaC Create Salt Jenkins
EC2 minion Jenkins Job
Server Configuration
Windows Agent
Source - Bootstrap
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dev Environment for Jenkins Bootstrapping
Run Jenkins as Container
Install Docker
Configure Jenkins
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dev Environment for Jenkins Bootstrapping
Run Jenkins as Container
Install Docker
Configure Jenkins
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dev Environment for Jenkins Bootstrapping
Run Jenkins as Container
Install Docker
Configure Jenkins
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dev Environment for Jenkins Bootstrapping
Run Jenkins as Container
Install Docker
Configure Jenkins
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dev Environment for Jenkins Bootstrapping
Run Jenkins as Container
Install Docker
Configure Jenkins
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dev Environment for Jenkins Bootstrapping
Run Jenkins as Container
Install Docker
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
• Sustainability
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Operational excellence
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Operational Excellence – Promotion Model
• Holds IaC for services that are live on an Env
Stable • Protected Branch ; Changes needs approval
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Operational Excellence – Promotion Model
{Promote to Stable for
go live}
[STAGING]
[FEATURE-1]
{Create} {rebase} {promote}
[ … ]
[FEATURE-N] {Create}
Conventions
o commit
+ branch create
* rebase
^ promote
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. \/ code flow
[ ] branch
Operational Excellence – Promotion Model
{Promote to Stable for
go live}
[STAGING]
[FEATURE-1]
{Create} {rebase} {promote}
[ … ]
[FEATURE-N] {Create}
[STABLE]
{Code flow to Staging}
• Infrastructure protection
• End-to-end Traceability
• Data Protection
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Reliability
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Performance Efficiency
AWS Regions
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Cost Optimization
heavy lifting
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Sustainability
low or no use
time or resources
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Key Benefits
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Resources
https://aws.amazon.com/devops/
DevOps and AWS
https://docs.aws.amazon.com/whitepapers/latest/introduction-devops-
aws/infrastructure-as-code.html
AWS Infrastructure as Code
https://aws.amazon.com/architecture/well-architected/
AWS Well Architected Framework
https://aws.amazon.com/developer/community/heroes
AWS Heroes
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Learn in-demand AWS Cloud skills
Deepen your skills with digital Join the AWS Certified community
learning on demand and get exclusive benefits
Access new
Train now exam guides
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Thank you!
Bhuvaneswari Subramani
/bhuvanas
@installjournal
https://bhuvana.pro
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
!
Please complete
the session survey
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.