Delivering Infrastructure-as-a-Service with Open Source Software


Published on

The web was build using open source software like Linux, Apache, MySQL and the pervasive PHP, Python and Perl. Just as with the web, open source is one of the core foundations of cloud computing as early cloud pioneers used the freely available, freely-distributable model to power their web-scale deployments—achieving an unprecedented level of scale at a bare-bones cost that had never been seen in the history of computing. The first movers in cloud computing services found the open source software model most appealing, but to businesses today the attraction of open source is about the ability to develop a more flexible infrastructure and avoid vendor lock-in that often results from proprietary systems.

Published in: Technology
1 Comment
  • recapitulative article.
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Delivering Infrastructure-as-a-Service with Open Source Software

  1. 1. DeliveringInfrastructure-as-a-Service with OpenSource SoftwareMark R. HinkleVP of CommunityCloud.comTwitter: @mrhinkleEmail:
  2. 2. 2%whoami•  Responsible for Driving Adoption of CloudStack Open Source Cloud Computing Software•  Former manager of Zenoss Open Source project 100,000 users, 1.5 million downloads•  Former Linux Desktop Advocate (Zealot?)•  Former LinuxWorld Magazine Editor-in-Chief•  Open Management Consortium Conspirator•  Open Desktop Consortium Instigator•  Author - “Windows to Linux Business Desktop Migration” - Thomson•  NetDirector Project - Open Source Con guration Management Project•  Sometimes Author and Blogger at•  Start-up junkie, Glutton for punishment
  3. 3. 3Agenda1.  Cloud Computing Trends2.  Quick Cloud Computing Overview3.  Open Source Building Blocks for Cloud Computing4.  Open Source Tools for Cloud Management5.  Questions
  4. 4. Cloud Computing:Cloud Computing Trends
  5. 5. Recent Study on Cloud 5Computing Preferences•  521 IT Professionals Surveyed•, BitNami and Zenoss User Communities•  Conducted Q2 of 2011•  Publishing week of June 12th
  6. 6. Top Reasons For Cloud 6Computing Adoption
  7. 7. 7Open Source Usage
  8. 8. 8Cloud Service Model Usage Services Models Consumed by Cloud Computing Users in 2011
  9. 9. 9Why Open Source?•  Typically User-Driven to solve real problems•  Larger user base, users helping users•  Lower barrier to participation•  Aggressive release cycles – stay current with the state of the art•  Try before you “buy”, no Brochure-ware, no “Powerpoint software•  Open data, Open standards, Open APIs
  10. 10. Quick Cloud ComputingOverview: Or the Obligatory“What is the Cloud?” Slides
  11. 11. 11Five Characteristics of Clouds1. On-Demand Self-Service2. Broad Network Access3. Resource Pooling4. Rapid Elasticity5. Measured Service
  12. 12. 12Cloud Computing Service Models USER CLOUD a.k.a. SOFTWARE AS A SERVICE Single application, multi-tenancy, network-based, one-to-many delivery of applications, all users have same access to features. Examples:, Google Docs, Red Hat Network/RHEL DEVELOPMENT CLOUD a.k.a. PLATFORM-AS-A-SERVICE Application developer model, Application deployed to an elastic service that autoscales, low administrative overhead. No concept of virtual machines or operating system. Code it and deploy it. Examples: Google AppEngine, Windows Azure, Rackspace Site, Red Hat Makara SYSTEMS CLOUD a.k.a INFRASTRUCTURE-AS-A-SERVICE Servers and storage are made available in a scalable way over a network. Examples: EC2,Rackspace CloudFiles, OpenStack, CloudStack, Eucalyptus, Ubuntu Enterprise Cloud, OpenNebula
  13. 13. Deployment Models 13Public, Private & Hybrid Clouds
  14. 14. Building Compute Cloudswith Open Source Software
  15. 15. Cloud Still Requires 15Architectural Design•  Cloud Computing isn’t a “magical solution”•  Need to design your architecture with the end in mind•  As you build it make your infrastructure easily replicable
  16. 16. 16Open Source HypervisorsOpen Source•  Xen, Xen Cloud Platform (XCP)•  KVM – Kernel-based Virtualization•  VirtualBox* - Oracle supported Virtualization Solutions•  OpenVZ* - Container-based, Similar to Solaris Containers or BSD Zones•  LXC – User Space chrooted installsProprietary•  VMware•  Citrix Xenserver•  Microsoft Hyper-V•  Oracle VM
  17. 17. 17Open Source Compute Clouds Year Started License Hypervisors Supported 2010 (Development GPL Xenserver, VMware, Since 2008) KVM, Hyper-V 2008 GPL Xen, KVM, VMware 2010 (Developed by Apache Xen, KVM, Hyper-V NASA by Anso Labs peviously) Ubuntu 2009 (Karmic Koala) GPL Xen,KVM Enterprise Cloud 2009 (Development LGPL v3 VMware ESX and ESXi, 2006) Microsoft Hyper-V, Xen, KVM and Virtual Box
  18. 18. Open Source 18Cloud Computing Storage•  GlusterFS – Scale Out NAS system aggregating storage over Ethernet or Infiniband•  CEPH – Distributed file storage system•  OpenStack Object Storage (SWIFT) – Long-term storage object storage system•  Sheepdog – Distributed storage for KVM hypervisors•  NFS – Old standby, tried and true, not designed for cloud scale or performance
  19. 19. Cloud APIs Aren’t Created Equal 19Open Source Abstractions•  jclouds•  libcloud•  deltacloud•  fog
  20. 20. 20Private Cloud Architecture API Abstractions
  21. 21. Managing Clouds withOpen Source Tools
  22. 22. Automation Unlocks 22the Potential of the Cloud•  MeatCloud, Can’t Keep up with Cloud Computing•  Devops & Agile IT Philosophy•  Script Repetitive Tasks•  Automate, Automate, Automate
  23. 23. 23Why Open Source Tools?•  Aggressively Developed, Keep Pace with State of the Art•  User-Developed and Instrumented•  Easy to Assemble into Automated Toolchains
  24. 24. 24What Makes Tools Cloudy?•  Network Capable•  Cloud “Aware”•  Easy-to-Integrate•  Adhere to Open Standards•  Lend Themselves to Automation
  25. 25. 25The Myth of the NinesAvailability % Downtime per Downtime per Downtime per Year Month Week99.9% (three nines) 8.76 hours 43.2 minutes 10.1 minutes99.95% 4.38 hours 21.56 minutes 5.04 minutes99.99% (four nines) 52.6 minutes 4.32 minutes 1.01 minutes99.999% ( ve nines) 5.26 minutes 25.9 seconds 6.05 seconds99.9999% (six nines) 31.5 seconds 2.59 seconds .0605 seconds Average polling interval for monitoring? 5 minutes? Even superhuman operations people can’t be alerted and take action in under 5 minutes. One outage per year could drop service level to three nines or worse.
  26. 26. 264 Types of Management Tools Provisioning Installation of operating systems and other softwareConfiguration ManagementSets the parameters for servers, can specifyinstallation parameters Orchestration/Automation Automate tasks across systemsMonitoringRecords errors and health of IT infrastructure
  27. 27. 27Management ToolchainsToolchain (n): MonitoringA set of tools wherethe output of one Patching and Provisioningtool becomes theinput of another tool Con guration
  28. 28. Open Source 28Provisioning Tools Year Started Language License Installation TargetsCobbler 2007 Python GPL Red Hat, OpenSUSE Fedora, Debian, UbuntuKickstart ? Python GPL Most .dep and RPM based Linux distrosSpacewalk 2008 Perl, Python, Java GPL Fedora, CentosCrowbar 2011 Ruby Apache (Bare metal provisioning)
  29. 29. Open Source 29Configuration Management Tools Year Started Language License Client/ServerBcfg2 2003 Python BSD YesCfengine 1993 C Apache YesChef 2009 Ruby Apache Chef Solo – No Chef Server - YesPuppet 2004 Ruby GPL yes
  30. 30. Open Source 30Monitoring Tools Year Started License Language Type of Collection Monitoring MethodsCacti 2001 GPL PHP Performance SNMP, syslogNagios 1999 GPL C/PHP Availability SNMP,TCP, ICMP, IPMI, syslogOpenNMS 2000 GPL Java Availability/ SNMP, PerformanceZabbix 2001 GPL C/PHP Availability/ SNMP, TCP/ICMP, Performance and IPMI, Synthetic more TransactionsZenoss 2005 GPL Python Availability, SNMP, ICMP, SSH, Performance, Event syslog, WMI Management
  31. 31. Open Source 31Automation/Orchestration Tools Year Language License Client/ Support Started Server OrganizationAutomateIT 2009 Ruby GPL No NoneCapistrano 2006 Ruby MIT Yes NoneRunDeck 2010 Java Apache Yes DTO SolutionsFunc 2007 Python GPL Yes Fedora ProjectMCollective 2009 Ruby Apache Yes PuppetLabs
  32. 32. 32Automated Toolchain Capistrano Command and Application Service RunDeck Fabric Control Orchestration Func Provisioning Activity BCFG2 Con guration Cfengine System Con guration Chef Puppet Cloud: OS Install: Eucalyptus Kickstart Cloud Image OS OpenStack Cobbler Bootstrapping Launch Install CloudStack Spacewalk Abiquo
  33. 33. Questions?
  34. 34. 34Contact Me Professional: Personal: Professional: Personal: Professional: Mark R. Hinkle Personal: VP of Community Open Source Enthusiast Twitter: @mrhinkle
  35. 35. Delivering Infrastructure-as-a-Service with Open Source Software by Mark R. Hinkle is licensed under a Creative Commons Attribution- ShareAlike 3.0 United States License.