aws code{commit,deploy,pipeline} (june 2016)
TRANSCRIPT
Julien Simon, Principal Technical Evangelist [email protected]
@julsimon
AWS Code{Commit,Deploy,Pipeline}
What to expect from the session
A few slides of AWS Developer tools Demo of CI/CD pipeline with a web application This isn’t an introduction to DevOps J I’m also assuming you’re pretty familiar with EC2, ELB, ASG, IAM, CloudWatch etc.
DevOps development lifecycle
developers delivery pipelines services
release test build
release test build
release test build
release test build
release test build
release test build
= 50 million deployments a year (1.5 deployment every second)
Thousands of teams × Microservice architecture
× Continuous delivery × Multiple environments
Setting up a delivery pipeline
Testing Staging Production
deploy
deploy
deploy Source Build
release
AWS CodeDeploy
AWS CodePipeline
AWS CodeCommit
AWS CodeCommit
Use standard Git tools Scalability, availability, and durability of Amazon S3 Encryption at rest with customer-specific keys
gitpull/push CodeCommit
Git objects in Amazon S3
Git index in Amazon DynamoDB
Encryption key in AWS KMS
SSH or HTTPS
AWS CodeDeploy
Easy and reliable deployments (zero downtime) Scale with ease Deploy to any server
Test CodeDeploy v1, v2, v3
Production
Dev
AWS CodeDeploy and EC2 Instances
• CodeDeploy requires an agent, available for Linux and Windows (aws / aws-codedeploy-agent)
• CodeDeploy can deploy to: • On-premise instances (configuration required) • Existing EC2 instances (configuration required) • New EC2 instances pre-configured for CodeDeploy thanks to a
CloudFormation template (no configuration required) • AutoScaling groups
Enabling CodeDeploy with User Data
#!/bin/bash -exyum install -y aws-clicd /home/ec2-user/wget https://aws-codedeploy-us-east-1.s3.amazonaws.com/latest/codedeploy-agent.noarch.rpmyum -y install codedeploy-agent.noarch.rpmservice codedeploy-agent start
AWS CodeDeploy Key Components
AWS CodePipeline
Connect to best-of-breed tools Accelerate your release process Consistently verify each release
Build 1) Build 2) Unit test
1) Deploy 2) UI test
Source Beta Production 1) Deploy 2) Perf test
Gamma 1) Deploy canary 2) Deploy region 1 3) Deploy region 2
1) Pull
AWS CodePipeline Key Components
AWS Code partners
Hands on with the AWS Code services
CodeCommit source control
CodePipeline continuous delivery
CodeDeploy automated deployment
https://blogs.aws.amazon.com/application-management/post/Tx2CIB02ZO05ZII/Explore-Continuous-Delivery-in-AWS-with-the-Pipeline-Starter-Kit
Next steps
DEEP DIVE ON CODE DEPLOY @ AWS re:Invent 2015 AWS CodeDeploy: Automating Your Software Deployments (DVO306) LEARN MORE
aws.amazon.com/awscode AWS CodeDeploy & CodePipeline User Guides GET STARTED
console.aws.amazon.com J
@julsimon