Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Infrastructure as Code

Axel Quack
December 07, 2011

Infrastructure as Code

Axel Quack

December 07, 2011
Tweet

More Decks by Axel Quack

Other Decks in Programming

Transcript

  1. 1 Introduction 2 Just enough… OS 3 Just enough… image

    building 4 Just enough… infrastructure code 5 Summary
  2. | | 5 Cloud Stack © p i x e

    l p a r k Flexibilitx of Purpose Level of Abstraction Control / Governance SaaS Software as a Service Public Hybrid Private PaaS Platform as a Service IaaS Infrastructure as a Service §  e.g. Salesforce etc. §  e.g. Google App Engine, §  Windows Azure, Heroku §  e.g. Amazon EC2, §  Rackspace etc.
  3. | | Middleware to scale Golden Image Snapshot Snapshot Raw

    image e.g. Debian Basic Installation § Network § Config § Partitions § … Software Stack Software Configuration Application Configuration ISO Chef Cookbook Autoconfig (Saved once) 6 © p i x e l p a r k TIME
  4. | | 8 Deployment models © p i x e

    l p a r k Public Cloud Private Cloud “Cloud in your Pocket“ Hybrid Cloud §  Eucalyptus §  OpenStack §  Crowbar §  OpenNebula §  … §  Amazon Web Services §  Rackspace §  Google App Engine §  vCloud §  … Eucalyptus, Deltacloud
  5. | | 9 © p i x e l p

    a r k „A cloud in your Pocket“
  6. | | 11 Vagrant © p i x e l

    p a r k Git (e.g. for storing dotfiles) Vagrant file Virtual Box DB App 2 App 1 LB Boxes …
  7. | | 12 © p i x e l p

    a r k You want to get more boxes? Try Vagrantbox.es.
  8. | | 13 © p i x e l p

    a r k But… Paranoid? Do you trust these boxes?
  9. | | 15 VeeWee © p i x e l

    p a r k VeeWee Box n Box 2 Box 1 JeOS Predefined lists Vagrant file (Hosting e.g. S3, Dropbox, Local) Kickstart definition.rb (Red Hat) preseed.cfg [ alt. e.g. FAI ] (Debian GNU Linux / Ubuntu) AutoYaST (openSUSE) Git postinstall.sh
  10. | | 16 © p i x e l p

    a r k What about Public Clouds?
  11. | | 17 Mccloud © p i x e l

    p a r k Git (Dotfiles) Mccloudfile Fog (similar to boto) EC2 LB App 2 App 1 … AMIs Porting Boxes to AMIs soon
  12. | | 18 © p i x e l p

    a r k What about Private Clouds?
  13. | | 19 Crowbar © p i x e l

    p a r k Bare Iron Network Discovery BIOS/RAID config OS install Chef Client install OpenStack config Ready for service Server Crowbar Chef Server Wget PXE Wget PXE Wget Data Store WGE Chef Comms Chef takes over control PXE, DHCP, DNS Source: Rob Hirschfeld
  14. | | 22 Chef Solo © p i x e

    l p a r k Reconfigure Chef Solo Cookbooks JSON Push Configuration Source: peritor
  15. | | 23 Chef Server © p i x e

    l p a r k Reconfigure Chef Client Cookbooks Chef Server Cookbooks JSON Pull Configuration & Cookbooks Source: peritor
  16. | | 24 Scenarios © p i x e l

    p a r k Chef Server or Puppet Server Chef Server EC2 VirtualBox Crowbar AMI Boxes
  17. | Cloud Abstraction Library Private Cloud Abstraction Library Public Cloud

    Private Cloud Xen KVM lxc vSphere „Cloud in your Pocket“ Mccloud Crowbar Vagrant AWS Rackspace vCloud VMware Player VMware fusion VirtualBox Fog (Ruby) Boto (Python) jclouds (Java) libvirt APIs CLIs APIs CLIs Just enough… Operating System Just enough… infrastructure code Just enough… coordination Just enough… image building VeeWee Rundeck Pie Deployinator Cfengine Puppet Chef Source: Patrick Debois
  18. | | The ideas and proposals included in this presentation

    are the intellectual property of Pixelpark and subject to current copyright laws. The total or partial reproduction, and any disclosure to third parties is permitted. Axel Quack Director Innovation Management Pixelpark AG Cäcilienkloster 2 50676 Köln Tel: +49.221.951515-994 Fax: +49.221.951515-66 [email protected] www.pixelpark.com 30 Imprint © p i x e l p a r k