SlideShare a Scribd company logo
1 of 121
// Feed your brain            GR8Conf Europe 2012
       gr8.technologies.each{               June 6th-8th
         yourBrain << it             Copenhagen, Denmark
       }




The Grails App that Deploys Netflix to the Cloud


Joe Sondow, Netflix
   @joesondow #gr8conf
Slides online
http://slideshare.net/joesondow




   @joesondow #gr8conf
Agenda
Agenda
Who am I? Why am I here?
Agenda
Who am I? Why am I here?
Asgard, Screen shots
Agenda
Who am I? Why am I here?
Asgard, Screen shots
Netflix, Freedom and Responsibility
Agenda
Who am I? Why am I here?
Asgard, Screen shots
Netflix, Freedom and Responsibility
Regional URLs
Agenda
Who am I? Why am I here?
Asgard, Screen shots
Netflix, Freedom and Responsibility
Regional URLs
Cloud Deployment Model
Agenda
Who am I? Why am I here?
Asgard, Screen shots
Netflix, Freedom and Responsibility
Regional URLs
Cloud Deployment Model
Offline Development
Agenda
Who am I? Why am I here?
Asgard, Screen shots
Netflix, Freedom and Responsibility
Regional URLs
Cloud Deployment Model
Offline Development
Why not the AWS Console?
Who am I?




 @joesondow #gr8conf
Who am I?




 @joesondow #gr8conf
Who am I?
Joe Sondow




 @joesondow #gr8conf
Who am I?
Joe Sondow
Netflix since 2010




 @joesondow #gr8conf
Who am I?
Joe Sondow
Netflix since 2010
Asgard lead




 @joesondow #gr8conf
Who am I?
Joe Sondow
Netflix since 2010
Asgard lead
Grails




 @joesondow #gr8conf
Who am I?
Joe Sondow
Netflix since 2010
Asgard lead
Grails
jQuery




 @joesondow #gr8conf
Why am I here?




 @joesondow #gr8conf
Why am I here?
Why am I here?
Sell you something
Why am I here?
Sell you something
Discuss business plans
Why am I here?
Sell you something
Discuss business plans
Answer technical questions
Why am I here?
Sell you something
Discuss business plans
Answer technical questions
Be a smaller fish in AWS
Why am I here?
Sell you something
Discuss business plans
Answer technical questions
Be a smaller fish in AWS
Give back to community
Why am I here?
Sell you something
Discuss business plans
Answer technical questions
Be a smaller fish in AWS
Give back to community
Steal your engineers
Asgard
Asgard
Asgard
Screen shots
Asgard
Application list
Asgard
Auto Scaling Group list
Asgard
Cluster deployment, ready for fast rollback
Asgard
Asgard
Cloud deployment
Asgard
Cloud deployment
Cloud management
Asgard
Cloud deployment
Cloud management
Started 2010
Asgard
Cloud deployment
Cloud management
Started 2010
Open source in 2012
Asgard
Cloud deployment
Cloud management
Started 2010
Open source in 2012
  Follow @NetflixOSS
Asgard
Cloud deployment
Cloud management
Started 2010
Open source in 2012
   Follow @NetflixOSS
100’s of Jira tickets
Asgard
Cloud deployment
Cloud management
Started 2010
Open source in 2012
   Follow @NetflixOSS
100’s of Jira tickets
Actively developed
Joe Sondow          Clay McCoy        Jason Gritman
   @joesondow          @claymccoy        @jgritman




Asgard Team
June 2012
(The dolphin writes integration tests)
With more than 25 million streaming members in the
United States, Canada, Latin America, the United
Kingdom and Ireland, Netflix, Inc. (NASDAQ: NFLX) is
the world's leading internet subscription service for
enjoying movies and TV programs.
(from http://ir.netflix.com)
Freedom and Responsibility
Freedom and Responsibility
Freedom and Responsibility
Cloud SOA
Freedom and Responsibility
Cloud SOA
100’s of services
Freedom and Responsibility
Cloud SOA
100’s of services
Small teams
Freedom and Responsibility
Cloud SOA
100’s of services
Small teams
Independent releases
Freedom and Responsibility
Cloud SOA
100’s of services
Small teams
Independent releases
Controlled chaos
Regional URLs
Regional URLs
Let’s see some code
Regional URLs
Cloud object URLs were unique, conventional, intuitive




Default Grails URL mapping is excellent
Regional URLs
Later, Netflix needed to use multiple Amazon regions
Regional URLs
Region is another URL dimension




Add URL mapping, but don’t break existing links
Regional URLs




RegionService.groovy (excerpt)
Regional URLs




RegionService.groovy (excerpt)
Regional URLs
Some controllers should never be regional



RegionService detects RegionAgnostic annotation
Cloud deployment model
Cloud deployment model
Applications and Clusters
Cloud deployment model
Cloud deployment model

   Auto Scaling
      Group
Cloud deployment model

    Auto Scaling
       Group




    Launch
  Configuration
Cloud deployment model

                   Elastic Load
                     Balancer
    Auto Scaling
       Group




    Launch
  Configuration
Cloud deployment model

                    Elastic Load
                      Balancer
    Auto Scaling
       Group




    Launch
  Configuration

                   Amazon Machine
                       Image
Cloud deployment model

                    Elastic Load
                      Balancer
    Auto Scaling
       Group




                   Security
                    Group


    Launch
  Configuration

                   Amazon Machine
                       Image
Cloud deployment model

                    Elastic Load
                      Balancer
    Auto Scaling
       Group




                   Security
                                    Instances
                    Group


    Launch
  Configuration

                   Amazon Machine
                       Image
Cloud deployment model

                    Elastic Load
                      Balancer
    Auto Scaling
       Group




                   Security
                                    Instances
                    Group


    Launch
  Configuration

                   Amazon Machine
                       Image
Cloud deployment model

                    Elastic Load
                      Balancer
    Auto Scaling
       Group




                   Security
                                    Instances
                    Group


    Launch
  Configuration

                   Amazon Machine
                       Image
Cloud deployment model

                    Elastic Load
                      Balancer
    Auto Scaling
       Group




                   Security
                                    Instances
                    Group


    Launch
  Configuration

                   Amazon Machine
                       Image
Cloud deployment model
Cloud deployment model




                    Search
Cloud deployment model




            API     Search
Cloud deployment model

                     Ratings




            API     Search
Cloud deployment model
Streaming Starts
                          Ratings




                   API   Search
Cloud deployment model
Streaming Starts
                          Ratings




                   API   Search
Autocomplete
Cloud deployment model
                   Sign Up
Streaming Starts
                              Ratings




                     API     Search
Autocomplete
Cloud deployment model
                   Sign Up
Streaming Starts
                                   Ratings
                   Application
     Application

                                   Application



                      API        Search
Autocomplete


                   Application
   Application                   Application
Inventing the Application
Inventing the Application
 Problem:
 Application is not an Amazon concept


 Solution:
 Create an Application domain in SimpleDB
 Enforce naming conventions on Amazon objects
Fast Rollback
Fast Rollback
Optimism causes outages
Fast Rollback
Optimism causes outages
Production traffic is unique
Fast Rollback
Optimism causes outages
Production traffic is unique
Keep old version running
Fast Rollback
Optimism causes outages
Production traffic is unique
Keep old version running
Switch traffic to new version
Fast Rollback
Optimism causes outages
Production traffic is unique
Keep old version running
Switch traffic to new version
Monitor results
Fast Rollback
Optimism causes outages
Production traffic is unique
Keep old version running
Switch traffic to new version
Monitor results
Revert traffic quickly
Fast Rollback
Fast Rollback


                     api-frontend




   api-usprod-v007
Fast Rollback


                     api-frontend




   api-usprod-v007                  api-usprod-v008
Fast Rollback


                     api-frontend




   api-usprod-v007                  api-usprod-v008
Fast Rollback


                     api-frontend




   api-usprod-v007                  api-usprod-v008
Fast Rollback


                     api-frontend




   api-usprod-v007                  api-usprod-v008
Fast Rollback


                     api-frontend




   api-usprod-v007
Inventing the Cluster
Inventing the Cluster
 Problem:
 Two ASGs with one function but different names


 Solution:
 Append version number in reserved format
 Parse ASG name to determine long-term “cluster”
Inventing the Cluster
Instead of keeping a database in sync, use naming
conventions to store the source in truth in Amazon’s API

api                  Application
api-usprod           Cluster
api-usprod-v007      Auto Scaling Group
api-usprod-v008      Auto Scaling Group
Offline Development
Offline Development
Makes on a plane
Offline Development
Mock data
Mock behavior
System property switch offline=true
Mock Data
http://asgardprod/us-east-1/autoScaling/list.json
Mock Data
Parse JSON
Mock Behavior
Override Amazon Java client methods
System Property
grails run-app -Doffline=true
Why not the AWS console?
Why not the AWS console?
No, not to keep me busy
Why not the AWS console?
Why not the AWS console?
Why not the AWS console?
Hide keys
Why not the AWS console?
Hide keys
Customize model
Why not the AWS console?
Hide keys
Customize model
Enforce conventions
Why not the AWS console?
Hide keys
Customize model
Enforce conventions
Automate workflow
Why not the AWS console?
Hide keys
Customize model
Enforce conventions
Automate workflow
Log changes
Why not the AWS console?
Hide keys
Customize model
Enforce conventions
Automate workflow
Log changes
Integrate systems
Why not the AWS console?
Hide keys
Customize model
Enforce conventions
Automate workflow
Log changes
Integrate systems
Create REST API
@NetflixOSS
@NetflixOSS
http://techblog.netflix.com
@NetflixOSS
http://techblog.netflix.com
Open source announcement...
@NetflixOSS
http://techblog.netflix.com
Open source announcement...
@NetflixOSS

Thank you
@NetflixOSS

Thank you
Questions?



  @joesondow
  slideshare.net/joesondow
  linkedin.com/in/joesondow

More Related Content

What's hot

Netflix in the Cloud at SV Forum
Netflix in the Cloud at SV ForumNetflix in the Cloud at SV Forum
Netflix in the Cloud at SV ForumAdrian Cockcroft
 
Netflix Velocity Conference 2011
Netflix Velocity Conference 2011Netflix Velocity Conference 2011
Netflix Velocity Conference 2011Adrian Cockcroft
 
Gluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
Gluecon 2013 - NetflixOSS Cloud Native Tutorial IntroductionGluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
Gluecon 2013 - NetflixOSS Cloud Native Tutorial IntroductionAdrian Cockcroft
 
Cloud Architecture Tutorial - Running in the Cloud (3of3)
Cloud Architecture Tutorial - Running in the Cloud (3of3)Cloud Architecture Tutorial - Running in the Cloud (3of3)
Cloud Architecture Tutorial - Running in the Cloud (3of3)Adrian Cockcroft
 
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...Adrian Cockcroft
 
Netflix Global Cloud Architecture
Netflix Global Cloud ArchitectureNetflix Global Cloud Architecture
Netflix Global Cloud ArchitectureAdrian Cockcroft
 
AWS Re:Invent - High Availability Architecture at Netflix
AWS Re:Invent - High Availability Architecture at NetflixAWS Re:Invent - High Availability Architecture at Netflix
AWS Re:Invent - High Availability Architecture at NetflixAdrian Cockcroft
 
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...Amazon Web Services
 
Netflix Architecture Tutorial at Gluecon
Netflix Architecture Tutorial at GlueconNetflix Architecture Tutorial at Gluecon
Netflix Architecture Tutorial at GlueconAdrian Cockcroft
 
AWS FIS の実験テンプレートを書いてみよう!!
AWS FIS の実験テンプレートを書いてみよう!!AWS FIS の実験テンプレートを書いてみよう!!
AWS FIS の実験テンプレートを書いてみよう!!政雄 金森
 
ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...
ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...
ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...Amazon Web Services
 
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012Amazon Web Services
 
AWS 101: Cloud Computing Seminar (2012)
AWS 101: Cloud Computing Seminar (2012)AWS 101: Cloud Computing Seminar (2012)
AWS 101: Cloud Computing Seminar (2012)Amazon Web Services
 
Building Fault Tolerant Applications in the cloud - AWS Summit 2012 - NYC
Building Fault Tolerant Applications in the cloud - AWS Summit 2012 - NYC Building Fault Tolerant Applications in the cloud - AWS Summit 2012 - NYC
Building Fault Tolerant Applications in the cloud - AWS Summit 2012 - NYC Amazon Web Services
 
Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...
Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...
Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...Amazon Web Services
 
AWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh Varia
AWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh VariaAWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh Varia
AWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh VariaAmazon Web Services
 
Overview of Amazon Web Services
Overview of Amazon Web ServicesOverview of Amazon Web Services
Overview of Amazon Web ServicesHarish Ganesan
 

What's hot (20)

Netflix in the Cloud at SV Forum
Netflix in the Cloud at SV ForumNetflix in the Cloud at SV Forum
Netflix in the Cloud at SV Forum
 
Netflix Velocity Conference 2011
Netflix Velocity Conference 2011Netflix Velocity Conference 2011
Netflix Velocity Conference 2011
 
Gluecon keynote
Gluecon keynoteGluecon keynote
Gluecon keynote
 
Gluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
Gluecon 2013 - NetflixOSS Cloud Native Tutorial IntroductionGluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
Gluecon 2013 - NetflixOSS Cloud Native Tutorial Introduction
 
NetflixOSS Meetup
NetflixOSS MeetupNetflixOSS Meetup
NetflixOSS Meetup
 
Cloud Architecture Tutorial - Running in the Cloud (3of3)
Cloud Architecture Tutorial - Running in the Cloud (3of3)Cloud Architecture Tutorial - Running in the Cloud (3of3)
Cloud Architecture Tutorial - Running in the Cloud (3of3)
 
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
CMG2013 Workshop: Netflix Cloud Native, Capacity, Performance and Cost Optimi...
 
Netflix Global Cloud Architecture
Netflix Global Cloud ArchitectureNetflix Global Cloud Architecture
Netflix Global Cloud Architecture
 
AWS Re:Invent - High Availability Architecture at Netflix
AWS Re:Invent - High Availability Architecture at NetflixAWS Re:Invent - High Availability Architecture at Netflix
AWS Re:Invent - High Availability Architecture at Netflix
 
Netflix in the Cloud
Netflix in the CloudNetflix in the Cloud
Netflix in the Cloud
 
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...
AWS re:Invent 2016: Scaling Your Web Applications with AWS Elastic Beanstalk ...
 
Netflix Architecture Tutorial at Gluecon
Netflix Architecture Tutorial at GlueconNetflix Architecture Tutorial at Gluecon
Netflix Architecture Tutorial at Gluecon
 
AWS FIS の実験テンプレートを書いてみよう!!
AWS FIS の実験テンプレートを書いてみよう!!AWS FIS の実験テンプレートを書いてみよう!!
AWS FIS の実験テンプレートを書いてみよう!!
 
ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...
ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...
ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...
 
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
 
AWS 101: Cloud Computing Seminar (2012)
AWS 101: Cloud Computing Seminar (2012)AWS 101: Cloud Computing Seminar (2012)
AWS 101: Cloud Computing Seminar (2012)
 
Building Fault Tolerant Applications in the cloud - AWS Summit 2012 - NYC
Building Fault Tolerant Applications in the cloud - AWS Summit 2012 - NYC Building Fault Tolerant Applications in the cloud - AWS Summit 2012 - NYC
Building Fault Tolerant Applications in the cloud - AWS Summit 2012 - NYC
 
Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...
Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...
Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...
 
AWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh Varia
AWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh VariaAWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh Varia
AWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh Varia
 
Overview of Amazon Web Services
Overview of Amazon Web ServicesOverview of Amazon Web Services
Overview of Amazon Web Services
 

Similar to Asgard, the Grails App that Deploys Netflix to the Cloud

Best practices for enterprise-grade microservices implementations with Google...
Best practices for enterprise-grade microservices implementations with Google...Best practices for enterprise-grade microservices implementations with Google...
Best practices for enterprise-grade microservices implementations with Google...Grid Dynamics
 
Cloud and microservices on the enterprise level: Dynamic Talks Portland 5/16/...
Cloud and microservices on the enterprise level: Dynamic Talks Portland 5/16/...Cloud and microservices on the enterprise level: Dynamic Talks Portland 5/16/...
Cloud and microservices on the enterprise level: Dynamic Talks Portland 5/16/...Grid Dynamics
 
Cloud and microservices on the enterprise level: Dynamic talks Dallas 3/26/2019
Cloud and microservices on the enterprise level: Dynamic talks Dallas 3/26/2019Cloud and microservices on the enterprise level: Dynamic talks Dallas 3/26/2019
Cloud and microservices on the enterprise level: Dynamic talks Dallas 3/26/2019Grid Dynamics
 
AWS Webcast - What is Cloud Computing with AWS
AWS Webcast - What is Cloud Computing with AWSAWS Webcast - What is Cloud Computing with AWS
AWS Webcast - What is Cloud Computing with AWSAmazon Web Services
 
AWS Webinar: What is Cloud Computing? November 2013
AWS Webinar: What is Cloud Computing?  November 2013AWS Webinar: What is Cloud Computing?  November 2013
AWS Webinar: What is Cloud Computing? November 2013Amazon Web Services
 
AWS re:Invent 2016 recap (part 2)
AWS re:Invent 2016 recap (part 2) AWS re:Invent 2016 recap (part 2)
AWS re:Invent 2016 recap (part 2) Julien SIMON
 
AWS Webcast - Best Practices in Architecting for the Cloud
AWS Webcast - Best Practices in Architecting for the CloudAWS Webcast - Best Practices in Architecting for the Cloud
AWS Webcast - Best Practices in Architecting for the CloudAmazon Web Services
 
LAST Conference - Dev-Ops and Continuous Delivery
LAST Conference - Dev-Ops and Continuous DeliveryLAST Conference - Dev-Ops and Continuous Delivery
LAST Conference - Dev-Ops and Continuous DeliveryNigel Fernandes
 
Architecting for the Cloud: Best Practices
Architecting for the Cloud: Best PracticesArchitecting for the Cloud: Best Practices
Architecting for the Cloud: Best PracticesAmazon Web Services
 
How to Determine If You Are Well Architected for Resiliency (or How I Learned...
How to Determine If You Are Well Architected for Resiliency (or How I Learned...How to Determine If You Are Well Architected for Resiliency (or How I Learned...
How to Determine If You Are Well Architected for Resiliency (or How I Learned...Amazon Web Services
 
Architecting Cloud Apps
Architecting Cloud AppsArchitecting Cloud Apps
Architecting Cloud Appsjineshvaria
 
Continuous Delivery in the AWS Cloud
Continuous Delivery in the AWS CloudContinuous Delivery in the AWS Cloud
Continuous Delivery in the AWS CloudNigel Fernandes
 
Continuous Delivery in the Cloud
Continuous Delivery in the CloudContinuous Delivery in the Cloud
Continuous Delivery in the CloudFabio Lessa
 
How to Determine if You Are Well-Architected for Reliability
How to Determine if You Are Well-Architected for ReliabilityHow to Determine if You Are Well-Architected for Reliability
How to Determine if You Are Well-Architected for ReliabilityAmazon Web Services
 
Best Practices for Architecting in the Cloud - Jeff Barr
Best Practices for Architecting in the Cloud - Jeff BarrBest Practices for Architecting in the Cloud - Jeff Barr
Best Practices for Architecting in the Cloud - Jeff BarrAmazon Web Services
 
Day 2 - Amazon EC2 Masterclass - Getting the most from Amazon EC2
Day 2 - Amazon EC2 Masterclass - Getting the most from Amazon EC2Day 2 - Amazon EC2 Masterclass - Getting the most from Amazon EC2
Day 2 - Amazon EC2 Masterclass - Getting the most from Amazon EC2Amazon Web Services
 
Security Automation: Spend Less Time Securing Your Applications.
Security Automation: Spend Less Time Securing Your Applications.Security Automation: Spend Less Time Securing Your Applications.
Security Automation: Spend Less Time Securing Your Applications.Amazon Web Services
 
Immutable infrastructure tsap_v2
Immutable infrastructure tsap_v2Immutable infrastructure tsap_v2
Immutable infrastructure tsap_v2Volodymyr Tsap
 

Similar to Asgard, the Grails App that Deploys Netflix to the Cloud (20)

Best practices for enterprise-grade microservices implementations with Google...
Best practices for enterprise-grade microservices implementations with Google...Best practices for enterprise-grade microservices implementations with Google...
Best practices for enterprise-grade microservices implementations with Google...
 
Cloud and microservices on the enterprise level: Dynamic Talks Portland 5/16/...
Cloud and microservices on the enterprise level: Dynamic Talks Portland 5/16/...Cloud and microservices on the enterprise level: Dynamic Talks Portland 5/16/...
Cloud and microservices on the enterprise level: Dynamic Talks Portland 5/16/...
 
Cloud and microservices on the enterprise level: Dynamic talks Dallas 3/26/2019
Cloud and microservices on the enterprise level: Dynamic talks Dallas 3/26/2019Cloud and microservices on the enterprise level: Dynamic talks Dallas 3/26/2019
Cloud and microservices on the enterprise level: Dynamic talks Dallas 3/26/2019
 
AWS Webcast - What is Cloud Computing with AWS
AWS Webcast - What is Cloud Computing with AWSAWS Webcast - What is Cloud Computing with AWS
AWS Webcast - What is Cloud Computing with AWS
 
AWS Webinar: What is Cloud Computing? November 2013
AWS Webinar: What is Cloud Computing?  November 2013AWS Webinar: What is Cloud Computing?  November 2013
AWS Webinar: What is Cloud Computing? November 2013
 
AWS re:Invent 2016 recap (part 2)
AWS re:Invent 2016 recap (part 2) AWS re:Invent 2016 recap (part 2)
AWS re:Invent 2016 recap (part 2)
 
AWS Webcast - Best Practices in Architecting for the Cloud
AWS Webcast - Best Practices in Architecting for the CloudAWS Webcast - Best Practices in Architecting for the Cloud
AWS Webcast - Best Practices in Architecting for the Cloud
 
LAST Conference - Dev-Ops and Continuous Delivery
LAST Conference - Dev-Ops and Continuous DeliveryLAST Conference - Dev-Ops and Continuous Delivery
LAST Conference - Dev-Ops and Continuous Delivery
 
Architecting for the Cloud: Best Practices
Architecting for the Cloud: Best PracticesArchitecting for the Cloud: Best Practices
Architecting for the Cloud: Best Practices
 
From Development to Production
From Development to ProductionFrom Development to Production
From Development to Production
 
How to Determine If You Are Well Architected for Resiliency (or How I Learned...
How to Determine If You Are Well Architected for Resiliency (or How I Learned...How to Determine If You Are Well Architected for Resiliency (or How I Learned...
How to Determine If You Are Well Architected for Resiliency (or How I Learned...
 
Automate your serverless stack
Automate your serverless stack Automate your serverless stack
Automate your serverless stack
 
Architecting Cloud Apps
Architecting Cloud AppsArchitecting Cloud Apps
Architecting Cloud Apps
 
Continuous Delivery in the AWS Cloud
Continuous Delivery in the AWS CloudContinuous Delivery in the AWS Cloud
Continuous Delivery in the AWS Cloud
 
Continuous Delivery in the Cloud
Continuous Delivery in the CloudContinuous Delivery in the Cloud
Continuous Delivery in the Cloud
 
How to Determine if You Are Well-Architected for Reliability
How to Determine if You Are Well-Architected for ReliabilityHow to Determine if You Are Well-Architected for Reliability
How to Determine if You Are Well-Architected for Reliability
 
Best Practices for Architecting in the Cloud - Jeff Barr
Best Practices for Architecting in the Cloud - Jeff BarrBest Practices for Architecting in the Cloud - Jeff Barr
Best Practices for Architecting in the Cloud - Jeff Barr
 
Day 2 - Amazon EC2 Masterclass - Getting the most from Amazon EC2
Day 2 - Amazon EC2 Masterclass - Getting the most from Amazon EC2Day 2 - Amazon EC2 Masterclass - Getting the most from Amazon EC2
Day 2 - Amazon EC2 Masterclass - Getting the most from Amazon EC2
 
Security Automation: Spend Less Time Securing Your Applications.
Security Automation: Spend Less Time Securing Your Applications.Security Automation: Spend Less Time Securing Your Applications.
Security Automation: Spend Less Time Securing Your Applications.
 
Immutable infrastructure tsap_v2
Immutable infrastructure tsap_v2Immutable infrastructure tsap_v2
Immutable infrastructure tsap_v2
 

Recently uploaded

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 

Recently uploaded (20)

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

Asgard, the Grails App that Deploys Netflix to the Cloud

Editor's Notes

  1. \n
  2. \n
  3. Asgard is a Grails application used by Netflix engineers to deploy code changes and manage resources in the Amazon cloud on a massive scale. This presentation will include slides and discussion about aspects of Asgard from both the user and developer points of view.\n\nThe Netflix cloud model of Applications and Clusters built on top of Amazon building blocks\nAsgard&amp;#x2019;s process for large deployments and fast rollback\nOpen sourcing Asgard on github in 2012\nComparison with the AWS Management Console\nTour of the user interface\nPublishing a REST interface API for other tools to call Asgard\nEnhancing Grails URLs to add region-specificity\nUsing external configuration to pull Netflix-specific details out of Asgard\nStoring metadata on cloud objects instead of a database\nUsing closures to help cache massive cloud metadata for multiple Amazon regions\nTango open source icons to improve the user experience\nJavaScript filters for large list pages and drop-downs\nMocking the AWS back-end for offline automated testing\n
  4. Asgard is a Grails application used by Netflix engineers to deploy code changes and manage resources in the Amazon cloud on a massive scale. This presentation will include slides and discussion about aspects of Asgard from both the user and developer points of view.\n\nThe Netflix cloud model of Applications and Clusters built on top of Amazon building blocks\nAsgard&amp;#x2019;s process for large deployments and fast rollback\nOpen sourcing Asgard on github in 2012\nComparison with the AWS Management Console\nTour of the user interface\nPublishing a REST interface API for other tools to call Asgard\nEnhancing Grails URLs to add region-specificity\nUsing external configuration to pull Netflix-specific details out of Asgard\nStoring metadata on cloud objects instead of a database\nUsing closures to help cache massive cloud metadata for multiple Amazon regions\nTango open source icons to improve the user experience\nJavaScript filters for large list pages and drop-downs\nMocking the AWS back-end for offline automated testing\n
  5. Asgard is a Grails application used by Netflix engineers to deploy code changes and manage resources in the Amazon cloud on a massive scale. This presentation will include slides and discussion about aspects of Asgard from both the user and developer points of view.\n\nThe Netflix cloud model of Applications and Clusters built on top of Amazon building blocks\nAsgard&amp;#x2019;s process for large deployments and fast rollback\nOpen sourcing Asgard on github in 2012\nComparison with the AWS Management Console\nTour of the user interface\nPublishing a REST interface API for other tools to call Asgard\nEnhancing Grails URLs to add region-specificity\nUsing external configuration to pull Netflix-specific details out of Asgard\nStoring metadata on cloud objects instead of a database\nUsing closures to help cache massive cloud metadata for multiple Amazon regions\nTango open source icons to improve the user experience\nJavaScript filters for large list pages and drop-downs\nMocking the AWS back-end for offline automated testing\n
  6. Asgard is a Grails application used by Netflix engineers to deploy code changes and manage resources in the Amazon cloud on a massive scale. This presentation will include slides and discussion about aspects of Asgard from both the user and developer points of view.\n\nThe Netflix cloud model of Applications and Clusters built on top of Amazon building blocks\nAsgard&amp;#x2019;s process for large deployments and fast rollback\nOpen sourcing Asgard on github in 2012\nComparison with the AWS Management Console\nTour of the user interface\nPublishing a REST interface API for other tools to call Asgard\nEnhancing Grails URLs to add region-specificity\nUsing external configuration to pull Netflix-specific details out of Asgard\nStoring metadata on cloud objects instead of a database\nUsing closures to help cache massive cloud metadata for multiple Amazon regions\nTango open source icons to improve the user experience\nJavaScript filters for large list pages and drop-downs\nMocking the AWS back-end for offline automated testing\n
  7. Asgard is a Grails application used by Netflix engineers to deploy code changes and manage resources in the Amazon cloud on a massive scale. This presentation will include slides and discussion about aspects of Asgard from both the user and developer points of view.\n\nThe Netflix cloud model of Applications and Clusters built on top of Amazon building blocks\nAsgard&amp;#x2019;s process for large deployments and fast rollback\nOpen sourcing Asgard on github in 2012\nComparison with the AWS Management Console\nTour of the user interface\nPublishing a REST interface API for other tools to call Asgard\nEnhancing Grails URLs to add region-specificity\nUsing external configuration to pull Netflix-specific details out of Asgard\nStoring metadata on cloud objects instead of a database\nUsing closures to help cache massive cloud metadata for multiple Amazon regions\nTango open source icons to improve the user experience\nJavaScript filters for large list pages and drop-downs\nMocking the AWS back-end for offline automated testing\n
  8. Asgard is a Grails application used by Netflix engineers to deploy code changes and manage resources in the Amazon cloud on a massive scale. This presentation will include slides and discussion about aspects of Asgard from both the user and developer points of view.\n\nThe Netflix cloud model of Applications and Clusters built on top of Amazon building blocks\nAsgard&amp;#x2019;s process for large deployments and fast rollback\nOpen sourcing Asgard on github in 2012\nComparison with the AWS Management Console\nTour of the user interface\nPublishing a REST interface API for other tools to call Asgard\nEnhancing Grails URLs to add region-specificity\nUsing external configuration to pull Netflix-specific details out of Asgard\nStoring metadata on cloud objects instead of a database\nUsing closures to help cache massive cloud metadata for multiple Amazon regions\nTango open source icons to improve the user experience\nJavaScript filters for large list pages and drop-downs\nMocking the AWS back-end for offline automated testing\n
  9. Asgard is a Grails application used by Netflix engineers to deploy code changes and manage resources in the Amazon cloud on a massive scale. This presentation will include slides and discussion about aspects of Asgard from both the user and developer points of view.\n\nThe Netflix cloud model of Applications and Clusters built on top of Amazon building blocks\nAsgard&amp;#x2019;s process for large deployments and fast rollback\nOpen sourcing Asgard on github in 2012\nComparison with the AWS Management Console\nTour of the user interface\nPublishing a REST interface API for other tools to call Asgard\nEnhancing Grails URLs to add region-specificity\nUsing external configuration to pull Netflix-specific details out of Asgard\nStoring metadata on cloud objects instead of a database\nUsing closures to help cache massive cloud metadata for multiple Amazon regions\nTango open source icons to improve the user experience\nJavaScript filters for large list pages and drop-downs\nMocking the AWS back-end for offline automated testing\n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. \n
  79. \n
  80. \n
  81. \n
  82. \n
  83. \n
  84. \n
  85. \n
  86. \n
  87. \n
  88. \n
  89. \n
  90. \n
  91. \n
  92. \n
  93. \n
  94. \n
  95. \n
  96. \n
  97. \n
  98. \n
  99. \n
  100. \n
  101. \n
  102. \n
  103. \n
  104. \n
  105. \n
  106. \n
  107. \n
  108. \n
  109. \n
  110. \n
  111. \n
  112. \n
  113. \n
  114. \n
  115. \n
  116. \n
  117. \n
  118. \n
  119. \n
  120. \n
  121. \n
  122. \n
  123. \n
  124. \n
  125. \n
  126. \n
  127. \n
  128. \n
  129. \n
  130. \n
  131. \n
  132. \n
  133. \n
  134. \n
  135. \n
  136. \n
  137. \n
  138. \n
  139. \n
  140. \n
  141. \n
  142. \n
  143. \n
  144. \n
  145. \n
  146. \n
  147. \n
  148. \n
  149. \n
  150. \n
  151. \n
  152. \n
  153. \n
  154. \n
  155. \n
  156. \n
  157. \n
  158. \n
  159. \n
  160. \n
  161. \n
  162. \n
  163. \n
  164. \n
  165. \n
  166. \n
  167. \n
  168. \n
  169. \n
  170. \n
  171. \n
  172. \n
  173. \n
  174. \n
  175. \n
  176. \n
  177. \n
  178. \n
  179. \n
  180. \n
  181. \n
  182. \n
  183. \n
  184. \n