SlideShare a Scribd company logo
1 of 33
Wunderful Infrastructure
Alex Koppell & Mark Bate, 6Wunderkinder
Alex Koppel
Wunderkind, Development
Mark Bate
Wunderkind, Operations
Wunderlist


•   Cloud-based task manager

•   Cross-platform (11 so far)

•   Friendly, intuitive design

•   Easy sharing w/ friends &
    coworkers
Wunderkit


•   Ruby on Rails (single app)

•   MongoDB

•   Redis

•   Hosted on PaaS
Development
Wunderlist


•   Code Igniter (PHP)

•   MySQL

•   Redis

•   Hosted in AWS
Wunderkit


•   Cloud-based collaboration
    app

•   Cross-platform

•   Focus on teams and
    projects
Operations
Wunderlist Servers

•   Ubuntu on EC2

    •   Apache + PHP for sync

    •   Nginx + FPM + PHP for
        web app

•   Redis on EC2 + EBS

•   MySQL on RDS
Wunderlist Development


•   OS X Lion on MacBook Airs

•   Apache + PHP + MySQL +
    Redis

•   System? Homebrew?
    MAMP? Manual?
Wunderkit Servers

•   Ubuntu on PaaS

•   Nginx + Passenger + Rails

•   Redis

•   MongoDB

•   Infrastructure built thru YAML &
    shell scripts
Wunderkit Development



•   OS X Lion on MacBook Airs

•   Apache + Passenger + Rails

•   Homebrew? RVM? Rbenv?
So that means...

•2   Applications...

•2   Languages...

•2   Infrastructures...

• Manually   managed developer environments...

• Crazy!!!
Finding Wunderland
Goals



•   Highly available

•   Ability to scale easily

•   Flexible
Wonderful Code

•   Service-Oriented Architecture

•   Multiple specialised services

    •   Rails and Node.js initially

    •   MongoDB & Redis initially

•   Communication via asynchronous
    messaging
Complicated!


•   SOA is complicated

•   Requires rock-solid setup

    •   Consistency across
        environments

    •   Sanely manageable
The Way It Should Be
Servers                       Development


•   Ubuntu 12.04 LTS          •   Ubuntu 12.04 LTS

•   Nginx                     •   Nginx

•   Unicorn                   •   Unicorn

•   Ruby 1.9.2                •   Ruby 1.9.2

•   Rails 3.1                 •   Rails 3.1

•   MongoDB                   •   MongoDB

•   Redis                     •   Redis
Wunderful Infrastructure



•   Configuration Management - Chef

•   Infrastructure as Code

•   Virtualisation - VirtualBox + Vagrant
CHEF

•   Deployment & configuration management

•   Write Recipes as part of Cookbooks, which are applied through Roles.

•   Ruby-based = Developers can write cookbooks ;)

•   Client-Server or Solo (standalone) modes

•   Similar to Elastic Beanstalk, Puppet, Babushka, CFEngine

•   http://www.opscode.com/chef
Infrastructure as Code


•   Define packages & their configurations in code

    •   Visibility

    •   Editable

    •   Testable

    •   Version Controlled
The Cloud!




   Ubuntu 12.04 AMI        $ ec2-run-instances               EC2
(virtual machine image,                           (virtual machine instance
     stored on EBS)                              running on AWS hardware)
Configuration Management
                                    (Servers)

 Librarian-Chef
     Librarian gem,
 used  as  a  “Bundler”  for  
    Chef cookbooks


  Download
 cookbooks
from remote




                                 Upload cookbooks,
                                  roles & data bags   Chef Server running on
 Developer’s  terminal                                     EC2 + EBS
manages EC2 nodes &
   Chef repository
Configuration Management
                                      (Servers)


                         Boot EC2 instance(s) with role(s)



                                                              EC2 instance(s)
 Developer’s  terminal
manages EC2 nodes &
   Chef repository                                                      EC2 server downloads &
                                                                        runs cookbooks required
                                                                              to fulfil role(s)




                                                             Chef Server running on
                                                                  EC2 + EBS
Virtualise!


•   VirtualBox

    •   Oracle’s  open  source  VM  software,  similar  to  VMWare,  Parallels,  etc.

    •   http://www.virtualbox.org

•   Vagrant

    •   Ruby gem, adds in useful features on top of VirtualBox

    •   http://vagrantup.com
Virtualisation
                                   (Development)




                            Vagrant


                         Ruby gem, provides
Ubuntu 12.04 image                                  VirtualBox
                         useful extensions for                   Developer’s  MacBook  Air
  (stored in S3)                                     instance
                     provisioning and configuring
Configuration Management
             (Servers)

        Librarian-Chef
             Librarian gem,
         used  as  a  “Bundler”  for  
            Chef cookbooks


          Download
         cookbooks
        from remote




        Developer’s  terminal
       manages EC2 nodes &
          Chef repository
Configuration Management
                                        (Servers)


                         Boot Vagrant instance(s) with role(s)
                                                                                       Vagrant
                                                                   Vagrant / VirtualBox
 Developer’s  terminal                                                 instance(s)
manages EC2 nodes &
   Chef repository


                        Chef Solo
                    uses cookbooks
                     in  developer’s                             Vagrant installs Chef Solo
                        repository                                 and runs cookbooks
                                                                  required to fulfil role(s)




                                 Chef Solo running in the
                                           VM
Results


•   Sane environments

    •   No voodoo!

    •   No  more  “it  worked  in  development”!

    •   Maintainable

    •   Aspirin budget drastically reduced!
AWS Building Blocks
•   EC2

    •    Complete control from the OS up

    •    Export AMI images to VMs (Windows only)

•   S3

    •    Store & serve cookbooks, VMs, etc

•   SNS

    •    Notifications on success / failure

•   EBS

    •    Store & snapshot operational data
6W Dev Blog
dev.6wunderkinder.com

More Related Content

What's hot

Server Installation and Configuration with Chef
Server Installation and Configuration with ChefServer Installation and Configuration with Chef
Server Installation and Configuration with ChefRaimonds Simanovskis
 
Sim, a Microsoft usa Open Source em DevOps
Sim, a Microsoft usa Open Source em DevOpsSim, a Microsoft usa Open Source em DevOps
Sim, a Microsoft usa Open Source em DevOpsDanilo Bordini
 
Apache server 2 bible hungry minds
Apache server 2 bible   hungry mindsApache server 2 bible   hungry minds
Apache server 2 bible hungry mindsgrregwalz
 
Chef, Devops, and You
Chef, Devops, and YouChef, Devops, and You
Chef, Devops, and YouBryan Berry
 
Docker Containers: Developer’s experience and building robust developer envir...
Docker Containers: Developer’s experience and building robust developer envir...Docker Containers: Developer’s experience and building robust developer envir...
Docker Containers: Developer’s experience and building robust developer envir...Future Cloud Summit
 
[MDBCI] Mariadb continuous integration tool
[MDBCI] Mariadb continuous integration tool[MDBCI] Mariadb continuous integration tool
[MDBCI] Mariadb continuous integration toolOSLL
 
Amazon Web Services - Elastic Beanstalk
Amazon Web Services - Elastic BeanstalkAmazon Web Services - Elastic Beanstalk
Amazon Web Services - Elastic BeanstalkAmazon Web Services
 
AWS Elastic Beanstalk - Running Microservices and Docker
AWS Elastic Beanstalk - Running Microservices and DockerAWS Elastic Beanstalk - Running Microservices and Docker
AWS Elastic Beanstalk - Running Microservices and DockerAmazon Web Services
 
Ansible Introduction
Ansible Introduction Ansible Introduction
Ansible Introduction Robert Reiz
 
Infrastructure Automation with Chef
Infrastructure Automation with ChefInfrastructure Automation with Chef
Infrastructure Automation with ChefJonathan Weiss
 
Automating Dev Environment - Introduction to Docker and Chef
Automating Dev Environment - Introduction to Docker and ChefAutomating Dev Environment - Introduction to Docker and Chef
Automating Dev Environment - Introduction to Docker and Chefkamalikamj
 
Rails Engine | Modular application
Rails Engine | Modular applicationRails Engine | Modular application
Rails Engine | Modular applicationmirrec
 
Windows Azure Web Sites – things they don’t teach kids in school - AzureConf
Windows Azure Web Sites – things they don’t teach kids in school - AzureConfWindows Azure Web Sites – things they don’t teach kids in school - AzureConf
Windows Azure Web Sites – things they don’t teach kids in school - AzureConfMaarten Balliauw
 
Ansible: How to Get More Sleep and Require Less Coffee
Ansible: How to Get More Sleep and Require Less CoffeeAnsible: How to Get More Sleep and Require Less Coffee
Ansible: How to Get More Sleep and Require Less CoffeeSarah Z
 

What's hot (20)

Server Installation and Configuration with Chef
Server Installation and Configuration with ChefServer Installation and Configuration with Chef
Server Installation and Configuration with Chef
 
Sim a Microsoft Utiliza OpenSource em DevOps!
Sim a Microsoft Utiliza OpenSource em DevOps!Sim a Microsoft Utiliza OpenSource em DevOps!
Sim a Microsoft Utiliza OpenSource em DevOps!
 
Sim, a Microsoft usa Open Source em DevOps
Sim, a Microsoft usa Open Source em DevOpsSim, a Microsoft usa Open Source em DevOps
Sim, a Microsoft usa Open Source em DevOps
 
DevOps and Chef improve your life
DevOps and Chef improve your life DevOps and Chef improve your life
DevOps and Chef improve your life
 
Apache server 2 bible hungry minds
Apache server 2 bible   hungry mindsApache server 2 bible   hungry minds
Apache server 2 bible hungry minds
 
EC2 Container Service
EC2 Container ServiceEC2 Container Service
EC2 Container Service
 
Sysops cu Chef
Sysops cu ChefSysops cu Chef
Sysops cu Chef
 
Chef, Devops, and You
Chef, Devops, and YouChef, Devops, and You
Chef, Devops, and You
 
Cooking with Chef
Cooking with ChefCooking with Chef
Cooking with Chef
 
Docker Containers: Developer’s experience and building robust developer envir...
Docker Containers: Developer’s experience and building robust developer envir...Docker Containers: Developer’s experience and building robust developer envir...
Docker Containers: Developer’s experience and building robust developer envir...
 
[MDBCI] Mariadb continuous integration tool
[MDBCI] Mariadb continuous integration tool[MDBCI] Mariadb continuous integration tool
[MDBCI] Mariadb continuous integration tool
 
Chef: Smart infrastructure automation
Chef: Smart infrastructure automationChef: Smart infrastructure automation
Chef: Smart infrastructure automation
 
Amazon Web Services - Elastic Beanstalk
Amazon Web Services - Elastic BeanstalkAmazon Web Services - Elastic Beanstalk
Amazon Web Services - Elastic Beanstalk
 
AWS Elastic Beanstalk - Running Microservices and Docker
AWS Elastic Beanstalk - Running Microservices and DockerAWS Elastic Beanstalk - Running Microservices and Docker
AWS Elastic Beanstalk - Running Microservices and Docker
 
Ansible Introduction
Ansible Introduction Ansible Introduction
Ansible Introduction
 
Infrastructure Automation with Chef
Infrastructure Automation with ChefInfrastructure Automation with Chef
Infrastructure Automation with Chef
 
Automating Dev Environment - Introduction to Docker and Chef
Automating Dev Environment - Introduction to Docker and ChefAutomating Dev Environment - Introduction to Docker and Chef
Automating Dev Environment - Introduction to Docker and Chef
 
Rails Engine | Modular application
Rails Engine | Modular applicationRails Engine | Modular application
Rails Engine | Modular application
 
Windows Azure Web Sites – things they don’t teach kids in school - AzureConf
Windows Azure Web Sites – things they don’t teach kids in school - AzureConfWindows Azure Web Sites – things they don’t teach kids in school - AzureConf
Windows Azure Web Sites – things they don’t teach kids in school - AzureConf
 
Ansible: How to Get More Sleep and Require Less Coffee
Ansible: How to Get More Sleep and Require Less CoffeeAnsible: How to Get More Sleep and Require Less Coffee
Ansible: How to Get More Sleep and Require Less Coffee
 

Viewers also liked

AWS Procuring Services for Public Sector - Peterson
AWS Procuring Services for Public Sector - PetersonAWS Procuring Services for Public Sector - Peterson
AWS Procuring Services for Public Sector - PetersonAmazon Web Services
 
CPN204 Windows on Amazon EC2 – Top ten things - AWS re: Invent 2012
CPN204 Windows on Amazon EC2 – Top ten things - AWS re: Invent 2012CPN204 Windows on Amazon EC2 – Top ten things - AWS re: Invent 2012
CPN204 Windows on Amazon EC2 – Top ten things - AWS re: Invent 2012Amazon Web Services
 
Choosing the Right Data Storage Solution
Choosing the Right Data Storage SolutionChoosing the Right Data Storage Solution
Choosing the Right Data Storage SolutionAmazon Web Services
 
Etendez votre datacenter avec aws v4
Etendez votre datacenter avec aws v4Etendez votre datacenter avec aws v4
Etendez votre datacenter avec aws v4Amazon Web Services
 
SEC202 Federal Government Compliance Best Practices in the Cloud - AWS re: …
SEC202 Federal Government Compliance Best Practices in the Cloud - AWS re: …SEC202 Federal Government Compliance Best Practices in the Cloud - AWS re: …
SEC202 Federal Government Compliance Best Practices in the Cloud - AWS re: …Amazon Web Services
 
RMG206 Introduction to Amazon Elastic Beanstalk - AWS re: Invent 2012
RMG206 Introduction to Amazon Elastic Beanstalk - AWS re: Invent 2012RMG206 Introduction to Amazon Elastic Beanstalk - AWS re: Invent 2012
RMG206 Introduction to Amazon Elastic Beanstalk - AWS re: Invent 2012Amazon Web Services
 
AWS Update | London - Reserved Instance Marketplace
AWS Update | London - Reserved Instance MarketplaceAWS Update | London - Reserved Instance Marketplace
AWS Update | London - Reserved Instance MarketplaceAmazon Web Services
 
News Limited Keynote - Craige Prendleton-Browne - AWS Summit 2012 Australia
News Limited Keynote - Craige Prendleton-Browne - AWS Summit 2012 AustraliaNews Limited Keynote - Craige Prendleton-Browne - AWS Summit 2012 Australia
News Limited Keynote - Craige Prendleton-Browne - AWS Summit 2012 AustraliaAmazon Web Services
 
Utility Supercomputing on AWS - Stowe
Utility Supercomputing on AWS - StoweUtility Supercomputing on AWS - Stowe
Utility Supercomputing on AWS - StoweAmazon Web Services
 
Managing Your Cloud Assets with AWS
Managing Your Cloud Assets with AWSManaging Your Cloud Assets with AWS
Managing Your Cloud Assets with AWSAmazon Web Services
 
Developing for Your Target Market - Social, Games & Mobile - AWS India Summit...
Developing for Your Target Market - Social, Games & Mobile - AWS India Summit...Developing for Your Target Market - Social, Games & Mobile - AWS India Summit...
Developing for Your Target Market - Social, Games & Mobile - AWS India Summit...Amazon Web Services
 
STP204 Pinterest Pins AWS! Running Lean on AWS Once You've Made It - AWS re: ...
STP204 Pinterest Pins AWS! Running Lean on AWS Once You've Made It - AWS re: ...STP204 Pinterest Pins AWS! Running Lean on AWS Once You've Made It - AWS re: ...
STP204 Pinterest Pins AWS! Running Lean on AWS Once You've Made It - AWS re: ...Amazon Web Services
 
STG303 Building Scalable Applications on Amazon S3 - AWS re: Invent 2012
STG303 Building Scalable Applications on Amazon S3 - AWS re: Invent 2012STG303 Building Scalable Applications on Amazon S3 - AWS re: Invent 2012
STG303 Building Scalable Applications on Amazon S3 - AWS re: Invent 2012Amazon Web Services
 
RMG207 Introduction to AWS CloudFormation - AWS re: Invent 2012
RMG207 Introduction to AWS CloudFormation - AWS re: Invent 2012RMG207 Introduction to AWS CloudFormation - AWS re: Invent 2012
RMG207 Introduction to AWS CloudFormation - AWS re: Invent 2012Amazon 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 Partner Presentation – Panzura – AWS Cloud Storage for the Enterprise 2012
AWS Partner Presentation – Panzura – AWS Cloud Storage for the Enterprise 2012AWS Partner Presentation – Panzura – AWS Cloud Storage for the Enterprise 2012
AWS Partner Presentation – Panzura – AWS Cloud Storage for the Enterprise 2012Amazon Web Services
 

Viewers also liked (16)

AWS Procuring Services for Public Sector - Peterson
AWS Procuring Services for Public Sector - PetersonAWS Procuring Services for Public Sector - Peterson
AWS Procuring Services for Public Sector - Peterson
 
CPN204 Windows on Amazon EC2 – Top ten things - AWS re: Invent 2012
CPN204 Windows on Amazon EC2 – Top ten things - AWS re: Invent 2012CPN204 Windows on Amazon EC2 – Top ten things - AWS re: Invent 2012
CPN204 Windows on Amazon EC2 – Top ten things - AWS re: Invent 2012
 
Choosing the Right Data Storage Solution
Choosing the Right Data Storage SolutionChoosing the Right Data Storage Solution
Choosing the Right Data Storage Solution
 
Etendez votre datacenter avec aws v4
Etendez votre datacenter avec aws v4Etendez votre datacenter avec aws v4
Etendez votre datacenter avec aws v4
 
SEC202 Federal Government Compliance Best Practices in the Cloud - AWS re: …
SEC202 Federal Government Compliance Best Practices in the Cloud - AWS re: …SEC202 Federal Government Compliance Best Practices in the Cloud - AWS re: …
SEC202 Federal Government Compliance Best Practices in the Cloud - AWS re: …
 
RMG206 Introduction to Amazon Elastic Beanstalk - AWS re: Invent 2012
RMG206 Introduction to Amazon Elastic Beanstalk - AWS re: Invent 2012RMG206 Introduction to Amazon Elastic Beanstalk - AWS re: Invent 2012
RMG206 Introduction to Amazon Elastic Beanstalk - AWS re: Invent 2012
 
AWS Update | London - Reserved Instance Marketplace
AWS Update | London - Reserved Instance MarketplaceAWS Update | London - Reserved Instance Marketplace
AWS Update | London - Reserved Instance Marketplace
 
News Limited Keynote - Craige Prendleton-Browne - AWS Summit 2012 Australia
News Limited Keynote - Craige Prendleton-Browne - AWS Summit 2012 AustraliaNews Limited Keynote - Craige Prendleton-Browne - AWS Summit 2012 Australia
News Limited Keynote - Craige Prendleton-Browne - AWS Summit 2012 Australia
 
Utility Supercomputing on AWS - Stowe
Utility Supercomputing on AWS - StoweUtility Supercomputing on AWS - Stowe
Utility Supercomputing on AWS - Stowe
 
Managing Your Cloud Assets with AWS
Managing Your Cloud Assets with AWSManaging Your Cloud Assets with AWS
Managing Your Cloud Assets with AWS
 
Developing for Your Target Market - Social, Games & Mobile - AWS India Summit...
Developing for Your Target Market - Social, Games & Mobile - AWS India Summit...Developing for Your Target Market - Social, Games & Mobile - AWS India Summit...
Developing for Your Target Market - Social, Games & Mobile - AWS India Summit...
 
STP204 Pinterest Pins AWS! Running Lean on AWS Once You've Made It - AWS re: ...
STP204 Pinterest Pins AWS! Running Lean on AWS Once You've Made It - AWS re: ...STP204 Pinterest Pins AWS! Running Lean on AWS Once You've Made It - AWS re: ...
STP204 Pinterest Pins AWS! Running Lean on AWS Once You've Made It - AWS re: ...
 
STG303 Building Scalable Applications on Amazon S3 - AWS re: Invent 2012
STG303 Building Scalable Applications on Amazon S3 - AWS re: Invent 2012STG303 Building Scalable Applications on Amazon S3 - AWS re: Invent 2012
STG303 Building Scalable Applications on Amazon S3 - AWS re: Invent 2012
 
RMG207 Introduction to AWS CloudFormation - AWS re: Invent 2012
RMG207 Introduction to AWS CloudFormation - AWS re: Invent 2012RMG207 Introduction to AWS CloudFormation - AWS re: Invent 2012
RMG207 Introduction to AWS CloudFormation - AWS re: Invent 2012
 
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 Partner Presentation – Panzura – AWS Cloud Storage for the Enterprise 2012
AWS Partner Presentation – Panzura – AWS Cloud Storage for the Enterprise 2012AWS Partner Presentation – Panzura – AWS Cloud Storage for the Enterprise 2012
AWS Partner Presentation – Panzura – AWS Cloud Storage for the Enterprise 2012
 

Similar to AWS Customer Presentation: 6Wunderkind - Berlin Summit 2012

Chef, Vagrant and Friends
Chef, Vagrant and FriendsChef, Vagrant and Friends
Chef, Vagrant and FriendsBen McRae
 
Introduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In CodeIntroduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In CodeJosh Padnick
 
(DVO305) Turbocharge YContinuous Deployment Pipeline with Containers
(DVO305) Turbocharge YContinuous Deployment Pipeline with Containers(DVO305) Turbocharge YContinuous Deployment Pipeline with Containers
(DVO305) Turbocharge YContinuous Deployment Pipeline with ContainersAmazon Web Services
 
JBoss, Rails and the cloud
JBoss, Rails and the cloudJBoss, Rails and the cloud
JBoss, Rails and the cloudelliando dias
 
Opscode Webinar: Managing Your VMware Infrastructure with Chef
Opscode Webinar: Managing Your VMware Infrastructure with ChefOpscode Webinar: Managing Your VMware Infrastructure with Chef
Opscode Webinar: Managing Your VMware Infrastructure with ChefChef Software, Inc.
 
Introduction to Containers - SQL Server and Docker
Introduction to Containers - SQL Server and DockerIntroduction to Containers - SQL Server and Docker
Introduction to Containers - SQL Server and DockerChris Taylor
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to DockerAditya Konarde
 
(DVO301) AWS OpsWorks Under the Hood
(DVO301) AWS OpsWorks Under the Hood(DVO301) AWS OpsWorks Under the Hood
(DVO301) AWS OpsWorks Under the HoodAmazon Web Services
 
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
2016 - Easing Your Way Into Docker: Lessons From a Journey to Productiondevopsdaysaustin
 
2 Linux Container and Docker
2 Linux Container and Docker2 Linux Container and Docker
2 Linux Container and DockerFabio Fumarola
 
Modernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudModernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudMicrosoft Tech Community
 
DockerCon 2016 Recap
DockerCon 2016 RecapDockerCon 2016 Recap
DockerCon 2016 Recapehazlett
 
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, OrchestrationThe Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, OrchestrationErica Windisch
 
Develop with linux containers and docker
Develop with linux containers and dockerDevelop with linux containers and docker
Develop with linux containers and dockerFabio Fumarola
 
Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deploymentjavaonfly
 
Up and running with docker
Up and running with dockerUp and running with docker
Up and running with dockerMichelle Liu
 

Similar to AWS Customer Presentation: 6Wunderkind - Berlin Summit 2012 (20)

Chef, Vagrant and Friends
Chef, Vagrant and FriendsChef, Vagrant and Friends
Chef, Vagrant and Friends
 
Introduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In CodeIntroduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In Code
 
(DVO305) Turbocharge YContinuous Deployment Pipeline with Containers
(DVO305) Turbocharge YContinuous Deployment Pipeline with Containers(DVO305) Turbocharge YContinuous Deployment Pipeline with Containers
(DVO305) Turbocharge YContinuous Deployment Pipeline with Containers
 
JBoss, Rails and the cloud
JBoss, Rails and the cloudJBoss, Rails and the cloud
JBoss, Rails and the cloud
 
Opscode Webinar: Managing Your VMware Infrastructure with Chef
Opscode Webinar: Managing Your VMware Infrastructure with ChefOpscode Webinar: Managing Your VMware Infrastructure with Chef
Opscode Webinar: Managing Your VMware Infrastructure with Chef
 
Introduction to Containers - SQL Server and Docker
Introduction to Containers - SQL Server and DockerIntroduction to Containers - SQL Server and Docker
Introduction to Containers - SQL Server and Docker
 
Docker in the Cloud
Docker in the CloudDocker in the Cloud
Docker in the Cloud
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
(DVO301) AWS OpsWorks Under the Hood
(DVO301) AWS OpsWorks Under the Hood(DVO301) AWS OpsWorks Under the Hood
(DVO301) AWS OpsWorks Under the Hood
 
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
 
Containers and Docker
Containers and DockerContainers and Docker
Containers and Docker
 
Docker and CloudStack
Docker and CloudStackDocker and CloudStack
Docker and CloudStack
 
2 Linux Container and Docker
2 Linux Container and Docker2 Linux Container and Docker
2 Linux Container and Docker
 
Virtual Container - Docker
Virtual Container - Docker Virtual Container - Docker
Virtual Container - Docker
 
Modernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudModernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloud
 
DockerCon 2016 Recap
DockerCon 2016 RecapDockerCon 2016 Recap
DockerCon 2016 Recap
 
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, OrchestrationThe Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
 
Develop with linux containers and docker
Develop with linux containers and dockerDevelop with linux containers and docker
Develop with linux containers and docker
 
Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deployment
 
Up and running with docker
Up and running with dockerUp and running with docker
Up and running with docker
 

More from 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
 

More from 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
 

Recently uploaded

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 

AWS Customer Presentation: 6Wunderkind - Berlin Summit 2012

  • 1. Wunderful Infrastructure Alex Koppell & Mark Bate, 6Wunderkinder
  • 4.
  • 5. Wunderlist • Cloud-based task manager • Cross-platform (11 so far) • Friendly, intuitive design • Easy sharing w/ friends & coworkers
  • 6. Wunderkit • Ruby on Rails (single app) • MongoDB • Redis • Hosted on PaaS
  • 8. Wunderlist • Code Igniter (PHP) • MySQL • Redis • Hosted in AWS
  • 9. Wunderkit • Cloud-based collaboration app • Cross-platform • Focus on teams and projects
  • 11. Wunderlist Servers • Ubuntu on EC2 • Apache + PHP for sync • Nginx + FPM + PHP for web app • Redis on EC2 + EBS • MySQL on RDS
  • 12. Wunderlist Development • OS X Lion on MacBook Airs • Apache + PHP + MySQL + Redis • System? Homebrew? MAMP? Manual?
  • 13. Wunderkit Servers • Ubuntu on PaaS • Nginx + Passenger + Rails • Redis • MongoDB • Infrastructure built thru YAML & shell scripts
  • 14. Wunderkit Development • OS X Lion on MacBook Airs • Apache + Passenger + Rails • Homebrew? RVM? Rbenv?
  • 15. So that means... •2 Applications... •2 Languages... •2 Infrastructures... • Manually managed developer environments... • Crazy!!!
  • 17. Goals • Highly available • Ability to scale easily • Flexible
  • 18. Wonderful Code • Service-Oriented Architecture • Multiple specialised services • Rails and Node.js initially • MongoDB & Redis initially • Communication via asynchronous messaging
  • 19. Complicated! • SOA is complicated • Requires rock-solid setup • Consistency across environments • Sanely manageable
  • 20. The Way It Should Be Servers Development • Ubuntu 12.04 LTS • Ubuntu 12.04 LTS • Nginx • Nginx • Unicorn • Unicorn • Ruby 1.9.2 • Ruby 1.9.2 • Rails 3.1 • Rails 3.1 • MongoDB • MongoDB • Redis • Redis
  • 21. Wunderful Infrastructure • Configuration Management - Chef • Infrastructure as Code • Virtualisation - VirtualBox + Vagrant
  • 22. CHEF • Deployment & configuration management • Write Recipes as part of Cookbooks, which are applied through Roles. • Ruby-based = Developers can write cookbooks ;) • Client-Server or Solo (standalone) modes • Similar to Elastic Beanstalk, Puppet, Babushka, CFEngine • http://www.opscode.com/chef
  • 23. Infrastructure as Code • Define packages & their configurations in code • Visibility • Editable • Testable • Version Controlled
  • 24. The Cloud! Ubuntu 12.04 AMI $ ec2-run-instances EC2 (virtual machine image, (virtual machine instance stored on EBS) running on AWS hardware)
  • 25. Configuration Management (Servers) Librarian-Chef Librarian gem, used  as  a  “Bundler”  for   Chef cookbooks Download cookbooks from remote Upload cookbooks, roles & data bags Chef Server running on Developer’s  terminal EC2 + EBS manages EC2 nodes & Chef repository
  • 26. Configuration Management (Servers) Boot EC2 instance(s) with role(s) EC2 instance(s) Developer’s  terminal manages EC2 nodes & Chef repository EC2 server downloads & runs cookbooks required to fulfil role(s) Chef Server running on EC2 + EBS
  • 27. Virtualise! • VirtualBox • Oracle’s  open  source  VM  software,  similar  to  VMWare,  Parallels,  etc. • http://www.virtualbox.org • Vagrant • Ruby gem, adds in useful features on top of VirtualBox • http://vagrantup.com
  • 28. Virtualisation (Development) Vagrant Ruby gem, provides Ubuntu 12.04 image VirtualBox useful extensions for Developer’s  MacBook  Air (stored in S3) instance provisioning and configuring
  • 29. Configuration Management (Servers) Librarian-Chef Librarian gem, used  as  a  “Bundler”  for   Chef cookbooks Download cookbooks from remote Developer’s  terminal manages EC2 nodes & Chef repository
  • 30. Configuration Management (Servers) Boot Vagrant instance(s) with role(s) Vagrant Vagrant / VirtualBox Developer’s  terminal instance(s) manages EC2 nodes & Chef repository Chef Solo uses cookbooks in  developer’s Vagrant installs Chef Solo repository and runs cookbooks required to fulfil role(s) Chef Solo running in the VM
  • 31. Results • Sane environments • No voodoo! • No  more  “it  worked  in  development”! • Maintainable • Aspirin budget drastically reduced!
  • 32. AWS Building Blocks • EC2 • Complete control from the OS up • Export AMI images to VMs (Windows only) • S3 • Store & serve cookbooks, VMs, etc • SNS • Notifications on success / failure • EBS • Store & snapshot operational data