SlideShare a Scribd company logo
1 of 42
Download to read offline
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Bengaluru
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
CI CD using AWS Developer Tools
Bhuvaneswari Subramani & Vijaya Nirmala
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Bhuvaneswari Subramani (Bhuvana)
Director, Engineering Operations
– GT Nexus, an Infor Company
Currently working on Cloud Computing,
DevOps &, Performance QA
https://installjournal.blogspot.com
Vijaya Nirmala G (Nirmala)
DevOps Solutions Lead
– Sonata Software
Currently working on DevOps Solutions
implementation
https://cloudgoddess.blogspot.com/
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
• AWS CI CD Services Overview
• Use cases leveraging AWS CI CD Services
1. Web Application Deployments
2. Infrastructure Rollouts
3. Serverless Application Deployments
• buildspec, appspec & SAM Template
• Debugging Build & Deployment
• Rollback Deployments
• Generic Pipeline for Multiple Environments
• Metrics to gauge DevOps
Agenda
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CI CD Services - Overview
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Software Release Phases vs AWS CI CD Services
Source Build Test Deploy
AWS CodeCommit AWS CodeBuild Third Party
Tooling
AWS CodeDeploy
AWS
CodePipeline
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CodeCommit
• Secure, Scalable, and managed Git Source control
• Use Standard git tools
• Scalability, availability and durability of Amazon S3
• No repo size limit
• Post commit hooks to call out to SNS / Lambda
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Visualizer Compare Pull Request
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CodeBuild • Fully managed build service that compiles source code,
run tests, and produces software packages
• Scales continuously and processes multiple builds
• You can provide custom build environments suited to
your needs via Docker images
• Only pay by the minute for the compute resources you
use
• Launched with Services like CodePipeline or Jenkins
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CodeDeploy
• Automates code deployments to EC2 / On-prem
• Handles the complexity of updating your applications
• Minimal deployment downtime
• Rollback automatically, if failure detected
• Supports varied languages and operating systems
• Integrates with third-party tools like Jenkins
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS
CodeDeploy Revision 1
Application
Revision 2
Revision 3
Revision n
Instance 1
Deployment Group
Instance 2
Instance 3
Instance n
Deployments
Deploy
Config
appspec.
yml
In-place
deployment
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS
CodeDeploy Revision 1
Application
Revision 2
Revision 3
Revision n
Instance 1
Deployment Group
Instance 2
Instance 3
Instance n
Deployments
Deploy
Config
appspec.
yml
In-place
deployment
What to
deploy?
Where to
deploy?
How to
deploy?
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CodePipeline
• Continuous delivery service for fast and reliable
application updates
• Model and visualize your software release process
• Builds, tests and deploys your code on every
commit
• Integrates with third-party tools
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CodePipeline Action Action
Stage
Action Action
Stage
Action
Transition
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CI CD
Workflows
Web Application Deployments
Infrastructure Rollouts
Serverless Application Deployments
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Web Application Deployments
Infrastructure Rollouts
Serverless Application Deployments
AWS CI CD
Workflows
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Web Application Deployments
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Web Application
Deployments
AW S
CodePipeline
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Web Application Deployments
Infrastructure Rollouts
Serverless Application Deployments
AWS CI CD
Workflows
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Infrastructure Rollouts
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Infrastructure
Rollouts
AW S
CodePipeline
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Web App vs
Infrastructure
Rollouts
AW S
CodePipeline
VS
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CI CD
Workflows
Web Application Deployments
Infrastructure Rollouts
Serverless Applications
DeploymentsServerless Application Deployments
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Serverless Application Deployments
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Serverless
Application
Deployments
AW S
CodePipeline
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Serverless
Application
Deployments
AW S
CodePipeline
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AW S
CodeBuild
buildspec.yml from Application Deployments
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AW S
CodeBuild
Create & store an artifact in S3
buildspec.yml fromApplication Deployments
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AW S
CodeDeploy
appspec.yml fromApplication Deployments
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AW S
CodeDeploy
Files to be copied to the instance
during deployment’s install
appspec.yml fromApplication Deployments
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AW S
CodeDeploy
template.yml fromServerless Application Deployments
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Debugging Builds
• Enable Logging in CloudWatch / S3
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Debugging Builds
• Enable Logging in CloudWatch / S3
• Local Build Support for AWS CodeBuild
• Get the AWS CodeBuild docker image file from AWS Github
• Build the CodeBuild image locally
• Setup CodeBuild local Agent
• Use the local agent to build your project
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Debugging Deployments
• CodeDeploy agent generates agent, updater & deployment logs
• Send them to CloudWatch for debugging
• CodeDeploy agent logs [EC2/On-prem only]
• /var/log/aws/codedeploy-agent/codedeploy-agent.log
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Debugging Deployments
• CodeDeploy agent generates agent, updater & deployment logs
• Send them to CloudWatch for debugging
• CodeDeploy agent logs [EC2/On-prem only]
• /var/log/aws/codedeploy-agent/codedeploy-agent.log
• CodeDeploy deployment logs
• /opt/codedeploy-agent/deployment-root/deployment-logs/
• CodeDeploy updater logs
• /tmp/codedeploy-agent.update.log
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Rollback Deployments
• Rollback in AWS is actually ====>
• Configure re-deploy by enabling
• Code deploy -> Rollbacks ->
• Code deploy -> ‘Automatic Rollbacks’
• Deployment Configuration to enable rollback based on healthy instances
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Generic Pipeline Setup
• Provision resources via Cloudformation with
Environment as Parameter
• Create Environment specific configuration.json
• Map the relevant configuration.json in CodePipeline
Stage
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
CloudFormation Template
Parameters
Mappings
Resources
Output template
Parameter
Values
create /
update
Env -> QA /
PreProd / Prod
stack
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Metrics to gauge DevOps
• Rapid Delivery with Increased Efficiency
• Increased Feature releases with reduced TTM
• Quicker feedback (system/user) to teams & stake holders
• Greater % of defects detected in testing (Unit & SIT Cycles)
• Ticket / Incidents volume reduction in PreProd & Prod
• High Availability
• Elastic & Scalable Infrastructure
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
CI CD Workflow MindMap
- The devil in the detail
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Thank you!
You may refer https://installjournal.blogspot.com for AWS CI CD LAB Series

More Related Content

What's hot

What's hot (20)

Build a Game for Echo Buttons - an Alexa Gadget! (ALX405-R2) - AWS re:Invent ...
Build a Game for Echo Buttons - an Alexa Gadget! (ALX405-R2) - AWS re:Invent ...Build a Game for Echo Buttons - an Alexa Gadget! (ALX405-R2) - AWS re:Invent ...
Build a Game for Echo Buttons - an Alexa Gadget! (ALX405-R2) - AWS re:Invent ...
 
Resiliency Testing: Verify That Your System Is as Reliable as You Think (ARC4...
Resiliency Testing: Verify That Your System Is as Reliable as You Think (ARC4...Resiliency Testing: Verify That Your System Is as Reliable as You Think (ARC4...
Resiliency Testing: Verify That Your System Is as Reliable as You Think (ARC4...
 
Infrastructure Is Code with the AWS Cloud Development Kit (DEV372) - AWS re:I...
Infrastructure Is Code with the AWS Cloud Development Kit (DEV372) - AWS re:I...Infrastructure Is Code with the AWS Cloud Development Kit (DEV372) - AWS re:I...
Infrastructure Is Code with the AWS Cloud Development Kit (DEV372) - AWS re:I...
 
Container Scheduling
Container SchedulingContainer Scheduling
Container Scheduling
 
Running Serverless at The Edge (CTD302) - AWS re:Invent 2018
Running Serverless at The Edge (CTD302) - AWS re:Invent 2018Running Serverless at The Edge (CTD302) - AWS re:Invent 2018
Running Serverless at The Edge (CTD302) - AWS re:Invent 2018
 
AWS and Symantec: Cyber Defense at Scale (SEC311-S) - AWS re:Invent 2018
AWS and Symantec: Cyber Defense at Scale (SEC311-S) - AWS re:Invent 2018AWS and Symantec: Cyber Defense at Scale (SEC311-S) - AWS re:Invent 2018
AWS and Symantec: Cyber Defense at Scale (SEC311-S) - AWS re:Invent 2018
 
AWS Container services
AWS Container servicesAWS Container services
AWS Container services
 
Use Elastic Beanstalk Blue/Green Deployment to Reduce Downtime & Risk (DEV330...
Use Elastic Beanstalk Blue/Green Deployment to Reduce Downtime & Risk (DEV330...Use Elastic Beanstalk Blue/Green Deployment to Reduce Downtime & Risk (DEV330...
Use Elastic Beanstalk Blue/Green Deployment to Reduce Downtime & Risk (DEV330...
 
Deploying Microservices using AWS Fargate (CON315-R1) - AWS re:Invent 2018
Deploying Microservices using AWS Fargate (CON315-R1) - AWS re:Invent 2018Deploying Microservices using AWS Fargate (CON315-R1) - AWS re:Invent 2018
Deploying Microservices using AWS Fargate (CON315-R1) - AWS re:Invent 2018
 
Thomson Reuters Shows How It Hosted a .NET App on Amazon ECS Using Windows Co...
Thomson Reuters Shows How It Hosted a .NET App on Amazon ECS Using Windows Co...Thomson Reuters Shows How It Hosted a .NET App on Amazon ECS Using Windows Co...
Thomson Reuters Shows How It Hosted a .NET App on Amazon ECS Using Windows Co...
 
Achieving Business Value with AWS - AWS Online Tech Talks
Achieving Business Value with AWS - AWS Online Tech TalksAchieving Business Value with AWS - AWS Online Tech Talks
Achieving Business Value with AWS - AWS Online Tech Talks
 
Runtime Security across Kubernetes and AWS Fargate (CON317-R1) - AWS re:Inven...
Runtime Security across Kubernetes and AWS Fargate (CON317-R1) - AWS re:Inven...Runtime Security across Kubernetes and AWS Fargate (CON317-R1) - AWS re:Inven...
Runtime Security across Kubernetes and AWS Fargate (CON317-R1) - AWS re:Inven...
 
Analyze Slide Images and Process Phenotypic Assays at Scale on AWS (CMP358) -...
Analyze Slide Images and Process Phenotypic Assays at Scale on AWS (CMP358) -...Analyze Slide Images and Process Phenotypic Assays at Scale on AWS (CMP358) -...
Analyze Slide Images and Process Phenotypic Assays at Scale on AWS (CMP358) -...
 
Container Power Hour with Jess, Clare, and Abby (CON362) - AWS re:Invent 2018
Container Power Hour with Jess, Clare, and Abby (CON362) - AWS re:Invent 2018Container Power Hour with Jess, Clare, and Abby (CON362) - AWS re:Invent 2018
Container Power Hour with Jess, Clare, and Abby (CON362) - AWS re:Invent 2018
 
Deploying Serverless .NET Applications (WIN323) - AWS re:Invent 2018
Deploying Serverless .NET Applications (WIN323) - AWS re:Invent 2018Deploying Serverless .NET Applications (WIN323) - AWS re:Invent 2018
Deploying Serverless .NET Applications (WIN323) - AWS re:Invent 2018
 
What’s New for Amazon DynamoDB - 2018 Q1 Update - AWS Online Tech Talks
What’s New for Amazon DynamoDB - 2018 Q1 Update - AWS Online Tech TalksWhat’s New for Amazon DynamoDB - 2018 Q1 Update - AWS Online Tech Talks
What’s New for Amazon DynamoDB - 2018 Q1 Update - AWS Online Tech Talks
 
Introduction to React Native
Introduction to React NativeIntroduction to React Native
Introduction to React Native
 
A Serverless Journey: AWS Lambda Under the Hood (SRV409-R1) - AWS re:Invent 2018
A Serverless Journey: AWS Lambda Under the Hood (SRV409-R1) - AWS re:Invent 2018A Serverless Journey: AWS Lambda Under the Hood (SRV409-R1) - AWS re:Invent 2018
A Serverless Journey: AWS Lambda Under the Hood (SRV409-R1) - AWS re:Invent 2018
 
Kubernetes Clusters Security with Amazon EKS (CON338-R1) - AWS re:Invent 2018
Kubernetes Clusters Security with Amazon EKS (CON338-R1) - AWS re:Invent 2018Kubernetes Clusters Security with Amazon EKS (CON338-R1) - AWS re:Invent 2018
Kubernetes Clusters Security with Amazon EKS (CON338-R1) - AWS re:Invent 2018
 
Build a Vulnerability Management Program Using AWS for AWS (SEC337-R1) - AWS ...
Build a Vulnerability Management Program Using AWS for AWS (SEC337-R1) - AWS ...Build a Vulnerability Management Program Using AWS for AWS (SEC337-R1) - AWS ...
Build a Vulnerability Management Program Using AWS for AWS (SEC337-R1) - AWS ...
 

Similar to CI/CD using AWS developer tools

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 CI/CD using AWS developer tools (20)

CI CD using AWS Developer Tools @ AWS Community Day Bengaluru 2018
CI CD using AWS Developer Tools @ AWS Community Day Bengaluru 2018CI CD using AWS Developer Tools @ AWS Community Day Bengaluru 2018
CI CD using AWS Developer Tools @ AWS Community Day Bengaluru 2018
 
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
 
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
 
DevSecOps 的規模化實踐 (Level: 300-400)
DevSecOps 的規模化實踐 (Level: 300-400)DevSecOps 的規模化實踐 (Level: 300-400)
DevSecOps 的規模化實踐 (Level: 300-400)
 
CI/CD@Scale
CI/CD@ScaleCI/CD@Scale
CI/CD@Scale
 
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
 
Improve Productivity with Continuous Integration & Delivery
Improve Productivity with Continuous Integration & DeliveryImprove Productivity with Continuous Integration & Delivery
Improve Productivity with Continuous Integration & Delivery
 
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
 
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
 
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
 
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...
 
A Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer Tools
A Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer ToolsA Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer Tools
A Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer Tools
 
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
 
Building a DevOps Pipeline on AWS (DEV326) - AWS re:Invent 2018
Building a DevOps Pipeline on AWS (DEV326) - AWS re:Invent 2018Building a DevOps Pipeline on AWS (DEV326) - AWS re:Invent 2018
Building a DevOps Pipeline on AWS (DEV326) - AWS re:Invent 2018
 
Scaling and Automating DevOps with CloudBees and Spot Instances (GPSTEC310) -...
Scaling and Automating DevOps with CloudBees and Spot Instances (GPSTEC310) -...Scaling and Automating DevOps with CloudBees and Spot Instances (GPSTEC310) -...
Scaling and Automating DevOps with CloudBees and Spot Instances (GPSTEC310) -...
 
How Zalando integrates Kubernetes with AWS
How Zalando integrates Kubernetes with AWSHow Zalando integrates Kubernetes with AWS
How Zalando integrates Kubernetes with AWS
 
Improve productivity with Continuous Integration & Delivery
Improve productivity with Continuous Integration & DeliveryImprove productivity with Continuous Integration & Delivery
Improve productivity with Continuous Integration & Delivery
 
Improve Productivity with Continuous Integration & Delivery
Improve Productivity with Continuous Integration & DeliveryImprove Productivity with Continuous Integration & Delivery
Improve Productivity with Continuous Integration & Delivery
 
Improve Productivity with Continuous Integration & Delivery
Improve Productivity with Continuous Integration & DeliveryImprove Productivity with Continuous Integration & Delivery
Improve Productivity with Continuous Integration & Delivery
 
CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...
CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...
CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...
 

More from AWS User Group Bengaluru

More from AWS User Group Bengaluru (20)

Demystifying identity on AWS
Demystifying identity on AWSDemystifying identity on AWS
Demystifying identity on AWS
 
AWS Secrets for Best Practices
AWS Secrets for Best PracticesAWS Secrets for Best Practices
AWS Secrets for Best Practices
 
Cloud Security
Cloud SecurityCloud Security
Cloud Security
 
Lessons learnt building a Distributed Linked List on S3
Lessons learnt building a Distributed Linked List on S3Lessons learnt building a Distributed Linked List on S3
Lessons learnt building a Distributed Linked List on S3
 
Medlife journey with AWS
Medlife journey with AWSMedlife journey with AWS
Medlife journey with AWS
 
Building Efficient, Scalable and Resilient Front-end logging service with AWS
Building Efficient, Scalable and Resilient Front-end logging service with AWSBuilding Efficient, Scalable and Resilient Front-end logging service with AWS
Building Efficient, Scalable and Resilient Front-end logging service with AWS
 
Exploring opportunities with communities for a successful career
Exploring opportunities with communities for a successful careerExploring opportunities with communities for a successful career
Exploring opportunities with communities for a successful career
 
Slack's transition away from a single AWS account
Slack's transition away from a single AWS accountSlack's transition away from a single AWS account
Slack's transition away from a single AWS account
 
Log analytics with ELK stack
Log analytics with ELK stackLog analytics with ELK stack
Log analytics with ELK stack
 
Serverless Culture
Serverless CultureServerless Culture
Serverless Culture
 
Refactoring to serverless
Refactoring to serverlessRefactoring to serverless
Refactoring to serverless
 
Amazon EC2 Spot Instances Workshop
Amazon EC2 Spot Instances WorkshopAmazon EC2 Spot Instances Workshop
Amazon EC2 Spot Instances Workshop
 
Building Efficient, Scalable and Resilient Front-end logging service with AWS
Building Efficient, Scalable and Resilient Front-end logging service with AWSBuilding Efficient, Scalable and Resilient Front-end logging service with AWS
Building Efficient, Scalable and Resilient Front-end logging service with AWS
 
Medlife's journey with AWS from 0(zero) orders to 6 digit mark
Medlife's journey with AWS from 0(zero) orders to 6 digit markMedlife's journey with AWS from 0(zero) orders to 6 digit mark
Medlife's journey with AWS from 0(zero) orders to 6 digit mark
 
AWS Secrets for Best Practices
AWS Secrets for Best PracticesAWS Secrets for Best Practices
AWS Secrets for Best Practices
 
Exploring opportunities with communities for a successful career
Exploring opportunities with communities for a successful careerExploring opportunities with communities for a successful career
Exploring opportunities with communities for a successful career
 
Lessons learnt building a Distributed Linked List on S3
Lessons learnt building a Distributed Linked List on S3Lessons learnt building a Distributed Linked List on S3
Lessons learnt building a Distributed Linked List on S3
 
Cloud Security
Cloud SecurityCloud Security
Cloud Security
 
Amazon EC2 Spot Instances
Amazon EC2 Spot InstancesAmazon EC2 Spot Instances
Amazon EC2 Spot Instances
 
Cost Optimization in AWS
Cost Optimization in AWSCost Optimization in AWS
Cost Optimization in AWS
 

Recently uploaded

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
 
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
 

Recently uploaded (20)

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
 
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
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
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
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
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
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
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
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 

CI/CD using AWS developer tools

  • 1. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Bengaluru
  • 2. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. CI CD using AWS Developer Tools Bhuvaneswari Subramani & Vijaya Nirmala
  • 3. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Bhuvaneswari Subramani (Bhuvana) Director, Engineering Operations – GT Nexus, an Infor Company Currently working on Cloud Computing, DevOps &, Performance QA https://installjournal.blogspot.com Vijaya Nirmala G (Nirmala) DevOps Solutions Lead – Sonata Software Currently working on DevOps Solutions implementation https://cloudgoddess.blogspot.com/
  • 4. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. • AWS CI CD Services Overview • Use cases leveraging AWS CI CD Services 1. Web Application Deployments 2. Infrastructure Rollouts 3. Serverless Application Deployments • buildspec, appspec & SAM Template • Debugging Build & Deployment • Rollback Deployments • Generic Pipeline for Multiple Environments • Metrics to gauge DevOps Agenda
  • 5. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CI CD Services - Overview
  • 6. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Software Release Phases vs AWS CI CD Services Source Build Test Deploy AWS CodeCommit AWS CodeBuild Third Party Tooling AWS CodeDeploy AWS CodePipeline
  • 7. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodeCommit • Secure, Scalable, and managed Git Source control • Use Standard git tools • Scalability, availability and durability of Amazon S3 • No repo size limit • Post commit hooks to call out to SNS / Lambda
  • 8. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Visualizer Compare Pull Request
  • 9. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodeBuild • Fully managed build service that compiles source code, run tests, and produces software packages • Scales continuously and processes multiple builds • You can provide custom build environments suited to your needs via Docker images • Only pay by the minute for the compute resources you use • Launched with Services like CodePipeline or Jenkins
  • 10. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodeDeploy • Automates code deployments to EC2 / On-prem • Handles the complexity of updating your applications • Minimal deployment downtime • Rollback automatically, if failure detected • Supports varied languages and operating systems • Integrates with third-party tools like Jenkins
  • 11. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodeDeploy Revision 1 Application Revision 2 Revision 3 Revision n Instance 1 Deployment Group Instance 2 Instance 3 Instance n Deployments Deploy Config appspec. yml In-place deployment
  • 12. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodeDeploy Revision 1 Application Revision 2 Revision 3 Revision n Instance 1 Deployment Group Instance 2 Instance 3 Instance n Deployments Deploy Config appspec. yml In-place deployment What to deploy? Where to deploy? How to deploy?
  • 13. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodePipeline • Continuous delivery service for fast and reliable application updates • Model and visualize your software release process • Builds, tests and deploys your code on every commit • Integrates with third-party tools
  • 14. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodePipeline Action Action Stage Action Action Stage Action Transition
  • 15. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
  • 16. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CI CD Workflows Web Application Deployments Infrastructure Rollouts Serverless Application Deployments
  • 17. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Web Application Deployments Infrastructure Rollouts Serverless Application Deployments AWS CI CD Workflows
  • 18. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Web Application Deployments
  • 19. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Web Application Deployments AW S CodePipeline
  • 20. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Web Application Deployments Infrastructure Rollouts Serverless Application Deployments AWS CI CD Workflows
  • 21. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Infrastructure Rollouts
  • 22. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Infrastructure Rollouts AW S CodePipeline
  • 23. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Web App vs Infrastructure Rollouts AW S CodePipeline VS
  • 24. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CI CD Workflows Web Application Deployments Infrastructure Rollouts Serverless Applications DeploymentsServerless Application Deployments
  • 25. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Serverless Application Deployments
  • 26. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Serverless Application Deployments AW S CodePipeline
  • 27. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Serverless Application Deployments AW S CodePipeline
  • 28. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AW S CodeBuild buildspec.yml from Application Deployments
  • 29. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AW S CodeBuild Create & store an artifact in S3 buildspec.yml fromApplication Deployments
  • 30. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AW S CodeDeploy appspec.yml fromApplication Deployments
  • 31. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AW S CodeDeploy Files to be copied to the instance during deployment’s install appspec.yml fromApplication Deployments
  • 32. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AW S CodeDeploy template.yml fromServerless Application Deployments
  • 33. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Debugging Builds • Enable Logging in CloudWatch / S3
  • 34. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Debugging Builds • Enable Logging in CloudWatch / S3 • Local Build Support for AWS CodeBuild • Get the AWS CodeBuild docker image file from AWS Github • Build the CodeBuild image locally • Setup CodeBuild local Agent • Use the local agent to build your project
  • 35. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Debugging Deployments • CodeDeploy agent generates agent, updater & deployment logs • Send them to CloudWatch for debugging • CodeDeploy agent logs [EC2/On-prem only] • /var/log/aws/codedeploy-agent/codedeploy-agent.log
  • 36. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Debugging Deployments • CodeDeploy agent generates agent, updater & deployment logs • Send them to CloudWatch for debugging • CodeDeploy agent logs [EC2/On-prem only] • /var/log/aws/codedeploy-agent/codedeploy-agent.log • CodeDeploy deployment logs • /opt/codedeploy-agent/deployment-root/deployment-logs/ • CodeDeploy updater logs • /tmp/codedeploy-agent.update.log
  • 37. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Rollback Deployments • Rollback in AWS is actually ====> • Configure re-deploy by enabling • Code deploy -> Rollbacks -> • Code deploy -> ‘Automatic Rollbacks’ • Deployment Configuration to enable rollback based on healthy instances
  • 38. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Generic Pipeline Setup • Provision resources via Cloudformation with Environment as Parameter • Create Environment specific configuration.json • Map the relevant configuration.json in CodePipeline Stage
  • 39. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. CloudFormation Template Parameters Mappings Resources Output template Parameter Values create / update Env -> QA / PreProd / Prod stack
  • 40. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Metrics to gauge DevOps • Rapid Delivery with Increased Efficiency • Increased Feature releases with reduced TTM • Quicker feedback (system/user) to teams & stake holders • Greater % of defects detected in testing (Unit & SIT Cycles) • Ticket / Incidents volume reduction in PreProd & Prod • High Availability • Elastic & Scalable Infrastructure
  • 41. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. CI CD Workflow MindMap - The devil in the detail
  • 42. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Thank you! You may refer https://installjournal.blogspot.com for AWS CI CD LAB Series