SlideShare a Scribd company logo
DevOps on AWS
DEVOPS ON AWS
Eric Johnson @edjgeek
Rackspace Best Practices
AWS Evangelist | Cloud Architect at Rackspace
DEVOPS OVERVIEW
4
DevOps Goal
• Continuous Integration
• Continuous Delivery
Rackspace recommends automated
monitoring and response be a part of
your DevOps process
Automate
5
Software – Pipeline
AWS
CodeCommit
AWS
CodePipeline
AWS
CodeBuild
Developers
AWS
CodeDeploy
Amazon
CloudWatch
AWS
CloudTrail
DEVOPS IN SERVERLESS
6
7
The Serverless Paradigm?
• Really, No Servers?
• Serverless technologies are Abstracted Services in AWS with API Access only
users
API
AWS
Lambda
Amazon
DynamoDB
Amazon
RDS
Amazon
CloudFront
Elastic Load
Balancing
AWS
CodePipeline
Amazon Lex
Amazon Polly
Amazon
Rekognition
Amazon
Cognito
Amazon API
Gateway*
Amazon
SNS
Responsibility Model – Infrastructure Services
Responsibility Model – Abstracted Services
10
What Changes?
• Release
• We no longer release to machines
• But we DO release
11
A Serverless Stack
S3 Hosted
Client
User
Service
Customer
Service
Orders
Service
Reporting
Service
Amazon API
Gateway*
Amazon
SNS
User
Table
Customer
Table
Orders
Table
Reporting
Table
12
Infrastructure
S3 Hosted
Client
User
Service
Customer
Service
Orders
Service
Reporting
Service
Amazon API
Gateway*
Amazon
SNS
User
Table
Customer
Table
Orders
Table
Reporting
Table
13
Code
S3 Hosted
Client
User
Service
Customer
Service
Orders
Service
Reporting
Service
Amazon API
Gateway*
Amazon
SNS
User
Table
Customer
Table
Orders
Table
Reporting
Table
14
AWS Serverless Application Model (SAM)
• Function
• API
• Simple Table
Function Simple Table
15
SAM Examples
AWSTemplateFormatVersion : '2010-09-09’
Transform: AWS::Serverless-2016-10-31
Description: A hello world application.
Resources:
HelloWorldFunction:
Type: AWS::Serverless::Function
Properties:
Handler: index.handler
Runtime: nodejs6.10
CodeUri: ./dist
AWSTemplateFormatVersion : '2010-09-09’
Transform: AWS::Serverless-2016-10-31
Description: A Simple Table.
Resources:
HelloWorldTable:
Type: AWS::Serverless::SimpleTable
Properties:
PrimaryKey:
Name: id
Type: String
ProvisionedThroughput:
ReadCapacityUnits: 5
WriteCapacityUnits: 5
16
Manually Deploying SAM
• AWS CLI
• CloudFormation
‣ Package
‣ Deploy
AWS CLI
AWS
CloudFormation
Before Package (service.yml) After Package (.sam/pack.yml)
17
AWS CloudFormation Package (CLI)
AWSTemplateFormatVersion: '2010-09-09’
Transform: AWS::Serverless-2016-10-31
Description: A hello world application.
Resources:
HelloWorldFunction:
Type: AWS::Serverless::Function
Properties:
Handler: index.handler
Runtime: nodejs6.10
CodeUri: ./dist
AWSTemplateFormatVersion: '2010-09-09’
Transform: AWS::Serverless-2016-10-31
Description: A hello world application.
Resources:
HelloWorldFunction:
Type: AWS::Serverless::Function
Properties:
Handler: index.handler
Runtime: nodejs6.10
CodeUri: s3://foo/564738u4783uyeu87
aws cloudformation package --template-file service.yml --s3-bucket myBucket 
--output-template-file .sam/pack.yml
Deploy Steps Packaged YAML
18
AWS CloudFormation Deploy (CLI)
• Use updated YAML
• Create Change Set
• Execute Change Set
aws cloudformation deploy --template-file .sam/pack.yml --stack-name myStack
AWSTemplateFormatVersion: '2010-09-09’
Transform: AWS::Serverless-2016-10-31
Description: A hello world application.
Resources:
HelloWorldFunction:
Type: AWS::Serverless::Function
Properties:
Handler: index.handler
Runtime: nodejs6.10
CodeUri: s3://foo/564738u4783uyeu87
CodeBuild to the Rescue buildspec.yml
19
Automating the Package Process
• Build
• Test
• Package
version: 0.1
phases:
install:
commands:
- echo "Installing dependencies”
pre_build:
commands:
- echo "Tests Running”
build:
commands:
- echo ”Compiling”
post_build:
commands:
- echo "Packaging & uploading to S3”
- aws cloudformation package …
artifacts:
files:
- .sam/pack.yml
Code Pipeline Cft (Partial…)
20
Automating the Deploy
• Why not deploy from the CodeBuild?
• Deploy from CodePipeline with
CloudFormation
Name: Deploy
Actions:
- Name: CreateChangeSet
ActionTypeId:
Category: Deploy
Owner: AWS
Provider: CloudFormation
Configuration:
ActionMode: CHANGE_SET_REPLACE
StackName: !Ref Service
TemplatePath: BuiltOutput::pack.yml
- Name: ExecuteChangeset
ActionTypeId:
Category: Deploy
Owner: AWS
Provider: CloudFormation
Configuration:
ActionMode: CHANGE_SET_EXECUTE
21
Serverless – Pipeline
AWS
CodeCommit
AWS
CodePipeline
AWS
CodeBuild
Developers
AWS
CloudFormation
Amazon
CloudWatch
AWS
CloudTrail
22
AWS CodeStar
• CodeCommit Repo
• DevOps Pipeline
• Simple Wiki
• Team Management
• Dashboard for monitoring
• Third Party Plugins (Jira)
• Multiple Language and Frameworks
http://bit.ly/codestar
Http://aws.amazon.com/codestar
QUESTIONS?
Copyright © 2016 Rackspace | Rackspace® Fanatical Support® and other Rackspace marks are either registered service marks or service marks of Rackspce US, Inc. in the United States and other countries. Features, benefits
and pricing presented depend on system configuration and are subject to change without notice. Rackspace disclaims any representation, warranty or other legal commitment regarding its services except for those expressly
stated in a Rackspace services agreement. All other trademarks, service marks, images, products and brands remain the sole property of their respective holders and do not imply endorsement or sponsorship.
ONE FANATICAL PLACE | SAN ANTONIO, TX 78218
US SALES: 1-800-961-2888 | US SUPPORT: 1-800-961-4454 | WWW.RACKSPACE.COM
•Eric Johnson @edjgeek

More Related Content

PPTX
Continuous Testing 2016
PDF
Serverless Delivery
PPTX
AWS CodeDeploy
PPTX
Optimizing deployment & dev ops with tfs 2013
PPTX
DevOps and AWS - Code PaLOUsa 2017
PDF
Introduction Asp.Net MVC5 |MVC5 Tutorial for Beginners & Advanced | Dot Net T...
PPTX
DevOps ci/cd with Microsoft vsts and azure
PPTX
DOES14 - Gary Gruver - Macy's - Transforming Traditional Enterprise Software ...
Continuous Testing 2016
Serverless Delivery
AWS CodeDeploy
Optimizing deployment & dev ops with tfs 2013
DevOps and AWS - Code PaLOUsa 2017
Introduction Asp.Net MVC5 |MVC5 Tutorial for Beginners & Advanced | Dot Net T...
DevOps ci/cd with Microsoft vsts and azure
DOES14 - Gary Gruver - Macy's - Transforming Traditional Enterprise Software ...

What's hot (9)

PPTX
ACDKOCHI19 - CI / CD using AWS Developer Tools
PPTX
ACDKOCHI19 - Medlife's journey on AWS from ZERO Orders to 6 digits mark
PDF
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
PDF
Webinar: Continuous Deployment with MongoDB at Kitchensurfing
PPTX
Set up Continuous Integration using SalesforceDX and Jenkins
PDF
Introduction to CICD
PDF
Automated Testing in DevOps
PPTX
Modern CI/CD Pipeline Using Azure DevOps
PDF
What is Jenkins | Jenkins Tutorial for Beginners | Edureka
ACDKOCHI19 - CI / CD using AWS Developer Tools
ACDKOCHI19 - Medlife's journey on AWS from ZERO Orders to 6 digits mark
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
Webinar: Continuous Deployment with MongoDB at Kitchensurfing
Set up Continuous Integration using SalesforceDX and Jenkins
Introduction to CICD
Automated Testing in DevOps
Modern CI/CD Pipeline Using Azure DevOps
What is Jenkins | Jenkins Tutorial for Beginners | Edureka
Ad

Similar to DevOps on AWS (13)

PPTX
muCon 2017 - 12 Factor Serverless Applications
PDF
12 Factor Serverless Applications - Mike Morain, AWS - Cloud Native Day Tel A...
PDF
Building serverless apps with Node.js
PPTX
AWS Serverless concepts and solutions
PDF
AWS CodeCommit, CodeDeploy & CodePipeline
PDF
An introduction to serverless architectures (February 2017)
PDF
HOW TO DRONE.IO IN CI/CD WORLD
PDF
A 60-mn tour of AWS compute (March 2016)
PPTX
Aws User Group Singapore Presentation Oct-21-2020
PDF
Developing and deploying serverless applications (February 2017)
PDF
CI&CD on AWS - Meetup Roma Oct 2016
PDF
CI CD using AWS Developer Tools Online Workshop
PDF
From Docker Straight to AWS
muCon 2017 - 12 Factor Serverless Applications
12 Factor Serverless Applications - Mike Morain, AWS - Cloud Native Day Tel A...
Building serverless apps with Node.js
AWS Serverless concepts and solutions
AWS CodeCommit, CodeDeploy & CodePipeline
An introduction to serverless architectures (February 2017)
HOW TO DRONE.IO IN CI/CD WORLD
A 60-mn tour of AWS compute (March 2016)
Aws User Group Singapore Presentation Oct-21-2020
Developing and deploying serverless applications (February 2017)
CI&CD on AWS - Meetup Roma Oct 2016
CI CD using AWS Developer Tools Online Workshop
From Docker Straight to AWS
Ad

More from David McDaniel (15)

PDF
Denver AWS Users' Group Meetup - May 2020
PDF
January 2020 - re:Invent reCap slides - Denver Amazon Web Services Users' Group
PDF
Denver AWS Meetup - March 2019 slides
PDF
Denver AWS Meetup - February 2019
PDF
Denver AWS Users' Group Meetup - October 2018
PDF
Denver AWS Meetup -- August 2018
PPTX
Denver AWS Users' Group Meeting - July 2018 Slides - Cloud Optimization
PDF
Denver AWS Users' Group Meeting - July 2018 Slides
PDF
Denver AWS Users' Group Meeting - May 2018 Slides
PDF
Denver AWS Users' Group meeting - September 2017
PPTX
July 2017 Meeting of the Denver AWS Users' Group
PDF
June 2017 Denver AWS Users' Group intro slides
PDF
May 2017
PDF
January 2017 - Deep dive on AWS Lambda and DevOps
PPTX
October 2016
Denver AWS Users' Group Meetup - May 2020
January 2020 - re:Invent reCap slides - Denver Amazon Web Services Users' Group
Denver AWS Meetup - March 2019 slides
Denver AWS Meetup - February 2019
Denver AWS Users' Group Meetup - October 2018
Denver AWS Meetup -- August 2018
Denver AWS Users' Group Meeting - July 2018 Slides - Cloud Optimization
Denver AWS Users' Group Meeting - July 2018 Slides
Denver AWS Users' Group Meeting - May 2018 Slides
Denver AWS Users' Group meeting - September 2017
July 2017 Meeting of the Denver AWS Users' Group
June 2017 Denver AWS Users' Group intro slides
May 2017
January 2017 - Deep dive on AWS Lambda and DevOps
October 2016

Recently uploaded (20)

PPTX
sap open course for s4hana steps from ECC to s4
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
Cloud computing and distributed systems.
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Machine learning based COVID-19 study performance prediction
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Encapsulation theory and applications.pdf
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Electronic commerce courselecture one. Pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
sap open course for s4hana steps from ECC to s4
The AUB Centre for AI in Media Proposal.docx
Cloud computing and distributed systems.
Mobile App Security Testing_ A Comprehensive Guide.pdf
MIND Revenue Release Quarter 2 2025 Press Release
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Unlocking AI with Model Context Protocol (MCP)
Machine learning based COVID-19 study performance prediction
MYSQL Presentation for SQL database connectivity
Encapsulation theory and applications.pdf
NewMind AI Weekly Chronicles - August'25 Week I
Programs and apps: productivity, graphics, security and other tools
Digital-Transformation-Roadmap-for-Companies.pptx
Electronic commerce courselecture one. Pdf
Review of recent advances in non-invasive hemoglobin estimation
Per capita expenditure prediction using model stacking based on satellite ima...
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx

DevOps on AWS

  • 2. DEVOPS ON AWS Eric Johnson @edjgeek Rackspace Best Practices AWS Evangelist | Cloud Architect at Rackspace
  • 4. 4 DevOps Goal • Continuous Integration • Continuous Delivery Rackspace recommends automated monitoring and response be a part of your DevOps process Automate
  • 7. 7 The Serverless Paradigm? • Really, No Servers? • Serverless technologies are Abstracted Services in AWS with API Access only users API AWS Lambda Amazon DynamoDB Amazon RDS Amazon CloudFront Elastic Load Balancing AWS CodePipeline Amazon Lex Amazon Polly Amazon Rekognition Amazon Cognito Amazon API Gateway* Amazon SNS
  • 8. Responsibility Model – Infrastructure Services
  • 9. Responsibility Model – Abstracted Services
  • 10. 10 What Changes? • Release • We no longer release to machines • But we DO release
  • 11. 11 A Serverless Stack S3 Hosted Client User Service Customer Service Orders Service Reporting Service Amazon API Gateway* Amazon SNS User Table Customer Table Orders Table Reporting Table
  • 14. 14 AWS Serverless Application Model (SAM) • Function • API • Simple Table
  • 15. Function Simple Table 15 SAM Examples AWSTemplateFormatVersion : '2010-09-09’ Transform: AWS::Serverless-2016-10-31 Description: A hello world application. Resources: HelloWorldFunction: Type: AWS::Serverless::Function Properties: Handler: index.handler Runtime: nodejs6.10 CodeUri: ./dist AWSTemplateFormatVersion : '2010-09-09’ Transform: AWS::Serverless-2016-10-31 Description: A Simple Table. Resources: HelloWorldTable: Type: AWS::Serverless::SimpleTable Properties: PrimaryKey: Name: id Type: String ProvisionedThroughput: ReadCapacityUnits: 5 WriteCapacityUnits: 5
  • 16. 16 Manually Deploying SAM • AWS CLI • CloudFormation ‣ Package ‣ Deploy AWS CLI AWS CloudFormation
  • 17. Before Package (service.yml) After Package (.sam/pack.yml) 17 AWS CloudFormation Package (CLI) AWSTemplateFormatVersion: '2010-09-09’ Transform: AWS::Serverless-2016-10-31 Description: A hello world application. Resources: HelloWorldFunction: Type: AWS::Serverless::Function Properties: Handler: index.handler Runtime: nodejs6.10 CodeUri: ./dist AWSTemplateFormatVersion: '2010-09-09’ Transform: AWS::Serverless-2016-10-31 Description: A hello world application. Resources: HelloWorldFunction: Type: AWS::Serverless::Function Properties: Handler: index.handler Runtime: nodejs6.10 CodeUri: s3://foo/564738u4783uyeu87 aws cloudformation package --template-file service.yml --s3-bucket myBucket --output-template-file .sam/pack.yml
  • 18. Deploy Steps Packaged YAML 18 AWS CloudFormation Deploy (CLI) • Use updated YAML • Create Change Set • Execute Change Set aws cloudformation deploy --template-file .sam/pack.yml --stack-name myStack AWSTemplateFormatVersion: '2010-09-09’ Transform: AWS::Serverless-2016-10-31 Description: A hello world application. Resources: HelloWorldFunction: Type: AWS::Serverless::Function Properties: Handler: index.handler Runtime: nodejs6.10 CodeUri: s3://foo/564738u4783uyeu87
  • 19. CodeBuild to the Rescue buildspec.yml 19 Automating the Package Process • Build • Test • Package version: 0.1 phases: install: commands: - echo "Installing dependencies” pre_build: commands: - echo "Tests Running” build: commands: - echo ”Compiling” post_build: commands: - echo "Packaging & uploading to S3” - aws cloudformation package … artifacts: files: - .sam/pack.yml
  • 20. Code Pipeline Cft (Partial…) 20 Automating the Deploy • Why not deploy from the CodeBuild? • Deploy from CodePipeline with CloudFormation Name: Deploy Actions: - Name: CreateChangeSet ActionTypeId: Category: Deploy Owner: AWS Provider: CloudFormation Configuration: ActionMode: CHANGE_SET_REPLACE StackName: !Ref Service TemplatePath: BuiltOutput::pack.yml - Name: ExecuteChangeset ActionTypeId: Category: Deploy Owner: AWS Provider: CloudFormation Configuration: ActionMode: CHANGE_SET_EXECUTE
  • 22. 22 AWS CodeStar • CodeCommit Repo • DevOps Pipeline • Simple Wiki • Team Management • Dashboard for monitoring • Third Party Plugins (Jira) • Multiple Language and Frameworks http://bit.ly/codestar Http://aws.amazon.com/codestar
  • 24. Copyright © 2016 Rackspace | Rackspace® Fanatical Support® and other Rackspace marks are either registered service marks or service marks of Rackspce US, Inc. in the United States and other countries. Features, benefits and pricing presented depend on system configuration and are subject to change without notice. Rackspace disclaims any representation, warranty or other legal commitment regarding its services except for those expressly stated in a Rackspace services agreement. All other trademarks, service marks, images, products and brands remain the sole property of their respective holders and do not imply endorsement or sponsorship. ONE FANATICAL PLACE | SAN ANTONIO, TX 78218 US SALES: 1-800-961-2888 | US SUPPORT: 1-800-961-4454 | WWW.RACKSPACE.COM •Eric Johnson @edjgeek