SlideShare ist ein Scribd-Unternehmen logo
1 von 54
Playing God in the clouds...
SJUG Aug 2010 @Atlassian



    Michael Neale
    michael.neale@gmail.com
    twitter.com/michaelneale
    www.michaelneale.net
           Copyright © 2010 Opscode, Inc - All Rights Reserved   1
Tiny bit of background...



         Copyright © 2010 Opscode, Inc - All Rights Reserved   2
#define cloud



   Copyright © 2010 Opscode, Inc - All Rights Reserved   3
SaaS
 PaaS
IaaS <--

(NIST)
 Copyright © 2010 Opscode, Inc - All Rights Reserved   4
IaaS:
 Illusion of infinite
       servers
Low level resources
Requires Sysadmin/
       Devops
       Copyright © 2010 Opscode, Inc - All Rights Reserved   5
IaaS - fire data centre



        Copyright © 2010 Opscode, Inc - All Rights Reserved   6
PaaS - fire the
 sysadmins


    Copyright © 2010 Opscode, Inc - All Rights Reserved   7
SaaS - fire everone else



        Copyright © 2010 Opscode, Inc - All Rights Reserved   8
#define devops



    Copyright © 2010 Opscode, Inc - All Rights Reserved   9
Infrastructure as code
     Useful tools:
        jclouds
          FOG
      deltacloud
     puppet/chef
        Copyright © 2010 Opscode, Inc - All Rights Reserved   10
What Does Cloud
Provisioning Look Like?
        Copyright © 2010 Opscode, Inc - All Rights Reserved   11
Two Answers
	

       Copyright © 2010 Opscode, Inc - All Rights Reserved   12
You building a platform
 (building an image?)

        Copyright © 2010 Opscode, Inc - All Rights Reserved   13
You deploying it


     Copyright © 2010 Opscode, Inc - All Rights Reserved   14
Build your platform
Chef, puppet, by hand...
     snapshotting



         Copyright © 2010 Opscode, Inc - All Rights Reserved   16
Deploy to a (IaaS)
             platform




http://www.byteonic.com/2009/overview-of-java-support-in-google-app-engine/
Command line, web UI,
      or API



        Copyright © 2010 Opscode, Inc - All Rights Reserved   18
cloud + devops =
better, faster, more

       Copyright © 2010 Opscode, Inc - All Rights Reserved   19
“Enable the reconstruction of the
business from nothing but a source
code repository, an application data
   backup, and “... a credit card

             Copyright © 2010 Opscode, Inc - All Rights Reserved   20
Cloud Provisioning is
       Step 1




       Copyright © 2010 Opscode, Inc - All Rights Reserved   21
Cloud Provisioning is
       Step 1
    Provisioning



       Copyright © 2010 Opscode, Inc - All Rights Reserved   21
Cloud Provisioning is
       Step 1
    Provisioning
    Configuration


       Copyright © 2010 Opscode, Inc - All Rights Reserved   21
Cloud Provisioning is
       Step 1
    Provisioning
    Configuration
 Systems Integration
       Copyright © 2010 Opscode, Inc - All Rights Reserved   21
Cloudy
environments
Cloudy
    environments

• automate EVERYTHING
Cloudy
    environments

• automate EVERYTHING
• seed/snapshotting
Cloudy
     environments

• automate EVERYTHING
• seed/snapshotting
• safely update configuration
github jclouds/

              runs on the JVM (including       )

(with-compute-service [compute]
  (run-node "webserver"))
                                       pis pis
                                    d a ud a
                                 lou clo
                              o c t of
                       k- in t -ou
                    loc lock
                zero zero



                nodes = compute.runNodesWithTag(“webserver”, 1);
jclouds

open source
feels like java (and clojure)
portability between clouds
deal with web complexity
unit testability
thread-safe and scalable
Cross cloud API
abstractions:




         Copyright © 2010 Opscode, Inc - All Rights Reserved   26
Cross cloud API
abstractions:
Generic binary storage
 BlobStore




              Copyright © 2010 Opscode, Inc - All Rights Reserved   26
Cross cloud API
abstractions:
Generic binary storage
 BlobStore
Generic service provisioning
 ComputeService




              Copyright © 2010 Opscode, Inc - All Rights Reserved   26
Cross cloud API
abstractions:
Generic binary storage
 BlobStore
Generic service provisioning
 ComputeService

but you have low level access when
need it


              Copyright © 2010 Opscode, Inc - All Rights Reserved   26
jclouds-blobstore             github jclouds/jclouds


blobstore = new BlobStoreContextFactory().createContext(
                    “s3”, identity, credential).getAsyncBlobStore();

blob = blobstore.newBlob(key);
blob.getMetadata().getUserMetadata().put("date", now());
blob.setPayload(snapshot());
blob.getPayload().setContentMD5(snapshotMD5());

blobstore.putBlob(containerName, blob)
             .addListener(publishAMQP(key),sameThreadExecutor());
jclouds-compute               github jclouds/jclouds


service = new ComputeServiceContextFactory().createContext(
                   “ec2”, identity, credential).getComputeService();

template = service.templateBuilder().fastest().build();

template.getOptions().runScript(installGemsAndRunChef);

nodes = service.runNodesWithTag(“webserver”, 5, template);
jclouds                            github jclouds/jclouds


service = new ComputeServiceContextFactory().createContext(
            “rimuhosting”, user, password ).getComputeService();

template = service.templateBuilder().any().biggest().build();

template.getOptions().installPrivateKey(privateRSA)
                     .authorizePublicKey(publicRSA)
                     .runScript(installGemsAndRunChef);

nodes = service.runNodesWithTag(“webserver”, 5, template);
Common demoniator




       Copyright © 2010 Opscode, Inc - All Rights Reserved   30
Common demoniator

 BlobStore: OK




           Copyright © 2010 Opscode, Inc - All Rights Reserved   30
Common demoniator

 BlobStore: OK

 ComputeService:
 Not all clouds created equal, you may need to dive down
 and “lock in” just a tiny bit.. I have !




                   Copyright © 2010 Opscode, Inc - All Rights Reserved   30
Common demoniator

  BlobStore: OK

  ComputeService:
   Not all clouds created equal, you may need to dive down
   and “lock in” just a tiny bit.. I have !



Still early days:




                     Copyright © 2010 Opscode, Inc - All Rights Reserved   30
Common demoniator

 BlobStore: OK

 ComputeService:
  Not all clouds created equal, you may need to dive down
  and “lock in” just a tiny bit.. I have !



Still early days:
No Volume abstractions, yes, no LBs, firewalls etc



                    Copyright © 2010 Opscode, Inc - All Rights Reserved   30
To avoid lockin:




                   Copyright © 2010 Opscode, Inc - All Rights Reserved   31
To avoid lockin:

IaaS Cloud primitives (my opinion on low level)
 Volume management
 Server provisioning **
 Blob storage / Bulk data**
 Firewall/access control
 Image construction ***


                   Copyright © 2010 Opscode, Inc - All Rights Reserved   31
To avoid lockin:

IaaS Cloud primitives (my opinion on low level)
 Volume management
 Server provisioning **
 Blob storage / Bulk data**
 Firewall/access control
 Image construction ***
** This is the currently successfully abstracted
ones - generic enough via various apis

                   Copyright © 2010 Opscode, Inc - All Rights Reserved   31
To avoid lockin:

IaaS Cloud primitives (my opinion on low level)
 Volume management
 Server provisioning **
 Blob storage / Bulk data**
 Firewall/access control
 Image construction ***
** This is the currently successfully abstracted
ones - generic enough via various apis
*** plenty of “traditional” tools help here - chef !
                     Copyright © 2010 Opscode, Inc - All Rights Reserved   31
Bright future




          Copyright © 2010 Opscode, Inc - All Rights Reserved   32
Bright future

 Eucalyptus
 In house “private clouds”




                  Copyright © 2010 Opscode, Inc - All Rights Reserved   32
Bright future

 Eucalyptus
 In house “private clouds”


 OpenStack
 Rackspace/NASA - comparable to EC2 in
 scalecapability




                  Copyright © 2010 Opscode, Inc - All Rights Reserved   32
Bright future

 Eucalyptus
 In house “private clouds”


 OpenStack
 Rackspace/NASA - comparable to EC2 in
 scalecapability




                  Copyright © 2010 Opscode, Inc - All Rights Reserved   32
Copyright © 2010 Opscode, Inc - All Rights Reserved   33
Thanks !

twitter.com/michaelneale
http://www.jclouds.org/
http://deltacloud.org/
http://www.openstack.org/




           Copyright © 2010 Opscode, Inc - All Rights Reserved   33
Thanks !

twitter.com/michaelneale
http://www.jclouds.org/
http://deltacloud.org/
http://www.openstack.org/




           Copyright © 2010 Opscode, Inc - All Rights Reserved   33

Weitere ähnliche Inhalte

Was ist angesagt?

Terraform for azure: the good, the bad and the ugly -
Terraform for azure: the good, the bad and the ugly - Terraform for azure: the good, the bad and the ugly -
Terraform for azure: the good, the bad and the ugly - Giulio Vian
 
jclouds High Level Overview by Adrian Cole
jclouds High Level Overview by Adrian Colejclouds High Level Overview by Adrian Cole
jclouds High Level Overview by Adrian ColeEverett Toews
 
Getting Started with jClouds: Multi Cloud Framework
Getting Started with jClouds: Multi Cloud FrameworkGetting Started with jClouds: Multi Cloud Framework
Getting Started with jClouds: Multi Cloud FrameworkIndicThreads
 
Zabbix for Hybrid Cloud Management
Zabbix for Hybrid Cloud ManagementZabbix for Hybrid Cloud Management
Zabbix for Hybrid Cloud ManagementDaisuke Ikeda
 
Infrastructure as code
Infrastructure as codeInfrastructure as code
Infrastructure as codeAxel Quack
 
How Cloudify uses Chef as a Foundation for PaaS
How Cloudify uses Chef as a Foundation for PaaSHow Cloudify uses Chef as a Foundation for PaaS
How Cloudify uses Chef as a Foundation for PaaSNati Shalom
 
Openstack: An Open Source Cloud Framework
Openstack: An Open Source Cloud FrameworkOpenstack: An Open Source Cloud Framework
Openstack: An Open Source Cloud FrameworkAndrew Shafer
 
Introduction to Apache jclouds
Introduction to Apache jcloudsIntroduction to Apache jclouds
Introduction to Apache jcloudsEverett Toews
 
Apache jclouds and Docker
Apache jclouds and DockerApache jclouds and Docker
Apache jclouds and DockerAndrea Turli
 
Terraform day 1
Terraform day 1Terraform day 1
Terraform day 1Kalkey
 
Infrastructure-as-Code (IaC) using Terraform
Infrastructure-as-Code (IaC) using TerraformInfrastructure-as-Code (IaC) using Terraform
Infrastructure-as-Code (IaC) using TerraformAdin Ermie
 
Cloud Surfing: Kubernetes on Mesos
Cloud Surfing: Kubernetes on MesosCloud Surfing: Kubernetes on Mesos
Cloud Surfing: Kubernetes on MesosKarl Isenberg
 
JClouds at San Francisco Java User Group
JClouds at San Francisco Java User GroupJClouds at San Francisco Java User Group
JClouds at San Francisco Java User GroupMarakana Inc.
 
Application Centric Approach to Devops
Application Centric Approach to DevopsApplication Centric Approach to Devops
Application Centric Approach to DevopsNati Shalom
 
Scaling Like Twitter with Apache Mesos
Scaling Like Twitter with Apache MesosScaling Like Twitter with Apache Mesos
Scaling Like Twitter with Apache MesosMesosphere Inc.
 
Securing Containers - Sathyajit Bhat - Adobe
Securing Containers - Sathyajit Bhat - AdobeSecuring Containers - Sathyajit Bhat - Adobe
Securing Containers - Sathyajit Bhat - AdobeCodeOps Technologies LLP
 

Was ist angesagt? (20)

Terraform for azure: the good, the bad and the ugly -
Terraform for azure: the good, the bad and the ugly - Terraform for azure: the good, the bad and the ugly -
Terraform for azure: the good, the bad and the ugly -
 
Apache JClouds
Apache JCloudsApache JClouds
Apache JClouds
 
jclouds High Level Overview by Adrian Cole
jclouds High Level Overview by Adrian Colejclouds High Level Overview by Adrian Cole
jclouds High Level Overview by Adrian Cole
 
Jclouds Intro
Jclouds IntroJclouds Intro
Jclouds Intro
 
Getting Started with jClouds: Multi Cloud Framework
Getting Started with jClouds: Multi Cloud FrameworkGetting Started with jClouds: Multi Cloud Framework
Getting Started with jClouds: Multi Cloud Framework
 
Zabbix for Hybrid Cloud Management
Zabbix for Hybrid Cloud ManagementZabbix for Hybrid Cloud Management
Zabbix for Hybrid Cloud Management
 
Infrastructure as code
Infrastructure as codeInfrastructure as code
Infrastructure as code
 
How Cloudify uses Chef as a Foundation for PaaS
How Cloudify uses Chef as a Foundation for PaaSHow Cloudify uses Chef as a Foundation for PaaS
How Cloudify uses Chef as a Foundation for PaaS
 
Openstack: An Open Source Cloud Framework
Openstack: An Open Source Cloud FrameworkOpenstack: An Open Source Cloud Framework
Openstack: An Open Source Cloud Framework
 
Introduction to Apache jclouds
Introduction to Apache jcloudsIntroduction to Apache jclouds
Introduction to Apache jclouds
 
Apache jclouds and Docker
Apache jclouds and DockerApache jclouds and Docker
Apache jclouds and Docker
 
Terraform day 1
Terraform day 1Terraform day 1
Terraform day 1
 
Infrastructure-as-Code (IaC) using Terraform
Infrastructure-as-Code (IaC) using TerraformInfrastructure-as-Code (IaC) using Terraform
Infrastructure-as-Code (IaC) using Terraform
 
Cloud Surfing: Kubernetes on Mesos
Cloud Surfing: Kubernetes on MesosCloud Surfing: Kubernetes on Mesos
Cloud Surfing: Kubernetes on Mesos
 
Introduction to IAC and Terraform
Introduction to IAC and Terraform Introduction to IAC and Terraform
Introduction to IAC and Terraform
 
JClouds at San Francisco Java User Group
JClouds at San Francisco Java User GroupJClouds at San Francisco Java User Group
JClouds at San Francisco Java User Group
 
Terraform
TerraformTerraform
Terraform
 
Application Centric Approach to Devops
Application Centric Approach to DevopsApplication Centric Approach to Devops
Application Centric Approach to Devops
 
Scaling Like Twitter with Apache Mesos
Scaling Like Twitter with Apache MesosScaling Like Twitter with Apache Mesos
Scaling Like Twitter with Apache Mesos
 
Securing Containers - Sathyajit Bhat - Adobe
Securing Containers - Sathyajit Bhat - AdobeSecuring Containers - Sathyajit Bhat - Adobe
Securing Containers - Sathyajit Bhat - Adobe
 

Ähnlich wie Sjug aug 2010_cloud

Tap into the power of slaves with Jenkins by Kohsuke Kawaguchi
Tap into the power of slaves with Jenkins by Kohsuke KawaguchiTap into the power of slaves with Jenkins by Kohsuke Kawaguchi
Tap into the power of slaves with Jenkins by Kohsuke KawaguchiZeroTurnaround
 
EclipseCon 2016 - OCCIware : one Cloud API to rule them all
EclipseCon 2016 - OCCIware : one Cloud API to rule them allEclipseCon 2016 - OCCIware : one Cloud API to rule them all
EclipseCon 2016 - OCCIware : one Cloud API to rule them allMarc Dutoo
 
OCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open Wide
OCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open WideOCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open Wide
OCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open WideOCCIware
 
Cooking security sans@night
Cooking security sans@nightCooking security sans@night
Cooking security sans@nightjtimberman
 
Custom Runtimes for the Cloud
Custom Runtimes for the CloudCustom Runtimes for the Cloud
Custom Runtimes for the CloudCloudBees
 
Jump into Squeak - Integrate Squeak projects with Docker & Github
Jump into Squeak - Integrate Squeak projects with Docker & GithubJump into Squeak - Integrate Squeak projects with Docker & Github
Jump into Squeak - Integrate Squeak projects with Docker & Githubhubx
 
Mythical Mysfits: Monolith to Microservices with Docker and Fargate - MAD305 ...
Mythical Mysfits: Monolith to Microservices with Docker and Fargate - MAD305 ...Mythical Mysfits: Monolith to Microservices with Docker and Fargate - MAD305 ...
Mythical Mysfits: Monolith to Microservices with Docker and Fargate - MAD305 ...Amazon Web Services
 
You Too Can Be a Radio Host Or How We Scaled a .NET Startup And Had Fun Doing It
You Too Can Be a Radio Host Or How We Scaled a .NET Startup And Had Fun Doing ItYou Too Can Be a Radio Host Or How We Scaled a .NET Startup And Had Fun Doing It
You Too Can Be a Radio Host Or How We Scaled a .NET Startup And Had Fun Doing ItAleksandr Yampolskiy
 
Build A Cloud Day London - Introduction
Build A Cloud Day London - IntroductionBuild A Cloud Day London - Introduction
Build A Cloud Day London - IntroductionShapeBlue
 
Automated infrastructure is on the menu
Automated infrastructure is on the menuAutomated infrastructure is on the menu
Automated infrastructure is on the menujtimberman
 
Manchester geek night pcf 101
Manchester geek night   pcf 101Manchester geek night   pcf 101
Manchester geek night pcf 101Sufyaan Kazi
 
Large scale automation with jenkins
Large scale automation with jenkinsLarge scale automation with jenkins
Large scale automation with jenkinsKohsuke Kawaguchi
 
Cloud meets Fog & Puppet A Story of Version Controlled Infrastructure
Cloud meets Fog & Puppet A Story of Version Controlled InfrastructureCloud meets Fog & Puppet A Story of Version Controlled Infrastructure
Cloud meets Fog & Puppet A Story of Version Controlled InfrastructureHabeeb Rahman
 
February EPD Webinar: How do I...use PiCloud for cloud computing?
February EPD Webinar: How do I...use PiCloud for cloud computing?February EPD Webinar: How do I...use PiCloud for cloud computing?
February EPD Webinar: How do I...use PiCloud for cloud computing?Enthought, Inc.
 
Bare Metal to OpenStack with Razor and Chef
Bare Metal to OpenStack with Razor and ChefBare Metal to OpenStack with Razor and Chef
Bare Metal to OpenStack with Razor and ChefMatt Ray
 
Agile Brown Bag - Vagrant & Docker: Introduction
Agile Brown Bag - Vagrant & Docker: IntroductionAgile Brown Bag - Vagrant & Docker: Introduction
Agile Brown Bag - Vagrant & Docker: IntroductionAgile Partner S.A.
 
AKS - Azure Kubernetes Services 101
AKS - Azure Kubernetes Services 101AKS - Azure Kubernetes Services 101
AKS - Azure Kubernetes Services 101Jorge Arteiro
 
Overview of Citrix Octoblu [For TechNotts]
Overview of Citrix Octoblu [For TechNotts]Overview of Citrix Octoblu [For TechNotts]
Overview of Citrix Octoblu [For TechNotts]John Moody
 
BeJUG Meetup - What's coming in the OSGi R7 Specification
BeJUG Meetup - What's coming in the OSGi R7 SpecificationBeJUG Meetup - What's coming in the OSGi R7 Specification
BeJUG Meetup - What's coming in the OSGi R7 SpecificationStijn Van Den Enden
 
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston MeetupOpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston Meetupragss
 

Ähnlich wie Sjug aug 2010_cloud (20)

Tap into the power of slaves with Jenkins by Kohsuke Kawaguchi
Tap into the power of slaves with Jenkins by Kohsuke KawaguchiTap into the power of slaves with Jenkins by Kohsuke Kawaguchi
Tap into the power of slaves with Jenkins by Kohsuke Kawaguchi
 
EclipseCon 2016 - OCCIware : one Cloud API to rule them all
EclipseCon 2016 - OCCIware : one Cloud API to rule them allEclipseCon 2016 - OCCIware : one Cloud API to rule them all
EclipseCon 2016 - OCCIware : one Cloud API to rule them all
 
OCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open Wide
OCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open WideOCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open Wide
OCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open Wide
 
Cooking security sans@night
Cooking security sans@nightCooking security sans@night
Cooking security sans@night
 
Custom Runtimes for the Cloud
Custom Runtimes for the CloudCustom Runtimes for the Cloud
Custom Runtimes for the Cloud
 
Jump into Squeak - Integrate Squeak projects with Docker & Github
Jump into Squeak - Integrate Squeak projects with Docker & GithubJump into Squeak - Integrate Squeak projects with Docker & Github
Jump into Squeak - Integrate Squeak projects with Docker & Github
 
Mythical Mysfits: Monolith to Microservices with Docker and Fargate - MAD305 ...
Mythical Mysfits: Monolith to Microservices with Docker and Fargate - MAD305 ...Mythical Mysfits: Monolith to Microservices with Docker and Fargate - MAD305 ...
Mythical Mysfits: Monolith to Microservices with Docker and Fargate - MAD305 ...
 
You Too Can Be a Radio Host Or How We Scaled a .NET Startup And Had Fun Doing It
You Too Can Be a Radio Host Or How We Scaled a .NET Startup And Had Fun Doing ItYou Too Can Be a Radio Host Or How We Scaled a .NET Startup And Had Fun Doing It
You Too Can Be a Radio Host Or How We Scaled a .NET Startup And Had Fun Doing It
 
Build A Cloud Day London - Introduction
Build A Cloud Day London - IntroductionBuild A Cloud Day London - Introduction
Build A Cloud Day London - Introduction
 
Automated infrastructure is on the menu
Automated infrastructure is on the menuAutomated infrastructure is on the menu
Automated infrastructure is on the menu
 
Manchester geek night pcf 101
Manchester geek night   pcf 101Manchester geek night   pcf 101
Manchester geek night pcf 101
 
Large scale automation with jenkins
Large scale automation with jenkinsLarge scale automation with jenkins
Large scale automation with jenkins
 
Cloud meets Fog & Puppet A Story of Version Controlled Infrastructure
Cloud meets Fog & Puppet A Story of Version Controlled InfrastructureCloud meets Fog & Puppet A Story of Version Controlled Infrastructure
Cloud meets Fog & Puppet A Story of Version Controlled Infrastructure
 
February EPD Webinar: How do I...use PiCloud for cloud computing?
February EPD Webinar: How do I...use PiCloud for cloud computing?February EPD Webinar: How do I...use PiCloud for cloud computing?
February EPD Webinar: How do I...use PiCloud for cloud computing?
 
Bare Metal to OpenStack with Razor and Chef
Bare Metal to OpenStack with Razor and ChefBare Metal to OpenStack with Razor and Chef
Bare Metal to OpenStack with Razor and Chef
 
Agile Brown Bag - Vagrant & Docker: Introduction
Agile Brown Bag - Vagrant & Docker: IntroductionAgile Brown Bag - Vagrant & Docker: Introduction
Agile Brown Bag - Vagrant & Docker: Introduction
 
AKS - Azure Kubernetes Services 101
AKS - Azure Kubernetes Services 101AKS - Azure Kubernetes Services 101
AKS - Azure Kubernetes Services 101
 
Overview of Citrix Octoblu [For TechNotts]
Overview of Citrix Octoblu [For TechNotts]Overview of Citrix Octoblu [For TechNotts]
Overview of Citrix Octoblu [For TechNotts]
 
BeJUG Meetup - What's coming in the OSGi R7 Specification
BeJUG Meetup - What's coming in the OSGi R7 SpecificationBeJUG Meetup - What's coming in the OSGi R7 Specification
BeJUG Meetup - What's coming in the OSGi R7 Specification
 
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston MeetupOpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
 

Mehr von Michael Neale

Jenkins X intro (from google app dev conference)
Jenkins X intro (from google app dev conference)Jenkins X intro (from google app dev conference)
Jenkins X intro (from google app dev conference)Michael Neale
 
Devoxx 2014 michael_neale
Devoxx 2014 michael_nealeDevoxx 2014 michael_neale
Devoxx 2014 michael_nealeMichael Neale
 
Cross site calls with javascript - the right way with CORS
Cross site calls with javascript - the right way with CORSCross site calls with javascript - the right way with CORS
Cross site calls with javascript - the right way with CORSMichael Neale
 
Microservices and functional programming
Microservices and functional programmingMicroservices and functional programming
Microservices and functional programmingMichael Neale
 
Osdc 2011 michael_neale
Osdc 2011 michael_nealeOsdc 2011 michael_neale
Osdc 2011 michael_nealeMichael Neale
 
Java one 2011_michaelneale
Java one 2011_michaelnealeJava one 2011_michaelneale
Java one 2011_michaelnealeMichael Neale
 
Errors and handling them. YOW nights Sydney 2011
Errors and handling them. YOW nights Sydney 2011Errors and handling them. YOW nights Sydney 2011
Errors and handling them. YOW nights Sydney 2011Michael Neale
 
SJUG March 2010 Restful design
SJUG March 2010 Restful designSJUG March 2010 Restful design
SJUG March 2010 Restful designMichael Neale
 
On Scala Slides - OSDC 2009
On Scala Slides - OSDC 2009On Scala Slides - OSDC 2009
On Scala Slides - OSDC 2009Michael Neale
 
Osdc Complex Event Processing
Osdc Complex Event ProcessingOsdc Complex Event Processing
Osdc Complex Event ProcessingMichael Neale
 
Jaoo Michael Neale 09
Jaoo Michael Neale 09Jaoo Michael Neale 09
Jaoo Michael Neale 09Michael Neale
 
Osdc Michael Neale 2008
Osdc Michael Neale 2008Osdc Michael Neale 2008
Osdc Michael Neale 2008Michael Neale
 

Mehr von Michael Neale (16)

Jenkins X intro (from google app dev conference)
Jenkins X intro (from google app dev conference)Jenkins X intro (from google app dev conference)
Jenkins X intro (from google app dev conference)
 
Devoxx 2014 michael_neale
Devoxx 2014 michael_nealeDevoxx 2014 michael_neale
Devoxx 2014 michael_neale
 
Cd syd
Cd sydCd syd
Cd syd
 
Cross site calls with javascript - the right way with CORS
Cross site calls with javascript - the right way with CORSCross site calls with javascript - the right way with CORS
Cross site calls with javascript - the right way with CORS
 
Microservices and functional programming
Microservices and functional programmingMicroservices and functional programming
Microservices and functional programming
 
Cors michael
Cors michaelCors michael
Cors michael
 
Osdc 2011 michael_neale
Osdc 2011 michael_nealeOsdc 2011 michael_neale
Osdc 2011 michael_neale
 
Scala sydoct2011
Scala sydoct2011Scala sydoct2011
Scala sydoct2011
 
Java one 2011_michaelneale
Java one 2011_michaelnealeJava one 2011_michaelneale
Java one 2011_michaelneale
 
Errors and handling them. YOW nights Sydney 2011
Errors and handling them. YOW nights Sydney 2011Errors and handling them. YOW nights Sydney 2011
Errors and handling them. YOW nights Sydney 2011
 
SJUG March 2010 Restful design
SJUG March 2010 Restful designSJUG March 2010 Restful design
SJUG March 2010 Restful design
 
On Scala Slides - OSDC 2009
On Scala Slides - OSDC 2009On Scala Slides - OSDC 2009
On Scala Slides - OSDC 2009
 
Osdc Complex Event Processing
Osdc Complex Event ProcessingOsdc Complex Event Processing
Osdc Complex Event Processing
 
Scala Sjug 09
Scala Sjug 09Scala Sjug 09
Scala Sjug 09
 
Jaoo Michael Neale 09
Jaoo Michael Neale 09Jaoo Michael Neale 09
Jaoo Michael Neale 09
 
Osdc Michael Neale 2008
Osdc Michael Neale 2008Osdc Michael Neale 2008
Osdc Michael Neale 2008
 

Kürzlich hochgeladen

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
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
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
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
 
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
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
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
 
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
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
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
 
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
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Kürzlich hochgeladen (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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)
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
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...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
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?
 
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
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
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...
 
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
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

Sjug aug 2010_cloud

  • 1. Playing God in the clouds... SJUG Aug 2010 @Atlassian Michael Neale michael.neale@gmail.com twitter.com/michaelneale www.michaelneale.net Copyright © 2010 Opscode, Inc - All Rights Reserved 1
  • 2. Tiny bit of background... Copyright © 2010 Opscode, Inc - All Rights Reserved 2
  • 3. #define cloud Copyright © 2010 Opscode, Inc - All Rights Reserved 3
  • 4. SaaS PaaS IaaS <-- (NIST) Copyright © 2010 Opscode, Inc - All Rights Reserved 4
  • 5. IaaS: Illusion of infinite servers Low level resources Requires Sysadmin/ Devops Copyright © 2010 Opscode, Inc - All Rights Reserved 5
  • 6. IaaS - fire data centre Copyright © 2010 Opscode, Inc - All Rights Reserved 6
  • 7. PaaS - fire the sysadmins Copyright © 2010 Opscode, Inc - All Rights Reserved 7
  • 8. SaaS - fire everone else Copyright © 2010 Opscode, Inc - All Rights Reserved 8
  • 9. #define devops Copyright © 2010 Opscode, Inc - All Rights Reserved 9
  • 10. Infrastructure as code Useful tools: jclouds FOG deltacloud puppet/chef Copyright © 2010 Opscode, Inc - All Rights Reserved 10
  • 11. What Does Cloud Provisioning Look Like? Copyright © 2010 Opscode, Inc - All Rights Reserved 11
  • 12. Two Answers Copyright © 2010 Opscode, Inc - All Rights Reserved 12
  • 13. You building a platform (building an image?) Copyright © 2010 Opscode, Inc - All Rights Reserved 13
  • 14. You deploying it Copyright © 2010 Opscode, Inc - All Rights Reserved 14
  • 16. Chef, puppet, by hand... snapshotting Copyright © 2010 Opscode, Inc - All Rights Reserved 16
  • 17. Deploy to a (IaaS) platform http://www.byteonic.com/2009/overview-of-java-support-in-google-app-engine/
  • 18. Command line, web UI, or API Copyright © 2010 Opscode, Inc - All Rights Reserved 18
  • 19. cloud + devops = better, faster, more Copyright © 2010 Opscode, Inc - All Rights Reserved 19
  • 20. “Enable the reconstruction of the business from nothing but a source code repository, an application data backup, and “... a credit card Copyright © 2010 Opscode, Inc - All Rights Reserved 20
  • 21. Cloud Provisioning is Step 1 Copyright © 2010 Opscode, Inc - All Rights Reserved 21
  • 22. Cloud Provisioning is Step 1 Provisioning Copyright © 2010 Opscode, Inc - All Rights Reserved 21
  • 23. Cloud Provisioning is Step 1 Provisioning Configuration Copyright © 2010 Opscode, Inc - All Rights Reserved 21
  • 24. Cloud Provisioning is Step 1 Provisioning Configuration Systems Integration Copyright © 2010 Opscode, Inc - All Rights Reserved 21
  • 25.
  • 27. Cloudy environments • automate EVERYTHING
  • 28. Cloudy environments • automate EVERYTHING • seed/snapshotting
  • 29. Cloudy environments • automate EVERYTHING • seed/snapshotting • safely update configuration
  • 30. github jclouds/ runs on the JVM (including ) (with-compute-service [compute] (run-node "webserver")) pis pis d a ud a lou clo o c t of k- in t -ou loc lock zero zero nodes = compute.runNodesWithTag(“webserver”, 1);
  • 31. jclouds open source feels like java (and clojure) portability between clouds deal with web complexity unit testability thread-safe and scalable
  • 32. Cross cloud API abstractions: Copyright © 2010 Opscode, Inc - All Rights Reserved 26
  • 33. Cross cloud API abstractions: Generic binary storage BlobStore Copyright © 2010 Opscode, Inc - All Rights Reserved 26
  • 34. Cross cloud API abstractions: Generic binary storage BlobStore Generic service provisioning ComputeService Copyright © 2010 Opscode, Inc - All Rights Reserved 26
  • 35. Cross cloud API abstractions: Generic binary storage BlobStore Generic service provisioning ComputeService but you have low level access when need it Copyright © 2010 Opscode, Inc - All Rights Reserved 26
  • 36. jclouds-blobstore github jclouds/jclouds blobstore = new BlobStoreContextFactory().createContext( “s3”, identity, credential).getAsyncBlobStore(); blob = blobstore.newBlob(key); blob.getMetadata().getUserMetadata().put("date", now()); blob.setPayload(snapshot()); blob.getPayload().setContentMD5(snapshotMD5()); blobstore.putBlob(containerName, blob) .addListener(publishAMQP(key),sameThreadExecutor());
  • 37. jclouds-compute github jclouds/jclouds service = new ComputeServiceContextFactory().createContext( “ec2”, identity, credential).getComputeService(); template = service.templateBuilder().fastest().build(); template.getOptions().runScript(installGemsAndRunChef); nodes = service.runNodesWithTag(“webserver”, 5, template);
  • 38. jclouds github jclouds/jclouds service = new ComputeServiceContextFactory().createContext( “rimuhosting”, user, password ).getComputeService(); template = service.templateBuilder().any().biggest().build(); template.getOptions().installPrivateKey(privateRSA) .authorizePublicKey(publicRSA) .runScript(installGemsAndRunChef); nodes = service.runNodesWithTag(“webserver”, 5, template);
  • 39. Common demoniator Copyright © 2010 Opscode, Inc - All Rights Reserved 30
  • 40. Common demoniator BlobStore: OK Copyright © 2010 Opscode, Inc - All Rights Reserved 30
  • 41. Common demoniator BlobStore: OK ComputeService: Not all clouds created equal, you may need to dive down and “lock in” just a tiny bit.. I have ! Copyright © 2010 Opscode, Inc - All Rights Reserved 30
  • 42. Common demoniator BlobStore: OK ComputeService: Not all clouds created equal, you may need to dive down and “lock in” just a tiny bit.. I have ! Still early days: Copyright © 2010 Opscode, Inc - All Rights Reserved 30
  • 43. Common demoniator BlobStore: OK ComputeService: Not all clouds created equal, you may need to dive down and “lock in” just a tiny bit.. I have ! Still early days: No Volume abstractions, yes, no LBs, firewalls etc Copyright © 2010 Opscode, Inc - All Rights Reserved 30
  • 44. To avoid lockin: Copyright © 2010 Opscode, Inc - All Rights Reserved 31
  • 45. To avoid lockin: IaaS Cloud primitives (my opinion on low level) Volume management Server provisioning ** Blob storage / Bulk data** Firewall/access control Image construction *** Copyright © 2010 Opscode, Inc - All Rights Reserved 31
  • 46. To avoid lockin: IaaS Cloud primitives (my opinion on low level) Volume management Server provisioning ** Blob storage / Bulk data** Firewall/access control Image construction *** ** This is the currently successfully abstracted ones - generic enough via various apis Copyright © 2010 Opscode, Inc - All Rights Reserved 31
  • 47. To avoid lockin: IaaS Cloud primitives (my opinion on low level) Volume management Server provisioning ** Blob storage / Bulk data** Firewall/access control Image construction *** ** This is the currently successfully abstracted ones - generic enough via various apis *** plenty of “traditional” tools help here - chef ! Copyright © 2010 Opscode, Inc - All Rights Reserved 31
  • 48. Bright future Copyright © 2010 Opscode, Inc - All Rights Reserved 32
  • 49. Bright future Eucalyptus In house “private clouds” Copyright © 2010 Opscode, Inc - All Rights Reserved 32
  • 50. Bright future Eucalyptus In house “private clouds” OpenStack Rackspace/NASA - comparable to EC2 in scalecapability Copyright © 2010 Opscode, Inc - All Rights Reserved 32
  • 51. Bright future Eucalyptus In house “private clouds” OpenStack Rackspace/NASA - comparable to EC2 in scalecapability Copyright © 2010 Opscode, Inc - All Rights Reserved 32
  • 52. Copyright © 2010 Opscode, Inc - All Rights Reserved 33

Hinweis der Redaktion

  1. choose your products and standards used
  2. Adam in his chapter of the Web Operations book: &quot;Enable the reconstruction of the business from nothing but a source code repository, an application data backup, and bare-metal resources&quot;
  3. works in google app engine high performance thread safe enterprise ready
  4. focused on semantic portability across clouds I want an image running ubuntu and don&amp;#x2019;t want to know the id absolute portability where possible, but expose vendor apis where needed
  5. focused on semantic portability across clouds I want an image running ubuntu and don&amp;#x2019;t want to know the id absolute portability where possible, but expose vendor apis where needed
  6. focused on semantic portability across clouds I want an image running ubuntu and don&amp;#x2019;t want to know the id absolute portability where possible, but expose vendor apis where needed
  7. focused on semantic portability across clouds I want an image running ubuntu and don&amp;#x2019;t want to know the id absolute portability where possible, but expose vendor apis where needed
  8. focused on semantic portability across clouds I want an image running ubuntu and don&amp;#x2019;t want to know the id absolute portability where possible, but expose vendor apis where needed
  9. focused on semantic portability across clouds I want an image running ubuntu and don&amp;#x2019;t want to know the id absolute portability where possible, but expose vendor apis where needed
  10. focused on semantic portability across clouds I want an image running ubuntu and don&amp;#x2019;t want to know the id absolute portability where possible, but expose vendor apis where needed
  11. focused on semantic portability across clouds I want an image running ubuntu and don&amp;#x2019;t want to know the id absolute portability where possible, but expose vendor apis where needed
  12. focused on semantic portability across clouds I want an image running ubuntu and don&amp;#x2019;t want to know the id absolute portability where possible, but expose vendor apis where needed
  13. focused on semantic portability across clouds I want an image running ubuntu and don&amp;#x2019;t want to know the id absolute portability where possible, but expose vendor apis where needed
  14. focused on semantic portability across clouds I want an image running ubuntu and don&amp;#x2019;t want to know the id absolute portability where possible, but expose vendor apis where needed
  15. focused on semantic portability across clouds I want an image running ubuntu and don&amp;#x2019;t want to know the id absolute portability where possible, but expose vendor apis where needed
  16. focused on semantic portability across clouds I want an image running ubuntu and don&amp;#x2019;t want to know the id absolute portability where possible, but expose vendor apis where needed