cloud roundtable | amazon web services: key = iteration
TRANSCRIPT
Key = Iteration! !!Danilo Poccia!Technical Evangelist, Amazon Web Services! @danilop!!
Access Control
Infrastructure Regions Availability Zones Points of Presence
Usage Auditing
Monitoring and Logs
Enterprise Applications Virtual Desktops Sharing & Collaboration
Core Services
Storage (Object, Block and Archival)
Compute (VMs, Auto-scaling and Load Balancing)
Databases (Relational, NoSQL, Caching)
Administration & Security
Key Storage
Platform Services
Deployment & Management
One-click web app deployment
Dev/ops resource management
Resource Templates Push
Notifications
Mobile Services
Identity
Sync
Mobile Analytics
App Services Queuing & Notifications
Workflow
App streaming
Transcoding
Search
Analytics
Hadoop
Data warehouse
Data Pipelines
Networking (VPC, DX, DNS)
Real-time Streaming Data
Identity Management
CDN
2008 2009 2010 2011 2012 2013 2014
Over 1 million active
customers
“Active customer” is defined as a non-Amazon customer with AWS account usage activity in the past month, including the free tier
Transformation Across Virtually Every Industry!
Storage Music Hotels
Three Steps to Agility
Experiment continuously
#1
Three Steps to Agility
Experiment continuously
Measure relentlessly
#2 #1
Three Steps to Agility
Experiment continuously
Measure relentlessly
Learn
#3 #2 #1
Key = Iteration
Iteration!=!
Modify The System To Better Meet!The Expectations Of Your Users
AWS ELASTIC BEANSTALK
QUICKLY DEPLOY AND MANAGE APPLICATIONS
Deploy Your Backend Application
Production Environment
Test Environment
master branch
test branch
git commit
git aws.push
git aws.push
Swap URLs
mvn clean install
aws s3 cp my.war s3://bucket/key
aws elasticbeanstalk create-application-version --application-name CodemotionDemo --version-label ”New Release” --source-bundle S3Bucket=bucket,S3Key=key
aws elasticbeanstalk update-environment --environment-name "codemotiondemo” --version-label ”New Release”
mkdir HelloWorldcd HelloWorldeb init -p PHP -r eu-west-1echo "Hello World" > index.htmleb create codemotion-phpeb open
AWS OPSWORKS MODEL AND MANAGE
THE ENTIRE APPLICATION
STACKS
LAYERS
INSTANCES
APPS
LIFE CYCLE EVENTS
AWS CLOUDFORMATION
INFRASTRUCTURE IS CODE
CLOUDFORMATION TEMPLATE
APPLICATION VERSIONS
+ INFRASTRUCTURE
VERSIONS
CLOUDFORMATION TEMPLATE
Develop!
Monitor &!Analyze!
Deploy!
Build &!Test!
Develop!
Monitor &!Analyze!
Deploy!
Build &!Test!
Can we accelerate this cycle further?!!!
Can we accelerate this cycle further?!!
We Looked Internally to How!We Build & Deploy Software at Amazon
Pushed 50 million deployments in the last 12 months (95 every minute)
Amazon’s deployment service (Apollo)
Pushed 50 million deployments in the last 12 months (95 every minute)
Amazon’s deployment service (Apollo)
We’re making this experience available to everyone…
AWS CodeDeploy
A fully managed, high-scale code deployment service
Develop!
Monitor &!Analyze!
Deploy!
Build &!Test!
AWS!CodeCommit!
More AWS!Tools!
AWS!CodeDeploy!
AWS!CodePipeline!
What are the primitives of an application?
What are the primitives of an application?
Interactions Communicated
via events
Functions Data
What are the primitives of an application?
Interactions Communicated
via events
Functions Data
The Magic Happens at the Intersection of Functions, Events and Data (Pretty much everything else is glue or UI)
AWS Lambda
A Focus on Functions, Data and Events
AWS Lambda
A Focus on Functions, Data and Events
Events from AWS services
AWS Lambda
A Focus on Functions, Data and Events
Cloud Functions Events from AWS services
AWS Lambda
A Focus on Functions, Data and Events
Automatic Cloud Functions Events from AWS services
AWS Lambda
Events Come in Many Different Shapes and Sizes
S3 event notifications
DynamoDB Streams
Kinesis events
Custom events
AWS Lambda
How Can You Put AWS Lambda to Work?
Data triggers Stream processing Indexing & synchronization
Server-free back-end
IoT
AWS Lambda
Let's see an example with a mobile app…
AWS Lambda
Let's see an example with a mobile app…
Photo bucket S3
Metadata DynamoDB
AWS Lambda
Let's see an example with a mobile app…
Photo bucket S3
Metadata DynamoDB
AWS Lambda
Let's see an example with a mobile app…
Photo bucket S3
Metadata DynamoDB
Extract metadata Cloud Function
AWS Lambda
Let's see an example with a mobile app…
Trending DynamoDB
Photo bucket S3
Metadata DynamoDB
Trending Cloud Function
Extract metadata Cloud Function
AWS Lambda
Let's see an example with a mobile app…
Notify Cloud Function
Trending DynamoDB
Photo bucket S3
Metadata DynamoDB
Trending Cloud Function
Extract metadata Cloud Function
AWS Lambda
Let's see an example with a mobile app…
Notify Cloud Function
Trending DynamoDB
Photo bucket S3
Metadata DynamoDB
SNS
Trending Cloud Function
Extract metadata Cloud Function
: )
Push Notification
=!Programmable Platform
If You Can Program It!You Can Automate It
“Developers are content creators”
What Happens When You Separate!the Act of Creation from Concerns!about Production & Distribution?
Ben Golub CEO, Docker
Innovate
Thank You! !!Danilo Poccia!Technical Evangelist, Amazon Web Services! @danilop!!