Hitchhiker's Guide to Open Source Cloud Computing



Similar documents
Overview: Building Open Source Cloud Computing Environments

Déployer son propre cloud avec OpenStack. GULL François Deppierraz

Cloud Computing and Big Data What Technical Writers Need to Know

JAVA IN THE CLOUD PAAS PLATFORM IN COMPARISON

ICCLab. Future Internet Research and Cloud Computing. Thomas Michael Bohnert, Christof Marti, Andy Edmonds

Open source software for building a private cloud

Mobile Cloud Computing T Open Source IaaS

Iron Chef: Bare Metal OpenStack

How To Compare Cloud Computing To Cloud Platforms And Cloud Computing

OpenStack Alberto Molina Coballes

Today. 1. Private Clouds. Private Cloud toolkits. Private Clouds and OpenStack Introduction

OpenStack Ecosystem and Xen Cloud Platform

Comparing Open Source Private Cloud (IaaS) Platforms

Open Source Toolchains for Cloud and OVF Management

Building a Cloud Computing Platform based on Open Source Software Donghoon Kim ( donghoon.kim@kt.com ) Yoonbum Huh ( huhbum@kt.

Virtualization & Cloud Computing (2W-VnCC)

Cloud Computing: Making the right choices

Open Source Technologies on Microsoft Azure

Scalable Architecture on Amazon AWS Cloud

Comparing Ganeti to other Private Cloud Platforms. Lance Albertson

Cloud Scale Distributed Data Storage. Jürmo Mehine

Apache Stratos Building a PaaS using OSGi and Equinox. Paul Fremantle CTO and Co- Founder, WSO2 CommiCer, Apache Stratos

OpenStack Introduction. November 4, 2015

CloudStack and Big Data. Sebastien May 22nd 2013 LinuxTag, Berlin

Introduction to OpenStack

Ubuntu OpenStack on VMware vsphere: A reference architecture for deploying OpenStack while limiting changes to existing infrastructure

DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing WHAT IS CLOUD COMPUTING? 2

Enterprise PaaS Evaluation Guide

APP DEVELOPMENT ON THE CLOUD MADE EASY WITH PAAS

Stackato PaaS Architecture: How it works and why.

A Comparison of Clouds: Amazon Web Services, Windows Azure, Google Cloud Platform, VMWare and Others (Fall 2012)

A Complete Open Cloud Storage, Virt, IaaS, PaaS. Dave Neary Open Source and Standards, Red Hat

SUSE Cloud 2.0. Pete Chadwick. Douglas Jarvis. Senior Product Manager Product Marketing Manager

How To Install Eucalyptus (Cont'D) On A Cloud) On An Ubuntu Or Linux (Contd) Or A Windows 7 (Cont') (Cont'T) (Bsd) (Dll) (Amd)

OpenStack Tutorial. IEEE CloudCom Bret Piatt Community Stacker

Open Source for Cloud Infrastructure

Microsoft Azure: Opção de Nuvem para Todo o Desenvolvedor. Danilo Bordini & Osvaldo Daibert

Onboarding VMs to Cisco OpenStack Private Cloud

Options in Open Source Virtualization and Cloud Computing. Andrew Hadinyoto Republic Polytechnic

RED HAT CLOUD SUITE FOR APPLICATIONS

Snakes on a cloud. A presentation of the OpenStack project. Thierry Carrez Release Manager, OpenStack

Using SUSE Cloud to Orchestrate Multiple Hypervisors and Storage at ADP

Introduction to Cloud Computing

Building a big IaaS cloud with Apache CloudStack

Red Hat Enterprise Linux The original cloud operating system

HO5604 Deploying MongoDB. A Scalable, Distributed Database with SUSE Cloud. Alejandro Bonilla. Sales Engineer abonilla@suse.com

Corso di Reti di Calcolatori M

OpenShift and Cloud Foundry PaaS: High-level Overview of Features and Architectures

Sistemi Operativi e Reti. Cloud Computing

CLOUD COMPUTING & SECURITY -A PRACTICAL APPROACH

NoSQL Data Base Basics

GigaSpaces Real-Time Analytics for Big Data

Maintaining Non-Stop Services with Multi Layer Monitoring

Integration in the cloud - IPaaS with Fuse technology. Charles Moulliard Apache Committer

OpenNebula Open Souce Solution for DC Virtualization. C12G Labs. Online Webinar

Hadoop on OpenStack Cloud. Dmitry Mescheryakov Software

Software Defined Everything

Extending your VMware Cloud Infrastructure with a Private Platform-as-a-Service

So What s the Big Deal?

The Virtualization Practice

2) Xen Hypervisor 3) UEC

Last time. Today. IaaS Providers. Amazon Web Services, overview

Cloud Platform Comparison: CloudStack, Eucalyptus, vcloud Director and OpenStack

OpenStack IaaS. Rhys Oxenham OSEC.pl BarCamp, Warsaw, Poland November 2013

Using SouthBound APIs to build an SDN Solution. Dan Mihai Dumitriu Midokura Feb 5 th, 2014

Virtualization. Nelson L. S. da Fonseca IEEE ComSoc Summer Scool Trento, July 9 th, 2015

SDN AND BARE METAL SWITCHES ARE LIKE PEANUT BUTTER AND JELLY: TWO GOOD THINGS THAT ARE GREAT TOGETHER!

Architecture des plates-formes IaaS Etat des lieux et perspectives

Getting Started Hacking on OpenNebula

Drive new Revenue With PaaS/IaaS. Ruslan Synytsky CTO, Jelastic

On- Prem MongoDB- as- a- Service Powered by the CumuLogic DBaaS Platform

Hunk & Elas=c MapReduce: Big Data Analy=cs on AWS

Cloud on TIEN Part I: OpenStack Cloud Deployment. Vasinee Siripoonya Electronic Government Agency of Thailand Kasidit Chanchio Thammasat

Nessus or Metasploit: Security Assessment of OpenStack Cloud

Amazon Elastic Beanstalk

Change the Game with HP Helion

Virtualization Management the ovirt way

FREE AND OPEN SOURCE SOFTWARE FOR CLOUD COMPUTING SERENA SPINOSO FULVIO VALENZA

OpenNebula Open Souce Solution for DC Virtualization

Big Data, Cloud Computing, Spatial Databases Steven Hagan Vice President Server Technologies

Introduction to Big Data Training

PaaS solutions evaluation

3 Case Studies of NoSQL and Java Apps in the Real World

Research of Enterprise Private Cloud Computing Platform Based on OpenStack. Abstract

Transcription:

Hitchhiker's Guide to Open Source Cloud Computing By Mark R. Hinkle Senior Director, Cloud Compu:ng Community Citrix Inc. Twi@er: @mrhinkle Blog: www.socializedsofware.com Email: mrhinkle@socializedsofware.com

%whoami Dedicated to the success of the Apache CloudStack & Xen Open Source Cloud Communities at Citrix Conduct Build A Cloud learning activities all over the world Joined Citrix via Cloud.com acquisition July 2011 Zenoss Open Source project to 100,000 users, 1.5 million downloads Former Linux Desktop Advocate (Zealot?) Former LinuxWorld Magazine Editor-in-Chief Open Management Consortium organizer Author - Windows to Linux Business Desktop Migration Thomson NetDirector Project - Open Source Configuration Management Project Sometimes Author and Blogger at SocializedSoftware.com NetworkWorld Open Source Subnet

Why Open Source and the Cloud? User- Driven Context from Solving Real Problems Lower Barrier to Par:cipa:on Larger user base, users helping users Aggressive release cycles stay current with the state- of- the- art Open Source innova:ng faster than commercial Open data, Open standards, Open APIs

Quick Cloud Computing Overview or the Obligatory What is the Cloud Explanation Infinite Probability Drive

Five Characteristics of Cloud 1. On- Demand Self- Service 2. Broad Network Access 3. Resource Pooling 4. Rapid Elas:city 5. Measured Service

Cloud 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: Salesforce.com, 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: VMware CloudFoundry, Google AppEngine, Windows Azure, Rackspace Sites, Red Hat OpenShift, Active State Stackato, Appfog 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, OpenNebula

Deployment Models: Public, Private & Hybrid

Building Open Source Clouds

Cloud Architecture

Hypervisors Open Source Xen, Xen Cloud Pla2orm (XCP) KVM Kernel- based Virtualiza@on VirtualBox* - Oracle supported Virtualiza:on Solu:ons OpenVZ* - Container- based, Similar to Solaris Containers or BSD Zones LXC User Space chrooted installs Proprietary VMware Citrix Xenserver (based MicrosoF Hyper- V OracleVM (Based on OS Xen)

Open Virtual Machine Formats Open Virtualiza@on Format (OVF) is an open standard for packaging and distribu:ng virtual appliances or more generally sofware to be run in virtual machines. Formats for hypervisors/cloud technologies: Amazon - AMI KVM QCOW2 VMware VMDK Xen IMG VHD Virtual Hard Disk - Hyper- V

Sourcing Cloud Appliances Tool/Project What you can do with them Bitnami Boxgrinder Oz SUSE Studio BitNami provides free, ready to run environments for your favorite open source web applica:ons and frameworks, including Drupal, Joomla!, Wordpress, PHP, Rails, Django and many more. BoxGrinder is a set of projects that help you grind out appliances for mul:ple virtualiza:on and Cloud providers Command- line tool that has the ability to create images for common Linux distribu:ons to run on KVM SUSE Studio supports building and deploying directly to cloud services such as Amazon EC2.

Scale-Up or Scale-Out Ver@cal Scaling (Scale- Up) Allocate addi:onal resources to VMs, requires a reboot, no need for distributed app logic, single- point of OS failure Horizontal Scaling (Scale- Out) Applica:on needs logic to work in distributed fashion (e.g. HA- Proxy and Apache, Hadoop)

Compute Clouds (IaaS) Apache CloudStack Eucalyptus OpenNebula Year Started License Virtualiza@on Technologies 2008 Apache Xenserver, Xen Cloud Plajorm, KVM, VMware (Hyper- V developing) 2006 GPL Xen, KVM, VMware (commercial version) 2005 Apache Xen, KVM, VMware OpenStack 2010 (Developed by NASA by Anso Labs previously) Apache VMware ESX and ESXi,, Xen, Xen Cloud Plajorm KVM, LXC, QEMU and Virtual Box Numerous companies are building cloud software on OpenStack including Nebula, Piston Inc., CloudScaling

OpenStack Ecosystem of Projects Iden:ty Services Keystone Dashboard Horizon Object Storage SwiF Ceph, Gluster Image Service Glance API Compute Nova KVM, VMware, Xen Cloud Plajorm Enterprise Message Queue based on Rabbit MQ (ESB) Quantum Networking Fabric REST API Advanced Cloud and Networking services accessing the Quantum API Firewall Service Gateway Service Plugins OpenvSwitch Quantum Plugin- ins 20 Collective projects hosted at: https://launchpad.net/openstack

Cloud APIs jclouds libcloud deltacloud fog

Cloud Computing Storage Project Descrip@on GlusterFS Ceph Scale Out NAS system aggrega:ng storage over Ethernet or Infiniband Distributed file storage system developed by DreamHost OpenStack Storage Sheepdog Long- term object storage system Distributed storage for KVM hypervisors

Platform-as-a-Service (PaaS) Project Year Started Sponsors Languages/Frameworks CloudFoundry 2011 VMware Spring for Java, Ruby for Rails and Sinatra, node.js, Grails, Scala on LiF and more via partners (e.g. Python, PHP) Cloudify 2012 Gigaspaces OpenShiF ** 2011 Red Hat Java, Ruby, PHP, Perl and Python Stackato* 2012 Ac:veState Java, Python, PHP, Ruby, Perl, Node.js, others WSO2 Stratus 2010 WSO2 Jboss, Java EE6

Software Defined Networking (SDN)

Overview of Software Defined Networking Application Layer Business Applica:ons Control Layer SDN Control Software Network Services Infrastructure Layer Network Devices Network Devices Network Devices Network Devices Network Devices Network Devices

Why SDN? Cloud Promise Centralized Configura@on and Automa@on Instant Self- Service Provisioning Elas@city and Scalability Designed for Failure Cloud Reality Without true virtualiza:on, network devices must s:ll be manually configured. In a physical network, it could take a long :me for network engineer to provision new services. By horizontally scaling up the physical network, elas:city is lost. Failover can be automated and physical network limita:ons can be alleviated. Source: Midokura

Open Flow OpenFlow enables networks to evolve, by giving a remote controller the power to modify the behavior of network devices, through a well- defined "forwarding instruc:on set". The growing OpenFlow ecosystem now includes routers, switches, virtual switches, and access points from a range of vendors. Image from http://www.openflow.org/documents/openflow-wp-latest.pdf

Software Defined Networking Project Description Floodlight The Floodlight controller is an enterprise- class, Apache- licensed, Java- based OpenFlow Controller. Indigo OpenStack Networking Quantum Indigo is an open source project to support OpenFlow on a range of physical switches. By leveraging hardware features of Ethernet switch ASICs, Indigo supports high rates for high port counts, up to 48 10- gigabit ports. Mul:ple gigabit plajorms with 10- gigabit uplinks are also supported. Pluggable, scalable, API- driven network and IP management Open vswitch Open vswitch is a open source (ASL 2.0), mul:layer virtual switch designed to enable massive network automa:on through programma:c extension, while s:ll suppor:ng standard management interfaces and protocols (e.g. NetFlow, sflow, SPAN, RSPAN, CLI, LACP, 802.1ag).

Big Data Deep Thought

1 Billion Facebook Users - October 2012 1200 Facebook Users in Millions 1000 800 600 400 200 0 Dec- 04 Mar- 05 Jun- 05 Sep- 05 Dec- 05 Mar- 06 Jun- 06 Sep- 06 Dec- 06 Mar- 07 Jun- 07 Sep- 07 Dec- 07 Mar- 08 Jun- 08 Sep- 08 Dec- 08 Mar- 09 Jun- 09 Sep- 09 Dec- 09 Mar- 10 Jun- 10 Sep- 10 Dec- 10 Mar- 11 Jun- 11 Sep- 11 Dec- 11 Mar- 12 Jun- 12 Sep- 12 Source: Benphoster.com

Twitter at 400M Tweets Per Day June 2012 450 400 350 Tweets in Millions 300 250 200 150 100 50 0 Jan- 07 Mar- 07 May- 07 Jul- 07 Sep- 07 Nov- 07 Jan- 08 Mar- 08 May- 08 Jul- 08 Sep- 08 Nov- 08 Jan- 09 Mar- 09 May- 09 Jul- 09 Sep- 09 Nov- 09 Jan- 10 Mar- 10 May- 10 Jul- 10 Sep- 10 Nov- 10 Jan- 11 Mar- 11 May- 11 Jul- 11 Sep- 11 Nov- 11 Jan- 12 Mar- 12 May- 12 Source :TheBigDataGroup.com

Big Data and Storage Infrastructure Data is growing faster than storage capacity and compu:ng power. Legacy systems hold organiza:ons back; storage sofware must include mul:- petabyte capacity, support poten:ally billions of objects, and provide applica:on performance awareness and agile provisioning. - Gartner, Big Data Challenges for the IT Infrastructure Team

Big Data Landscape Source: BigDataGroup.com

Open Source NoSQL Databases Name Type Description Apache Cassandra Wide Column Store/ Families API: many» Query Method: MapReduce, Replicaton:, Wri@en in: Java, Concurrency: eventually consistent, Misc: like "Big- Table on Amazon Dynamo alike", ini:ated by Facebook CouchDB Document Store API: Memcached API+protocol (binary and ASCII), most languages, Protocol: Memcached REST interface for cluster conf + management, Wri@en in: C/C++ + Erlang (clustering), Replica:on: Peer to Peer, fully consistent, Misc: Transparent topology changes during opera:on, provides memcached- compa:ble caching buckets HBase Wide Column Store/ Families API: Java / any writer, Protocol: any write call, Query Method: MapReduce Java / any exec, Replica:on: HDFS Replica:on, Wri@en in: Java Hypertable Wide Column Store/ Families PI: ThriF (Java, PHP, Perl, Python, Ruby, etc.), Protocol: ThriF, Query Method: HQL, na:ve ThriF API, Replica:on: HDFS Replica:on, Concurrency: MVCC, Consistency Model: Fully consistent Misc: High performance C++ implementa:on of Google's Bigtable. MongoDB Document Store API: BSON, Protocol: C, Query Method: dynamic object- based language & MapReduce, Replica:on: Master Slave & Auto- Sharding, Wri@en in: C++,Concurrency Redis Riak Key Value/ Tuple Store Key Value / Tuple Store API: Tons of languages, Wri@en in: C, Concurrency: in memory and saves asynchronous disk afer a defined :me. Append only mode available. Different kinds of fsync policies. Replica:on: Master / Slave, Misc: also lists, sets, sorted sets, hashes, queues. API: JSON, Protocol: REST, Query Method: MapReduce term matching, Scaling: Mul:ple Masters; Wri@en in: Erlang, Concurrency: eventually consistent (stronger then MVCC via Vector Clocks)

MapReduce Worker Node 1 Problem Data Map Master Node Worker Node 2 Solu:on Data Reduce Worker Node 3

Apache Hadoop Overview Handles large amounts of data Stores data in na:ve format Delivers linear scalability at low cost Resilient in case of infrastructure failures Transparent applica:on scalability Facts Apache top- level open source project One framework for storage and compute HDFS Scalable storage in Hadoop Distributed File System (HDFS) Compute via the MapReduce distributed processing plajorm Domain Specific Language (DSL) - Java

Hadoop Architecture Non-Relational DB Scripting Machine Learning Management Chuckwa Zookeeper Hive Data warehouse that provides SQL interface. Ad hoc projec:on of data structure to unstructured MapReduce Parallel programming Handles large data blocks HBase Column- oriented schema- less distributed DB modeled afer Google s BigTable Random real :me read/ write. Pig Plajorm for manipula:ng and analyzing large data sets. Scrip:ng language for analysts. HDFS Distributes & replicates data across machines Hadoop Common Mahout Machine learning libraries for recommenda:ons, clustering, classifica:ons and item sets. MapReduce Distributes & monitors tasks

Big Data Summary Quan:ty of Machine Created Data Increasing Dras:cally (examples: networked sensor data from mobile phones and GPS devices) Data manipula:on moving from batched to real- :me Cloud services giving everyone Big Data tools Consumer company speed and scale requirements driving efficiencies in Big Data storage and analy:cs New and broader number of data sources being meshed together Big Data Apps means using Big Data is faster and easier

Cloud Management Tools

Automation in the Cloud Meat Cloud Cloud Operations

4 Types of Management Tools Provisioning Installation of operating systems and other software Configuration Management Sets the parameters for servers, can specify installation parameters Orchestration/Automation Automate tasks across systems Monitoring Records errors and health of IT infrastructure

Management Toolchains Toolchain (n): A set of tools where the output of one tool becomes the input of another tool Patching and Provisioning Monitoring Configura:on

Provisioning Project Installation Targets Axemblr Provisionr Can provision 10s to 1000s of machines on various clouds. Cobbler JuJu Salt Cloud Crowbar Distributed virtual infrastructure using koan (kickstart of a network to PXE boot VMs) for Red Hat, OpenSUSE Fedora, Debian, Ubuntu VMs Public Clouds - Amazon Web Services HP Cloud, Private OpenStack clouds, Bare Metal via MAAS. Tool to provision salted VMs that can then be updated by a central server via ZeroMQ (Bare metal provisioning)

Configuration Management Tools Project Year Started Language License Client/Server Cfengine 1993 C Apache Yes Chef 2009 Ruby Apache Chef Solo No Chef Server - Yes Puppet 2004 Ruby GPL Yes & standalone Salt 2011 Python Apache yes

Automation/Orchestration Tools Project Capistrano RunDeck Func MCollec:ve Salt Scalr Descrip@on U:lity and framework for execu:ng commands in parallel on mul:ple remote machines, via SSH. It uses a simple DSL that allows you to define tasks, which may be applied to machines in certain roles Rundeck is an open- source process automa:on and command orchestra:on tool with a web console. Func provides a two- way authen:cated system for generically execu:ng tasks, integra:ons with puppet and cobbler. The Marione@e Collec:ve AKA MCollec:ve is a framework to build server orchestra:on or parallel job execu:on systems. Execute arbitrary shell commands or choose from dozens of pre- built modules of common (or complex) commands. Provide scaling across mul:ple cloud compu:ng plajorms, integrates with Chef.

Conceptual Automated Toolchain Generate Images SUSE Studio BoxGrinder BootStrapped Image CloudStack OpenStack Provision Cobbler SUSE Stuido Configura@on Puppet Chef Monitoring Nagios Zenoss Cac: Start/Stop Services RunDeck Capistrano MCollec:ve

NetFlix Open Source - ToolBag for AWS h]p://ne2lix.github.com

Goodbye and thanks for all the fish!

Questions? Slides Can be Viewed and Downloaded at: http://www.slideshare.net/socializedsoftware/ Copyright Mark R. Hinkle, available under the CCbySA license some rights reserved. 2012-2013

Contact Me Professional: mark.hinkle@citrix.com Personal: mrhinkle@gmail.com Professional: 919.228.8049 Professional: http://www.cloudstack.org Personal: http://www.socializedsoftware.com Mark R. Hinkle Senior Director, Cloud Computing Community Citrix Systems Inc. Open Source Enthusiast Twitter: @mrhinkle

Appendix

Additional Resources Devops Toolchains Group SoFware Defined Networking: The New Norm for Networks (Whitepaper) DevOps Wikipedia Page NoSQL- Database.org Ul:mate Guide to the Non- Rela:onal Universe Open Cloud Ini:a:ve NIST Cloud Compu:ng Plajorm Open Virtualiza:on Format Specs Cloudera: Twi@er Account Planet DevOps Nicira Whitepaper It s Time to Virtualize the Network Why Open vswitch FAQ

Monitoring Tools License Type of Monitoring Collec@on Methods Cac: / RRDTool GPL Performance SNMP, syslog Graphite Apache 2.0 Performance Agent Nagios GPL Availability SNMP,TCP, ICMP, IPMI, syslog Zabbix GPL Availability/ Performance and more Zenoss GPL Availability, Performance, Event Management SNMP, TCP/ICMP, IPMI, Synthe:c Transac:ons SNMP, ICMP, SSH, syslog, WMI