SlideShare ist ein Scribd-Unternehmen logo
1 von 50
AWS Government, Education, &
Nonprofits Symposium
Canberra, Australia | May 20, 2014
Continuous Integration and Deployment
Best Practices on AWS
Adrian White
Solutions Architect,
Amazon Web Services
Innovation, Quality, Governance
Stacks /
Environment(s)
An example CI / CD workflow
CI/CD tool
Issue
Tracker
SCM
Infrastructure
automation /
deployment
Test tools /
harnesses
CloudFormation Stack(s)
An example CI / CD workflow
PHPUnit
jQuery
…
Tasks for AWS
A CI / CD pipeline
Teardown
Release
Deploy
Test
Code
Get your source under control
Prod Phoenix (feature)UAT
Code
Test
Deploy
Release
Teardown
Code
Test
Deploy
Release
Teardown
Code
Test
Deploy
Release
Teardown
Code
Test
Deploy
Release
Teardown
Automated Merging
UAT Feature 2Feature 1
What does CI give us?
•  Test driven promotion (of development change)
•  Increasing velocity of feedback cycle through
iterative change
•  Contain change to reduce risk
•  Bugs are detected quickly
•  Automated testing reduces size of testing effort
What does CD give us?
•  Changes are pushed quickly to production
•  Immediate feedback from users
•  Supports A/B testing or “We test customer
reactions to features in production”
•  Hardens, de-risks the deployment process
•  Gives us a breadth of data points across our
applications
Deployment approaches
•  Deploy in place
–  Manage interruption
•  Bake
–  Discrete environment
•  Multiple environments from branches
•  Support A/B testing
•  “Rolling DNS”
Deploy Deploy in-place
Bake
Deploy in-place
Un-baked
•  Common baseline AMI
•  Customise at instantiation
•  Change in-place
Your app
AMI
Deploy in-place
Un-baked
•  Common baseline AMI
•  Customise at instantiation
•  Change in-place
Your app
AMI
Deploy in-place
Un-baked
•  Common baseline AMI
•  Customise at instantiation
•  Change in-place
Your app
AMI
Deploy in-place
Un-baked
•  Common baseline AMI
•  Customise at instantiation
•  Change in-place
Your app
AMI
Deploy in-place
Un-baked
•  Common baseline AMI
•  Customise at instantiation
•  Change in-place
Your app
AMI
Deploy in-place
Un-baked
•  Common baseline AMI
•  Customise at instantiation
•  Change in-place
Your app
AMI
Bake process
1.  Start a builder instance
2.  Bootstrap / cfn-init, cfn-signal
3.  Bake your AMI
4.  Tag it
5.  Destroy/clean up the builder instance
cfn-init
"AWS::CloudFormation::Init" : {
“cfn” : {
"packages" :{
"yum" : { "httpd" : [] }
},
"files":{
“/home/ec2-user/myfile.html:{
"source" : { "Fn::Join" : [ "", ["https://s3-ap-
southeast-2.amazonaws.com/",{ "Ref" : "S3Bucket" },”/myfile.html”]] },
"mode":"000644",
"owner":"root",
"group":"root",
"authentication":"S3AccessCreds”
},
cfn-init
"services": {
"sysvinit" : {
"httpd" : {
"enabled" : "true",
"ensureRunning" : "true"
}
}
}
}
Release
Release
Test the new stack
Match the traffic between the two stacks
Update the “floating” DNS record
Send Notification(s)
ROLLBACK
Blue green deployment
awssummit-1.com awssummit-2.com
awssummit.com
Blue green deployment
awssummit-1.com awssummit-2.com
awssummit.com
Blue green deployment
awssummit-1.com awssummit-2.com
awssummit.com
Blue green deployment
awssummit-1.com awssummit-2.com
awssummit.com
Teardown
Teardown
Ensure that no traffic is moving though ELB
Teardown the CloudFormation Stack
Deregister the AMI
Advanced Techniques
•  Extending CloudFormation with custom
resources
•  Managing CD sprawl
•  Segregation of duties
•  Extending your CD tools
Stack chaining
Stack chaining
Stack chaining
CloudFormation Merging
Git Git
CloudFormation
Operations Repo Application Repo
VPC
Subnets
Security Groups
CloudFormation Frameworks
Best Practice
Application Code
Application CloudFormation
Load Balancing Setup
CloudFormation Custom Resources
•  Change DB schema during deployment
•  Extend CloudFormation to support other
services - “So You Think You Are An
AWS Ninja” talk
https://github.com/aws/aws-cfn-resource-bridge
https://github.com/awslabs/aws-cfn-custom-resource-examples
Parameters
Custom resource
implementation
Git
Custom resources – DatabaseSchema
"MyDBSchema" : {
"Type" : "Custom::DatabaseSchema”, "Version" : "1.0",
"Properties" : {
"ServiceToken": "arn:aws:sns:us-east-1:12345EXAMPLE:DBSchema",
"databaseChangeLog" : [ {
"changeSet" : {
"id" : "1",
"author" : "adamthom",
"changes" : [ {
"createTable" : { … }
} ]
}
}
}
}
Custom resources – DatabaseSchema
"createTable" : {
"tableName" : "example",
"columns" : [ {
"column" : {
"name" : "id",
"type" : "int",
"autoIncrement" : true,
"constraints" : {
"primaryKey" : true,
"nullable" : false
}
}
} ]
}
Extending your CD tools
Tasks for AWS
DynamoDB
Situational Awareness
Burden of Responsibility
APIs
Tasks for AWS
Containerisation
•  Build environments for artifacts, don’t update
environments with artifacts
•  All environments are transient
•  Standardisation, abstraction and portability
Docker, Amazon Linux and Elastic
Beanstalk
•  A framework for managing containers
•  LXC containers are more lightweight than VMs
•  Amazon Linux (2014.03) bundles Docker 0.9
and LXC 0.9
•  Docker containers on Beanstalk are Go!
Innovation, Quality, Governance
Discrete environments for each branch
Automated testing on every commit on every branch
Leverage CD tools to provide separation of duties
Audit Logs
Git approvals process
Use custom resources to extend CloudFormation
Leverage DNS
Interface with the API
Environments for artifacts
Customer: Open Training Institute
Journey to the cloud
Steve Mactaggart
Manager, Open Training Platform
•  Our	
  core	
  Higher	
  Educa/on	
  business	
  
–  Open	
  Universi/es	
  Australia	
  is	
  a	
  na/onal	
  leader	
  in	
  online	
  
higher	
  educa/on.	
  
–  Through	
  Open	
  Universi/es	
  Australia	
  you	
  can	
  study	
  high-­‐
quality	
  degrees	
  with	
  leading	
  Australian	
  universi/es.	
  
Introduction to Open Universities
•  Launch	
  of	
  Open2Study	
  
–  Develop	
  Australia’s	
  first	
  large	
  scale	
  MOOC	
  
–  Enhance	
  our	
  capability	
  to	
  design	
  and	
  deliver	
  
online	
  learning	
  
–  New	
  technical	
  plaIorm	
  for	
  us	
  to	
  deliver	
  
•  Now	
  Open	
  Training	
  Ins/tute	
  
–  A	
  new	
  business	
  focused	
  on	
  delivering	
  Voca/onal	
  
Educa/on	
  and	
  Training	
  online	
  
–  Leveraging	
  our	
  experience	
  of	
  the	
  exis/ng	
  Open	
  
business,	
  capabili/es	
  developed	
  for	
  Open2Study	
  
–  Project	
  kickoff	
  May	
  2013,	
  Launch	
  Dec	
  2013	
  
Our Journey
•  New	
  technology	
  stack	
  
•  Ambi/ous	
  scope	
  of	
  work	
  
•  Lots	
  of	
  compe/ng	
  business	
  objec/ves	
  
•  Aggressive	
  /meframes	
  
•  Unexpected	
  ini/al	
  load	
  and	
  growth	
  profile	
  
•  Geographically	
  separate	
  development	
  team	
  
Challenges
What does Open2Study look like today
170,000+	
  students	
  
300,000+	
  enrolments	
  
	
  4,700,000+	
  min	
  of	
  video	
  
	
  
From	
  over	
  200	
  countries	
  
	
  
Web	
  instances	
  scale	
  between	
  
4	
  -­‐-­‐>	
  12	
  m1.xlarge	
  instances	
  
•  Stage	
  1:	
  Spike	
  it	
  up	
  (POC)	
  
–  AWS	
  CLI	
  build	
  AS	
  group	
  and	
  launch	
  
•  Stage	
  2:	
  Automated	
  deployments	
  
–  Ini/al	
  version	
  of	
  deployment	
  script,	
  manually	
  triggered	
  by	
  
logging	
  on	
  to	
  server	
  
•  Stage	
  3:	
  Deployment	
  pipeline	
  
–  Jenkins,	
  ssh	
  and	
  Build	
  pipeline	
  plugin	
  
•  Stage	
  4:	
  Prepare	
  for	
  scale	
  
–  Manual	
  AMI	
  crea/on	
  and	
  rollout,	
  Using	
  AWS	
  CLI	
  to	
  
reconfigure	
  the	
  ASG	
  
Our path to successful scale
•  Lessons	
  from	
  Ini/al	
  spike	
  
–  AWS	
  for	
  prototyping	
  was	
  really	
  painless	
  
–  AMI	
  provisioning	
  managed	
  by	
  AS	
  group	
  
–  Scale	
  Up/Down	
  rules	
  using	
  CloudWatch	
  
–  CPU	
  rules	
  caused	
  early	
  scale	
  up	
  
–  Need	
  for	
  becer	
  metrics	
  to	
  trigger	
  scale	
  
–  Regular	
  adjustment	
  required	
  
•  Lessons	
  from	
  Automated	
  deployments	
  
–  Reproducible	
  steps	
  with	
  basic	
  script	
  
–  Script	
  needs	
  to	
  be	
  version	
  controlled	
  
–  Deployment	
  from	
  git	
  
–  AWS	
  looks	
  and	
  feels	
  very	
  similar	
  to	
  our	
  exis/ng	
  infrastructure	
  
Key learning’s
•  Lessons	
  from	
  Con/nuous	
  delivery	
  
–  Manual	
  tasks	
  in	
  pipeline	
  for	
  approval	
  
–  Prime	
  the	
  pipeline	
  on	
  every	
  developer	
  change	
  
–  Constantly	
  extend	
  ‘deploy’	
  script	
  
–  BASH	
  is	
  a	
  good	
  start,	
  but	
  not	
  the	
  end	
  game	
  
•  Lessons	
  from	
  prepare	
  for	
  scale	
  
–  Manual	
  AMI	
  crea/on	
  soon	
  became	
  blockage	
  
–  Convert	
  process	
  to	
  simple	
  BASH	
  script	
  
–  Integrate	
  with	
  deployment	
  pipeline	
  
–  ASG	
  to	
  replace	
  applica/on	
  
Key learning’s
•  Enter	
  OpsWorks	
  
–  Provides	
  server	
  configura/on	
  management	
  
–  Lifecycle	
  events	
  to	
  manage	
  deploy	
  process	
  
–  Automated	
  Load	
  and	
  Time	
  based	
  scaling	
  
•  Lessons	
  from	
  Configura/on	
  management	
  
–  New	
  set	
  of	
  skills	
  required,	
  chef	
  cookbooks	
  
–  Re-­‐architect	
  the	
  development	
  and	
  deployment	
  process	
  
–  Scale	
  up	
  slow	
  (~15min	
  to	
  provision	
  node)	
  
–  Python	
  /	
  boto	
  for	
  deployment	
  	
  
automa/on	
  control	
  
Where we are today
•  Repeatable	
  ar/facts	
  promoted	
  between	
  environment	
  
–  Solu/on	
  is	
  somewhere	
  between	
  baked	
  AMI	
  'fixed	
  baked'	
  
approach	
  and	
  'build	
  on	
  demand'	
  process	
  of	
  OpsWorks	
  
•  Standard	
  ar/facts	
  with	
  configura/on	
  injec/on	
  
–  Configura/on	
  injected	
  via	
  user	
  data	
  
–  Read	
  and	
  configured	
  from	
  S3	
  
•  Full	
  automa/on	
  of	
  all	
  applica/on	
  and	
  environment	
  
changes	
  	
  
–  Flexibility	
  of	
  build	
  from	
  scratch	
  
Where we see we are heading
THANK YOU
Please give us your feedback by filling out the Feedback Forms
AWS Government, Education, &
Nonprofits Symposium
Canberra, Australia | May 20, 2014

Weitere ähnliche Inhalte

Was ist angesagt?

Digital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewDigital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewIBM UrbanCode Products
 
Microservices: What's Missing - O'Reilly Software Architecture New York
Microservices: What's Missing - O'Reilly Software Architecture New YorkMicroservices: What's Missing - O'Reilly Software Architecture New York
Microservices: What's Missing - O'Reilly Software Architecture New YorkAdrian Cockcroft
 
DevOps in the Cloud
DevOps in the CloudDevOps in the Cloud
DevOps in the CloudEran Stiller
 
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, ReleaseEnterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, ReleaseIBM UrbanCode Products
 
Continuous Deployment Strategies
Continuous Deployment StrategiesContinuous Deployment Strategies
Continuous Deployment StrategiesThoughtworks
 
Delivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudDelivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudIBM UrbanCode Products
 
Cloud With DevOps Enabling Rapid Business Development
Cloud With DevOps Enabling Rapid Business DevelopmentCloud With DevOps Enabling Rapid Business Development
Cloud With DevOps Enabling Rapid Business DevelopmentSam Garforth
 
Building a CICD Pipeline for Container Deployment to Amazon ECS - May 2017 AW...
Building a CICD Pipeline for Container Deployment to Amazon ECS - May 2017 AW...Building a CICD Pipeline for Container Deployment to Amazon ECS - May 2017 AW...
Building a CICD Pipeline for Container Deployment to Amazon ECS - May 2017 AW...Amazon Web Services
 
Webinar on architecting with aws
Webinar on architecting with awsWebinar on architecting with aws
Webinar on architecting with awsSridhara T V
 
June 2015 - OpenStack-fr meetup - Designing CloudWare applications
June 2015 - OpenStack-fr meetup - Designing CloudWare applicationsJune 2015 - OpenStack-fr meetup - Designing CloudWare applications
June 2015 - OpenStack-fr meetup - Designing CloudWare applicationsJean-Charles JOREL
 
Calculating the Savings of Moving Your Drupal Site to the Cloud
Calculating the Savings of Moving Your Drupal Site to the CloudCalculating the Savings of Moving Your Drupal Site to the Cloud
Calculating the Savings of Moving Your Drupal Site to the CloudAcquia
 
Building a Cloud Native Platform with WSO2 Private PaaS
Building a Cloud Native Platform with WSO2 Private PaaSBuilding a Cloud Native Platform with WSO2 Private PaaS
Building a Cloud Native Platform with WSO2 Private PaaSWSO2
 
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic RelationshipCloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic RelationshipMatt Stine
 
10 Typical Java Problems in the Wild
10 Typical Java Problems in the Wild10 Typical Java Problems in the Wild
10 Typical Java Problems in the WildEberhard Wolff
 
Performance Testing Cloud-Based Systems
Performance Testing Cloud-Based SystemsPerformance Testing Cloud-Based Systems
Performance Testing Cloud-Based SystemsTechWell
 
7 Use Cases in 7 Minutes Each : The Power of Workflows and Automation (SVC101...
7 Use Cases in 7 Minutes Each : The Power of Workflows and Automation (SVC101...7 Use Cases in 7 Minutes Each : The Power of Workflows and Automation (SVC101...
7 Use Cases in 7 Minutes Each : The Power of Workflows and Automation (SVC101...Amazon Web Services
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOpsDmitry Buzdin
 

Was ist angesagt? (20)

Digital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewDigital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture Overview
 
Microservices: What's Missing - O'Reilly Software Architecture New York
Microservices: What's Missing - O'Reilly Software Architecture New YorkMicroservices: What's Missing - O'Reilly Software Architecture New York
Microservices: What's Missing - O'Reilly Software Architecture New York
 
DevOps in the Cloud
DevOps in the CloudDevOps in the Cloud
DevOps in the Cloud
 
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, ReleaseEnterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
 
Continuous Deployment Strategies
Continuous Deployment StrategiesContinuous Deployment Strategies
Continuous Deployment Strategies
 
Delivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudDelivering Applications Continuously to Cloud
Delivering Applications Continuously to Cloud
 
Cloud With DevOps Enabling Rapid Business Development
Cloud With DevOps Enabling Rapid Business DevelopmentCloud With DevOps Enabling Rapid Business Development
Cloud With DevOps Enabling Rapid Business Development
 
Building a CICD Pipeline for Container Deployment to Amazon ECS - May 2017 AW...
Building a CICD Pipeline for Container Deployment to Amazon ECS - May 2017 AW...Building a CICD Pipeline for Container Deployment to Amazon ECS - May 2017 AW...
Building a CICD Pipeline for Container Deployment to Amazon ECS - May 2017 AW...
 
DevOps and Cloud
DevOps and CloudDevOps and Cloud
DevOps and Cloud
 
From ci to cd
From ci to cdFrom ci to cd
From ci to cd
 
Webinar on architecting with aws
Webinar on architecting with awsWebinar on architecting with aws
Webinar on architecting with aws
 
June 2015 - OpenStack-fr meetup - Designing CloudWare applications
June 2015 - OpenStack-fr meetup - Designing CloudWare applicationsJune 2015 - OpenStack-fr meetup - Designing CloudWare applications
June 2015 - OpenStack-fr meetup - Designing CloudWare applications
 
Calculating the Savings of Moving Your Drupal Site to the Cloud
Calculating the Savings of Moving Your Drupal Site to the CloudCalculating the Savings of Moving Your Drupal Site to the Cloud
Calculating the Savings of Moving Your Drupal Site to the Cloud
 
Building a Cloud Native Platform with WSO2 Private PaaS
Building a Cloud Native Platform with WSO2 Private PaaSBuilding a Cloud Native Platform with WSO2 Private PaaS
Building a Cloud Native Platform with WSO2 Private PaaS
 
DevOps@Morpho in 2014
DevOps@Morpho in 2014DevOps@Morpho in 2014
DevOps@Morpho in 2014
 
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic RelationshipCloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
 
10 Typical Java Problems in the Wild
10 Typical Java Problems in the Wild10 Typical Java Problems in the Wild
10 Typical Java Problems in the Wild
 
Performance Testing Cloud-Based Systems
Performance Testing Cloud-Based SystemsPerformance Testing Cloud-Based Systems
Performance Testing Cloud-Based Systems
 
7 Use Cases in 7 Minutes Each : The Power of Workflows and Automation (SVC101...
7 Use Cases in 7 Minutes Each : The Power of Workflows and Automation (SVC101...7 Use Cases in 7 Minutes Each : The Power of Workflows and Automation (SVC101...
7 Use Cases in 7 Minutes Each : The Power of Workflows and Automation (SVC101...
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 

Andere mochten auch

Building Web Applications on AWS - AWS Summit 2012 - NYC
Building Web Applications on AWS - AWS Summit 2012 - NYCBuilding Web Applications on AWS - AWS Summit 2012 - NYC
Building Web Applications on AWS - AWS Summit 2012 - NYCAmazon Web Services
 
AWS Summit 2011 : Validating the Security of your AWS Cloud Deployments
AWS Summit 2011 :  Validating the Security of your AWS Cloud DeploymentsAWS Summit 2011 :  Validating the Security of your AWS Cloud Deployments
AWS Summit 2011 : Validating the Security of your AWS Cloud DeploymentsAmazon Web Services
 
AWS Public Sector Symposium 2014 Canberra | Keynote
AWS Public Sector Symposium 2014 Canberra | KeynoteAWS Public Sector Symposium 2014 Canberra | Keynote
AWS Public Sector Symposium 2014 Canberra | KeynoteAmazon Web Services
 
Boundaryless Enterprises and Cloud - Raj Bala
Boundaryless Enterprises and Cloud - Raj BalaBoundaryless Enterprises and Cloud - Raj Bala
Boundaryless Enterprises and Cloud - Raj BalaAmazon Web Services
 
AWS Customer Presentation: What's Up Interactive : Disaster Recovery - AWS Su...
AWS Customer Presentation: What's Up Interactive : Disaster Recovery - AWS Su...AWS Customer Presentation: What's Up Interactive : Disaster Recovery - AWS Su...
AWS Customer Presentation: What's Up Interactive : Disaster Recovery - AWS Su...Amazon Web Services
 
AWS Summit 2011: Data Storage Solutions in the AWS Cloud
AWS Summit 2011: Data Storage Solutions in the AWS CloudAWS Summit 2011: Data Storage Solutions in the AWS Cloud
AWS Summit 2011: Data Storage Solutions in the AWS CloudAmazon Web Services
 
Indian Case Studies: How AWS Customers Have Successfully Built and Migrated a...
Indian Case Studies: How AWS Customers Have Successfully Built and Migrated a...Indian Case Studies: How AWS Customers Have Successfully Built and Migrated a...
Indian Case Studies: How AWS Customers Have Successfully Built and Migrated a...Amazon Web Services
 

Andere mochten auch (8)

Building Web Applications on AWS - AWS Summit 2012 - NYC
Building Web Applications on AWS - AWS Summit 2012 - NYCBuilding Web Applications on AWS - AWS Summit 2012 - NYC
Building Web Applications on AWS - AWS Summit 2012 - NYC
 
AWS Summit 2011 : Validating the Security of your AWS Cloud Deployments
AWS Summit 2011 :  Validating the Security of your AWS Cloud DeploymentsAWS Summit 2011 :  Validating the Security of your AWS Cloud Deployments
AWS Summit 2011 : Validating the Security of your AWS Cloud Deployments
 
AWS Public Sector Symposium 2014 Canberra | Keynote
AWS Public Sector Symposium 2014 Canberra | KeynoteAWS Public Sector Symposium 2014 Canberra | Keynote
AWS Public Sector Symposium 2014 Canberra | Keynote
 
Boundaryless Enterprises and Cloud - Raj Bala
Boundaryless Enterprises and Cloud - Raj BalaBoundaryless Enterprises and Cloud - Raj Bala
Boundaryless Enterprises and Cloud - Raj Bala
 
AWS Customer Presentation: What's Up Interactive : Disaster Recovery - AWS Su...
AWS Customer Presentation: What's Up Interactive : Disaster Recovery - AWS Su...AWS Customer Presentation: What's Up Interactive : Disaster Recovery - AWS Su...
AWS Customer Presentation: What's Up Interactive : Disaster Recovery - AWS Su...
 
Keynote from Werner Vogels
Keynote from Werner VogelsKeynote from Werner Vogels
Keynote from Werner Vogels
 
AWS Summit 2011: Data Storage Solutions in the AWS Cloud
AWS Summit 2011: Data Storage Solutions in the AWS CloudAWS Summit 2011: Data Storage Solutions in the AWS Cloud
AWS Summit 2011: Data Storage Solutions in the AWS Cloud
 
Indian Case Studies: How AWS Customers Have Successfully Built and Migrated a...
Indian Case Studies: How AWS Customers Have Successfully Built and Migrated a...Indian Case Studies: How AWS Customers Have Successfully Built and Migrated a...
Indian Case Studies: How AWS Customers Have Successfully Built and Migrated a...
 

Ähnlich wie AWS Public Sector Symposium 2014 Canberra | Continuous Integration and Deployment Best Practices on AWS

Application Delivery Patterns for Developers - Technical 401
Application Delivery Patterns for Developers - Technical 401Application Delivery Patterns for Developers - Technical 401
Application Delivery Patterns for Developers - Technical 401Amazon Web Services
 
It summit 2014_migrating_applications_to_the_cloud-5
It summit 2014_migrating_applications_to_the_cloud-5It summit 2014_migrating_applications_to_the_cloud-5
It summit 2014_migrating_applications_to_the_cloud-5margaret_ronald
 
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
 Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S... Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...Skytap Cloud
 
DevOps and Application Delivery for Hybrid Cloud - DevOpsSummit session
DevOps and Application Delivery for Hybrid Cloud  - DevOpsSummit sessionDevOps and Application Delivery for Hybrid Cloud  - DevOpsSummit session
DevOps and Application Delivery for Hybrid Cloud - DevOpsSummit sessionSanjeev Sharma
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSAmazon Web Services
 
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsDeployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsIBM UrbanCode Products
 
Java Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the CloudJava Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the CloudMongoDB
 
AWS Summit Auckland - Application Delivery Patterns for Developers
AWS Summit Auckland - Application Delivery Patterns for DevelopersAWS Summit Auckland - Application Delivery Patterns for Developers
AWS Summit Auckland - Application Delivery Patterns for DevelopersAmazon Web Services
 
Transforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOpsTransforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOpsNicolas (Nick) Barcet
 
Continuous Delivery series: How to automate your infrastructure toolchain
Continuous Delivery series: How to automate your infrastructure toolchainContinuous Delivery series: How to automate your infrastructure toolchain
Continuous Delivery series: How to automate your infrastructure toolchainSerena Software
 
REAN Cloud DevOps Accelerators
REAN Cloud DevOps AcceleratorsREAN Cloud DevOps Accelerators
REAN Cloud DevOps AcceleratorsREAN Cloud
 
Testing Applications—For the Cloud and in the Cloud
Testing Applications—For the Cloud and in the CloudTesting Applications—For the Cloud and in the Cloud
Testing Applications—For the Cloud and in the CloudTechWell
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSAmazon Web Services
 
[India Merge World Tour] Electric Cloud
[India Merge World Tour] Electric Cloud[India Merge World Tour] Electric Cloud
[India Merge World Tour] Electric CloudPerforce
 
Big datatraining.in devops-part2 (1)
Big datatraining.in devops-part2 (1)Big datatraining.in devops-part2 (1)
Big datatraining.in devops-part2 (1)sKaushikNarayanan
 
Big datatraining.in devops-part2 (1)
Big datatraining.in devops-part2 (1)Big datatraining.in devops-part2 (1)
Big datatraining.in devops-part2 (1)MvkZ
 
Big datatraining.in devops-part2 (1)
Big datatraining.in devops-part2 (1)Big datatraining.in devops-part2 (1)
Big datatraining.in devops-part2 (1)MvkZ
 

Ähnlich wie AWS Public Sector Symposium 2014 Canberra | Continuous Integration and Deployment Best Practices on AWS (20)

Application Delivery Patterns for Developers - Technical 401
Application Delivery Patterns for Developers - Technical 401Application Delivery Patterns for Developers - Technical 401
Application Delivery Patterns for Developers - Technical 401
 
Application Delivery Patterns
Application Delivery PatternsApplication Delivery Patterns
Application Delivery Patterns
 
It summit 2014_migrating_applications_to_the_cloud-5
It summit 2014_migrating_applications_to_the_cloud-5It summit 2014_migrating_applications_to_the_cloud-5
It summit 2014_migrating_applications_to_the_cloud-5
 
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
 Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S... Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
 
DevOps and Application Delivery for Hybrid Cloud - DevOpsSummit session
DevOps and Application Delivery for Hybrid Cloud  - DevOpsSummit sessionDevOps and Application Delivery for Hybrid Cloud  - DevOpsSummit session
DevOps and Application Delivery for Hybrid Cloud - DevOpsSummit session
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWS
 
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsDeployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
 
Java Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the CloudJava Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the Cloud
 
AWS Summit Auckland - Application Delivery Patterns for Developers
AWS Summit Auckland - Application Delivery Patterns for DevelopersAWS Summit Auckland - Application Delivery Patterns for Developers
AWS Summit Auckland - Application Delivery Patterns for Developers
 
Transforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOpsTransforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOps
 
DevOps and AWS
DevOps and AWSDevOps and AWS
DevOps and AWS
 
What is DevOps?
What is DevOps?What is DevOps?
What is DevOps?
 
Continuous Delivery series: How to automate your infrastructure toolchain
Continuous Delivery series: How to automate your infrastructure toolchainContinuous Delivery series: How to automate your infrastructure toolchain
Continuous Delivery series: How to automate your infrastructure toolchain
 
REAN Cloud DevOps Accelerators
REAN Cloud DevOps AcceleratorsREAN Cloud DevOps Accelerators
REAN Cloud DevOps Accelerators
 
Testing Applications—For the Cloud and in the Cloud
Testing Applications—For the Cloud and in the CloudTesting Applications—For the Cloud and in the Cloud
Testing Applications—For the Cloud and in the Cloud
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWS
 
[India Merge World Tour] Electric Cloud
[India Merge World Tour] Electric Cloud[India Merge World Tour] Electric Cloud
[India Merge World Tour] Electric Cloud
 
Big datatraining.in devops-part2 (1)
Big datatraining.in devops-part2 (1)Big datatraining.in devops-part2 (1)
Big datatraining.in devops-part2 (1)
 
Big datatraining.in devops-part2 (1)
Big datatraining.in devops-part2 (1)Big datatraining.in devops-part2 (1)
Big datatraining.in devops-part2 (1)
 
Big datatraining.in devops-part2 (1)
Big datatraining.in devops-part2 (1)Big datatraining.in devops-part2 (1)
Big datatraining.in devops-part2 (1)
 

Mehr von Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

Mehr von Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Kürzlich hochgeladen

Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 

Kürzlich hochgeladen (20)

Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 

AWS Public Sector Symposium 2014 Canberra | Continuous Integration and Deployment Best Practices on AWS

  • 1. AWS Government, Education, & Nonprofits Symposium Canberra, Australia | May 20, 2014 Continuous Integration and Deployment Best Practices on AWS Adrian White Solutions Architect, Amazon Web Services
  • 3. Stacks / Environment(s) An example CI / CD workflow CI/CD tool Issue Tracker SCM Infrastructure automation / deployment Test tools / harnesses
  • 4. CloudFormation Stack(s) An example CI / CD workflow PHPUnit jQuery … Tasks for AWS
  • 5. A CI / CD pipeline Teardown Release Deploy Test Code
  • 6. Get your source under control Prod Phoenix (feature)UAT Code Test Deploy Release Teardown Code Test Deploy Release Teardown Code Test Deploy Release Teardown Code Test Deploy Release Teardown
  • 8. What does CI give us? •  Test driven promotion (of development change) •  Increasing velocity of feedback cycle through iterative change •  Contain change to reduce risk •  Bugs are detected quickly •  Automated testing reduces size of testing effort
  • 9. What does CD give us? •  Changes are pushed quickly to production •  Immediate feedback from users •  Supports A/B testing or “We test customer reactions to features in production” •  Hardens, de-risks the deployment process •  Gives us a breadth of data points across our applications
  • 10. Deployment approaches •  Deploy in place –  Manage interruption •  Bake –  Discrete environment •  Multiple environments from branches •  Support A/B testing •  “Rolling DNS” Deploy Deploy in-place Bake
  • 11. Deploy in-place Un-baked •  Common baseline AMI •  Customise at instantiation •  Change in-place Your app AMI
  • 12. Deploy in-place Un-baked •  Common baseline AMI •  Customise at instantiation •  Change in-place Your app AMI
  • 13. Deploy in-place Un-baked •  Common baseline AMI •  Customise at instantiation •  Change in-place Your app AMI
  • 14. Deploy in-place Un-baked •  Common baseline AMI •  Customise at instantiation •  Change in-place Your app AMI
  • 15. Deploy in-place Un-baked •  Common baseline AMI •  Customise at instantiation •  Change in-place Your app AMI
  • 16. Deploy in-place Un-baked •  Common baseline AMI •  Customise at instantiation •  Change in-place Your app AMI
  • 17. Bake process 1.  Start a builder instance 2.  Bootstrap / cfn-init, cfn-signal 3.  Bake your AMI 4.  Tag it 5.  Destroy/clean up the builder instance
  • 18. cfn-init "AWS::CloudFormation::Init" : { “cfn” : { "packages" :{ "yum" : { "httpd" : [] } }, "files":{ “/home/ec2-user/myfile.html:{ "source" : { "Fn::Join" : [ "", ["https://s3-ap- southeast-2.amazonaws.com/",{ "Ref" : "S3Bucket" },”/myfile.html”]] }, "mode":"000644", "owner":"root", "group":"root", "authentication":"S3AccessCreds” },
  • 19. cfn-init "services": { "sysvinit" : { "httpd" : { "enabled" : "true", "ensureRunning" : "true" } } } }
  • 20. Release Release Test the new stack Match the traffic between the two stacks Update the “floating” DNS record Send Notification(s) ROLLBACK
  • 21. Blue green deployment awssummit-1.com awssummit-2.com awssummit.com
  • 22. Blue green deployment awssummit-1.com awssummit-2.com awssummit.com
  • 23. Blue green deployment awssummit-1.com awssummit-2.com awssummit.com
  • 24. Blue green deployment awssummit-1.com awssummit-2.com awssummit.com
  • 25. Teardown Teardown Ensure that no traffic is moving though ELB Teardown the CloudFormation Stack Deregister the AMI
  • 26. Advanced Techniques •  Extending CloudFormation with custom resources •  Managing CD sprawl •  Segregation of duties •  Extending your CD tools
  • 30. CloudFormation Merging Git Git CloudFormation Operations Repo Application Repo VPC Subnets Security Groups CloudFormation Frameworks Best Practice Application Code Application CloudFormation Load Balancing Setup
  • 31. CloudFormation Custom Resources •  Change DB schema during deployment •  Extend CloudFormation to support other services - “So You Think You Are An AWS Ninja” talk https://github.com/aws/aws-cfn-resource-bridge https://github.com/awslabs/aws-cfn-custom-resource-examples Parameters Custom resource implementation Git
  • 32. Custom resources – DatabaseSchema "MyDBSchema" : { "Type" : "Custom::DatabaseSchema”, "Version" : "1.0", "Properties" : { "ServiceToken": "arn:aws:sns:us-east-1:12345EXAMPLE:DBSchema", "databaseChangeLog" : [ { "changeSet" : { "id" : "1", "author" : "adamthom", "changes" : [ { "createTable" : { … } } ] } } } }
  • 33. Custom resources – DatabaseSchema "createTable" : { "tableName" : "example", "columns" : [ { "column" : { "name" : "id", "type" : "int", "autoIncrement" : true, "constraints" : { "primaryKey" : true, "nullable" : false } } } ] }
  • 34. Extending your CD tools Tasks for AWS DynamoDB
  • 35. Situational Awareness Burden of Responsibility APIs Tasks for AWS
  • 36. Containerisation •  Build environments for artifacts, don’t update environments with artifacts •  All environments are transient •  Standardisation, abstraction and portability
  • 37. Docker, Amazon Linux and Elastic Beanstalk •  A framework for managing containers •  LXC containers are more lightweight than VMs •  Amazon Linux (2014.03) bundles Docker 0.9 and LXC 0.9 •  Docker containers on Beanstalk are Go!
  • 38. Innovation, Quality, Governance Discrete environments for each branch Automated testing on every commit on every branch Leverage CD tools to provide separation of duties Audit Logs Git approvals process Use custom resources to extend CloudFormation Leverage DNS Interface with the API Environments for artifacts
  • 40. Journey to the cloud Steve Mactaggart Manager, Open Training Platform
  • 41. •  Our  core  Higher  Educa/on  business   –  Open  Universi/es  Australia  is  a  na/onal  leader  in  online   higher  educa/on.   –  Through  Open  Universi/es  Australia  you  can  study  high-­‐ quality  degrees  with  leading  Australian  universi/es.   Introduction to Open Universities
  • 42. •  Launch  of  Open2Study   –  Develop  Australia’s  first  large  scale  MOOC   –  Enhance  our  capability  to  design  and  deliver   online  learning   –  New  technical  plaIorm  for  us  to  deliver   •  Now  Open  Training  Ins/tute   –  A  new  business  focused  on  delivering  Voca/onal   Educa/on  and  Training  online   –  Leveraging  our  experience  of  the  exis/ng  Open   business,  capabili/es  developed  for  Open2Study   –  Project  kickoff  May  2013,  Launch  Dec  2013   Our Journey
  • 43. •  New  technology  stack   •  Ambi/ous  scope  of  work   •  Lots  of  compe/ng  business  objec/ves   •  Aggressive  /meframes   •  Unexpected  ini/al  load  and  growth  profile   •  Geographically  separate  development  team   Challenges
  • 44. What does Open2Study look like today 170,000+  students   300,000+  enrolments    4,700,000+  min  of  video     From  over  200  countries     Web  instances  scale  between   4  -­‐-­‐>  12  m1.xlarge  instances  
  • 45. •  Stage  1:  Spike  it  up  (POC)   –  AWS  CLI  build  AS  group  and  launch   •  Stage  2:  Automated  deployments   –  Ini/al  version  of  deployment  script,  manually  triggered  by   logging  on  to  server   •  Stage  3:  Deployment  pipeline   –  Jenkins,  ssh  and  Build  pipeline  plugin   •  Stage  4:  Prepare  for  scale   –  Manual  AMI  crea/on  and  rollout,  Using  AWS  CLI  to   reconfigure  the  ASG   Our path to successful scale
  • 46. •  Lessons  from  Ini/al  spike   –  AWS  for  prototyping  was  really  painless   –  AMI  provisioning  managed  by  AS  group   –  Scale  Up/Down  rules  using  CloudWatch   –  CPU  rules  caused  early  scale  up   –  Need  for  becer  metrics  to  trigger  scale   –  Regular  adjustment  required   •  Lessons  from  Automated  deployments   –  Reproducible  steps  with  basic  script   –  Script  needs  to  be  version  controlled   –  Deployment  from  git   –  AWS  looks  and  feels  very  similar  to  our  exis/ng  infrastructure   Key learning’s
  • 47. •  Lessons  from  Con/nuous  delivery   –  Manual  tasks  in  pipeline  for  approval   –  Prime  the  pipeline  on  every  developer  change   –  Constantly  extend  ‘deploy’  script   –  BASH  is  a  good  start,  but  not  the  end  game   •  Lessons  from  prepare  for  scale   –  Manual  AMI  crea/on  soon  became  blockage   –  Convert  process  to  simple  BASH  script   –  Integrate  with  deployment  pipeline   –  ASG  to  replace  applica/on   Key learning’s
  • 48. •  Enter  OpsWorks   –  Provides  server  configura/on  management   –  Lifecycle  events  to  manage  deploy  process   –  Automated  Load  and  Time  based  scaling   •  Lessons  from  Configura/on  management   –  New  set  of  skills  required,  chef  cookbooks   –  Re-­‐architect  the  development  and  deployment  process   –  Scale  up  slow  (~15min  to  provision  node)   –  Python  /  boto  for  deployment     automa/on  control   Where we are today
  • 49. •  Repeatable  ar/facts  promoted  between  environment   –  Solu/on  is  somewhere  between  baked  AMI  'fixed  baked'   approach  and  'build  on  demand'  process  of  OpsWorks   •  Standard  ar/facts  with  configura/on  injec/on   –  Configura/on  injected  via  user  data   –  Read  and  configured  from  S3   •  Full  automa/on  of  all  applica/on  and  environment   changes     –  Flexibility  of  build  from  scratch   Where we see we are heading
  • 50. THANK YOU Please give us your feedback by filling out the Feedback Forms AWS Government, Education, & Nonprofits Symposium Canberra, Australia | May 20, 2014