Experiences from DevOps production: Deployment, performance, failure.
DevOps and Continuous Deployment @ WWPS Government, Education, and Non-profit Symposium 2014
-
Upload
john-schneider -
Category
Internet
-
view
508 -
download
0
description
Transcript of DevOps and Continuous Deployment @ WWPS Government, Education, and Non-profit Symposium 2014
AWS Government, Education, and Nonprofits Symposium Washington, DC | June 24, 2014 - June 26, 2014
AWS Government, Education, and Nonprofits Symposium Washington, DC | June 24, 2014 - June 26, 2014
DevOps on AWSContinuous Integration and Deployment Best Practices on AWS
Leo Zhadanovsky, Senior Solutions Architect, AWS | @leozh JP Schneider, DevOps / Internet Jedi, Mozilla Foundation |
@jdotp
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Who Am I?
I work for AWS
I worked for the DNC 2009-2012
I was embedded in the DevOps Team @ OFA
AWS does not endorse
political candidates
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Who Am I?
JP, DevOps for Mozilla Foundation
Previous gig DevOps at OFA 2012
Before that, Ops at Threadless
@jdotp
Mozilla Foundation does endorse animated cats
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
CONTINUOUS INTEGRATION
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
What is Continuous Integration?
Changes to code automatically deployed to mainline branch• After passing unit and mock tests
Makes changes to code, and deployments iterative, not monolithic
Bugs are detected quickly
Allows rapid development
Helps automate deployments
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
DEVELOPER
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
SOURCE CODEREPOSITORY
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
SOURCE CODEREPOSITORY
PROJECT MANAGEMENT SERVER
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
SOURCE CODEREPOSITORY
PROJECT MANAGEMENT SERVER
CONTINUOUS INTEGRATION SERVER
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
SOURCE CODEREPOSITORY
PROJECT MANAGEMENT SERVER
CONTINUOUS INTEGRATION SERVER
PICKTASKS
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
SOURCE CODEREPOSITORY
PROJECT MANAGEMENT SERVER
CONTINUOUS INTEGRATION SERVER
SUBMITCODE
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
SOURCE CODEREPOSITORY
PROJECT MANAGEMENT SERVER
CONTINUOUS INTEGRATION SERVER
SCHEDULEBUILD
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
SOURCE CODEREPOSITORY
PROJECT MANAGEMENT SERVER
CONTINUOUS INTEGRATION SERVER
RECURRENTBUILDS
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
SOURCE CODEREPOSITORY
PROJECT MANAGEMENT SERVER
CONTINUOUS INTEGRATION SERVER
CODEFETCH
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
SOURCE CODEREPOSITORY
PROJECT MANAGEMENT SERVER
CONTINUOUS INTEGRATION SERVER
CODE QUALITYTESTS
TESTRESULTS
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
SOURCE CODEREPOSITORY
PROJECT MANAGEMENT SERVER
CONTINUOUS INTEGRATION SERVER
BUILD OUTPUT
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
SOURCE CODEREPOSITORY
PROJECT MANAGEMENT SERVER
CONTINUOUS INTEGRATION SERVER
DOCS
BINARIES& PACKAGES
DEV FACING NOTIFICATIONS
SOURCE CODE REPOSITORY
DNS
CONTINUOUS INTEGRATION SERVER
PROJECT MANAGEMENT SERVER
BUILDS
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
PAIN POINTS• UNIT TESTS INCOMPLETE• MOCK TESTS MAINTENANCE• EXPENSIVE TEST ENVIRONMENT• TEST ENVIRONMENT ≠ PRODUCTION• DEPLOYMENT CYCLES
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
ON-DEMAND
PAY AS YOU GO
ELASTIC
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
=
PROGRAMMABLE PLATFORM
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
IF YOU CAN PROGRAM ITYOU CAN AUTOMATE IT
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
A lot of options…
Configuration Management Systems• Puppet• Chef• Saltstack
Deployment Frameworks• Elastic Beanstalk• OpsWorks• Ansible• Fabric• Capistrano
Infrastructure Management• CloudFormation
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Bake an AMI Configure dynamically
Time consuming configuration (startup time)
Static configurations (less change management)
Bootstrapping
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Continuous deployment (latest code)
Environment specific (dev-test-prod)
Bootstrapping
Bake an AMI Configure dynamically
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Obama for America
awsofa.info
CASE STUDY
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
So here’s the Idea
~30th biggest E-commerce operation, globally
~200 distinct new applications, many mobile
Hundreds of new, untested analytical approaches
Processing hundreds of TB of data on thousands of servers
Spikes of hundreds of thousands of concurrent users
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
a few constraints…
~30th biggest E-commerce operation, globally
~200 distinct applications, many mobile
Hundreds of new, untested analytical approaches
Processing hundreds of TB of data on thousands of servers
Spikes of hundreds of thousands of concurrent users
Critically compressed budget
Less than a year to execute
Volunteer and near-volunteer development team
Core systems will be used for a single critical day
Constitutionally-mandated completion date
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Web-Scale Applications
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
500k+ IOPS DB Systems
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Services API
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Business as usual..
…for a technology startup
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Election Day – OFA Headquarters
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Typical Charts
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
How?
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
The old approach, even from Amazon
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
The old approach.. Might have some problems..
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
OFA’s Infrastructure
awsofa.info
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Ingredients
Ubuntu nginx boundary Unity jQuery SQLServer hbase NewRelic EC2 node.js Cybersource hive ElasticSearch Ruby Twilio EE S3 ELB boto Magento PHP EMR SES Route53 SimpleDB Campfire nagios Paypal CentOS CloudSearch levelDB mongoDB python securitygroups Usahidhi PostgresSQL Github apache bootstrap SNS OpsView Jekyll RoR EBS FPS VPC Mashery Vertica RDS Optimizely MySQL puppet tsunamiUDP R asgard cloudwatch ElastiCache cloudopt SQS cloudinit DirectConnect BSD rsync STS Objective-C DynamoDB
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Infrastructure, Configuration Management & Monitoring
Ubuntu nginx boundary Unity jQuery SQLServer hbase NewRelic EC2 node.js Cybersource hive ElasticSearch Ruby Twilio EE S3 ELB boto Magento PHP EMR SES Route53 SimpleDB Campfire nagios Paypal CentOS CloudSearch levelDB mongoDB python securitygroups Usahidhi PostgresSQL Github apache bootstrap SNS OpsView Jekyll RoR EBS FPS VPC Mashery Vertica RDS Optimizely MySQL puppet tsunamiUDP R asgard cloudwatch ElastiCache cloudopt SQS cloudinit DirectConnect BSD rsync STS Objective-C DynamoDB
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Configuration Management: Puppet
In mid-2011, we looked at options for configuration management and chose Puppet
We needed to make it scale, and to get it to work with state-less, horizontally scalable infrastructure
How did we do this?
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Bootstrapping Puppet with CloudInit
CloudInit is built into Ubuntu and Amazon Linux• Allows you to
pass bootstrap parameters in Amazon EC2 user-data field, in YAML format
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Bootstrapping Puppet with CloudInit
Don’t store creds in puppet manifests, store them in private Amazon S3 buckets
Either pass Amazon S3 creds through CloudInit:
Even better – avoid this by using AWS Identity and Access Management (IAM) roles and AWS Unified CLI’s S3 client
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Bootstrapping Puppet with CloudInit
Built-in puppet support
Use certname with %i for instance id to name the node
Puppetmaster must have auto sign turned on• Use security groups and/or NACLs for network-level security
In nodes.pp, use regex to match node names
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Puppet Tips
Use a base class to define your standard install
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Use runstages
Don’t store credentials in puppet, store them in private Amazon S3 buckets• Use AWS IAM to secure the credentials bucket/folders within that bucket
Puppet Tips
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Puppet Tips
Use puppet only for configuration files and what makes your apps unique
For undifferentiated parts of apps, use Amazon S3 backed RPM/Debian repositories• Can be either public or private repos, depending on your needs
• Amazon S3 Private RPM Repos: http://git.io/YAcsbg• Amazon S3 Private Debian Repos: http://git.io/ecCjWQ
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Puppet Tips
By using packages for applications deploys, you can set ensure => latest, and just bump the package in the repo to update
Log everything with rsyslog/graylog/loggly/NewRelic/splunk
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Scaling the Puppet Masters
Use an Auto Scaling group for puppet masters• Min size => 2, use multiple Availability Zones
Either have them build themselves off of existing puppet masters in the group or off packages stored in Amazon S3 and bootstrapped through user-data
Auto-sign must be on
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
One thing that is difficult to prepare for…
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
They had this built for the previous 3 months, all on the East Coast.
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
They had this built for the previous 3 months, all on the East Coast.
We built this part in 9 hours to be safe.
AWS +Puppet +
Netflix Asgard + WAN Optimization Software +
DevOps =
Cross-Continent Fault-Tolerance On-Demand
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
If OFA was run on AWS today, what might that look like?
Take advantage of OpsWorks• This would simplify configuration management
Use CloudFormation to recreate environments for prod/dev/test quicklyUtilize PostgreSQL RDS instead of the many manually installed PostgreSQL instancesAnalytics data warehouse took months to build, RedShift would take minutesDocker containers could be used to easily allow developers to replicate their dev environments in prod or stagingUse of immutable infrastructureMore use of CloudFront, resulting in less load on EC2 resources
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Mozilla FoundationCASE STUDY
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Webmaker.org circa 2012• Included Apps, non-SOA: Thimble, Popcorn, Goggles• ~20 pushes of new software in 2012• Operations and Development interacted mostly through bugzilla
tickets for deploys.• Hosting in physical datacenter at Mozilla
Webmaker.org circa early 2013• Deciding to go 12-factor, SOA in app layer• Weekly pushes of Popcorn on train model• Operations and Development interacted mostly through bugzilla
tickets for deploys.
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
April 2013
Webmaker begins rebuilding entire platformSOA, 12-factor in node.js exclusivelyMoving apps into AWS and DevOps / CI
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Since April 2013….Openbadges, Webmaker combine for: 1339 Pushes
Pushes Per Day to Staging / Prod
Pushes Per Day (Staging and Prod)
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Who?• ~30 Paid Developers • Hundreds of Students • Thousands of Contributors• One DevOps / Internet Jedi• Multiple Teams
How?• Puppet, Jenkins, Fabric• Tight feedback loops:
Newrelic, Opsview• Culture Shift
• Staging Envs• Brave devs iterate,
keeping work in-context• Visible Ops• Cross-train developers in
operations
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
What changed?
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
1) Know How You Were Doing Before
2) Know What Changed When
3) Know How You Are Now Doing
=
The confidence to try more things and try them faster, with minimum viable planning.
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Deployment
Pipeline
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS CLOUDFORMATION
STACK-BASED DEPLOYMENT SERVICE
CLOUDFORMATIONTEMPLATE
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
{ "Description" : "Create RDS with username and password", "Resources" : {
"MyDB" : { "Type" : "AWS::RDS::DBInstance", "Properties" : { "AllocatedStorage" : "500", "DBInstanceClass" : "db.m1.small", "Engine" : "MySQL", "EngineVersion" : "5.5", "MasterUsername" : "MyName", "MasterUserPassword" : "MyPassword" } } }}
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
"AWS::CloudFormation::Init" : { "config" : {
"packages" : { "yum" : { "mysql" : [], "mysql-server" : [], "httpd" : [], "php" : [], "php-mysql" : [] } }, "sources" : { "/var/www/html" : "https://s3.amazonaws.com/my-builds/build-v4.zip" } }
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
{ "Parameters" : { "KeyName" : { "Description" : "Name of an existing EC2 KeyPair to enable SSH access to the instance", "Type" : "String" } },}
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
CLOUDFORMATIONTEMPLATE
PROCEDURALDEFINITION
Create it programmatically
KNOWN CONFIGURATIONStore stack configuration in source control
PARAMETER DRIVEN
Dynamic and user-driven templates
COLLABORATIONShare templates with ease as just files
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
APPLICATIONVERSIONS
+INFRASTRUCTURE
VERSIONS
CLOUDFORMATION TEMPLATE
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
CASE STUDY
NASA/Jet Propulsion LaboratoryCalifornia Institute of Technology
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Mars Rover Landing by the #’s
NASA TV = HD stream, 1080p, ~1 mb/s per viewer
Expecting peak of ~1m viewers
All playback devices (iOS, Android, Flash, HTML5, blah)
Once in a lifetime moment in history (no crashy crashy)
FUN FUN FUN
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Mars Rover Landing by the #’s
NASA TV = HD stream, 1080p, ~1 mb/s per viewerExpecting peak of ~1m viewersAll playback devices (iOS, Android, Flash, HTML5, blah)Once in a lifetime moment in history (no crashy crashy)
NASA says we can’t use their live stream setupIt’s 6 days before the landingIt’s the same week as the OlympicsAvailable technical resources from JPL: Brett and Khawaja
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
The sticky wicket:
HD Video streamsize = 4mbnever changeseasy to cache
manifest.f4msize = 4kbNew every 4 seccaching difficult
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
The plan
Design a solution around our limits• Max connections to origin = 6• Max streams per cache node = 20• Local Latency = critical• US-WEST-1 capacity reserved for S3 static images
Test the snot out of it
Hang on!
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
TWO GUYS
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
ok, so one of them is a rocket scientist..
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Mars Science Laboratory - Live Video Streaming Architecture
“The 42 pack”
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
LOAD TESTING
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Battle Testing our DeploymentBenchmarking
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Dynamic Traffic ScalingUS-East Cache Node Performance25.3 Gbps
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
Only ~42Mbps
Dynamic Traffic ScalingImpact on US-East FMS Origin Servers
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
CONTINUOUS DEPLOYMENT
SMALL, FREQUENT CHANGES CONSTANTLY INTEGRATING INTO
PRODUCTION.
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
KEY = ITERATION
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
ITERATION=
MODIFY THE SYSTEM TO BETTER MEET THE EXPECTATIONS OF
YOUR USERS
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
11.6sMean time between
deployments (weekday)
1,079Max number of
deployments in a single hour
10,000Mean number of
hosts simultaneously
receiving a deployment
30,000Max number of
hosts simultaneously
receiving a deployment
DEPLOYMENTS AT AMAZON.COM
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
SOFTWARE DEPLOY
≠PRODUCT LAUNCH
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
1.5 BILLION PAGE VIEWS
OCTOBER 2012
$83 MILLION IN TRANSACTIONS4.2 MILLION ITEMS SOLD
CASE STUDY
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
30 DEPLOYS PER DAY1 DEPLOY EVERY 20 MINUTES
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
"Production is truly the only place you
can validate your code."
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
AWS OPSWORKSINTEGRATED APPLICATION
MANAGEMENT
AWS OPSWORKS UNDER THE HOOD
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
DATA-DRIVENARCHITECTURES
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
METRICS @ETSY
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014METRICS @OBAMA FOR AMERICA
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
COST-ORIENTED ARCHITECTURES
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
PHP+APACHE+VARNISH
NGINX+NODEJS
vs.
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
CONTINUOUS INTEGRATION
CONTINUOUS DEPLOYMENT
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
CONTINUOUS DEPLOYMENT
=
CONTINUOUS EXPERIMENTATION
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
CONTINUOUS DEPLOYMENT
=
CONTINUOUS IMPROVEMENT
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
INNOVATE
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
« Want to increase innovation? Lower the cost of failure »
Joi Ito
AWS Government, Education, and Nonprofits SymposiumWashington, DC | June 24, 2014 – June 26, 2014
SPEED AND AGILITY
Experiment Often
Fail quickly at a low cost
More Innovation
Experiment Infrequently
Failure is expensive
Less Innovation
“ON-PREMISE”
AWS Government, Education, and Nonprofits Symposium Washington, DC | June 24, 2014 - June 26, 2014
Q & A
AWS Government, Education, and Nonprofits Symposium Washington, DC | June 24, 2014 - June 26, 2014
aws.amazon.com/training
Expand your technical expertise to design, deploy, and operate
scalable, efficient applications on AWS
Training
aws.amazon.com/certification
Certification
20% off AWS Instructor-Led Training Class*• Code MK20PSSYM314 • Expires September 30, 2014
Get Savings on AWS Training!
* Discount only applies to classes delivered by AWS. Discount does not apply to classes delivered by an APN Training Partner.
aws.amazon.com/training/self-paced-labs
Self-Paced Labs
Get hands-on practice working with AWS technologies in a live environment
Validate your proven technical expertise
with the AWS platform
Expand your skills with AWS
AWS Government, Education, and Nonprofits Symposium Washington, DC | June 24, 2014 - June 26, 2014
AWS Government, Education, and Nonprofits Symposium Washington, DC | June 24, 2014 - June 26, 2014
DevOps on AWSContinuous Integration and Deployment Best Practices on AWS
Thank You
Leo Zhadanovsky, Senior Solutions Architect, AWS | @leozh JP Schneider, DevOps / Internet Jedi, Mozilla Foundation |
@jdotp