Build a Cloud Day
Sebastien Goasguen
Open Source Office, Citrix
Apache Committer and PMC member of Apache CloudStack
@sebgoa
Oct 10th 2013
London, England
BACD
BACD
• http://buildacloud.org
• #build_cloud
• Blogs, events, slides,
videos
• Open Source News in
Cloud Computing
• Focused on CloudStack
but not only
• A resource for an “Open
Cloud” strategy
BACD Agenda
• CloudStack Basics
– Paul Angus

• Business Use Cases
– Giles Sirett

• CloudStack Networking
– Geoff Higginbottom

• Lunch
BACD Agenda
• “Hi” from Control Circle
– Len Bellemore

• User Group News
– Giles Sirett

• Ceph in CloudStack
– Wido Den Hollander

• RiakCS in CloudStack
– John Burwell

• Getting Involved
– Sebastien Goasguen

• Beers
A bit of History
•
•
•
•
•

Original company VMOPs (2008)
Open source (GPLv3) as CloudStack
Acquired by Citrix (July 2011)
Relicensed under ASL v2 April 3, 2012
Accepted as Apache Incubating Project April
16, 2012
• First Apache release ACS 4.0 in November
2012
• CloudStack basics

Apache CloudStack is a top-level project at the Apache Software Foundation.
Apache CloudStack, CloudStack and CloudMonkey are registered trademarks
of the ASF.
Landscape

IaaS
IaaS is really:
• A Data Center Orchestrator
– Data storage
– Data movement
– Data processing

• That can:
– Handle failures
– Support large scale
– Be programmed
What is CloudStack ?
• Open source Infrastructure as a Service (IaaS)
solution.
• “Programmable” Data Center orchestrator

• Apache Software Foundation Top Level
Project (TLP)
Data Center Orchestrator
API (EC2 & CS)
Image Mgmt.

Self-service Portal
Dashboard

Load Balancers

Storage

Metering
Identity Mgmt.

FWs & VPNs

Compute

Network
How
• Tomcat, mysql
• Hypervisor: KVM, Xen, XS, ESx
• Storage: NFS, CLVM, Ceph…
apt-get install cloudstack-management
apt-get install cloudstack-agent
A nice UI
API
Query API
SDN = Yes
Large scale
storage = Yes
• CloudStack
“The Web Server of the Cloud”

Apache CloudStack is a top-level project at the Apache Software Foundation.
Apache CloudStack, CloudStack and CloudMonkey are registered trademarks
of the ASF.
Apache Software
Foundation
Why ASF ?
• Citrix Open Sourced CloudStack to:
– Build a community
– Facilitate the building of an ecosystem
– Faster time to market

• ASF highly recognized OSS foundation.
• ASF clear processes
• Individual contributions, companies have no
standing
Community

A
ASF Pros & Cons
• Pros:
– Vendor neutral
– No company affiliation
– No vendor lock-in

• Cons:
– Heavy processes ?
– Weak marketing ?
– Tad old-fashion ?
– Developer centric
Company involvement
Multiple

Contributors
Sungard: Announced last
week that 6 developers
were joining the Apache
project
Schuberg Philis: Big
contribution in
building/packaging and
Nicira support
SolidFire: New storage
backend with QoS
backend
ShapeBlue: User support
Basho: Support for
RiackCS
• Build your Cloud with ASF
software

Apache CloudStack is a top-level project at the Apache Software Foundation.
Apache CloudStack, CloudStack and CloudMonkey are registered trademarks
of the ASF.
Libcloud
• Python module that
provides a Cloud
Provider API abstraction
• Ability to write apps
using multiple providers
• Now with an improved
CloudStack driver
CloudStack + libcloud
from libcloud.compute.types import Provider
from libcloud.compute.providers import get_driver
Driver = get_driver(Provider.CLOUDSTACK)

conn=Driver(key=apikey,secret=secretkey,secure=Tru
e,host=host,path=path)
CloudStack Basic Zone
conn.list_locations()
images=conn.list_images()
offerings=conn.list_sizes()
conn.list_nodes()

conn.create_node(name='yoyo',image=images[0],size=
offerings[0], extra_args={'keypair':’testkey'})
jClouds
• Under Incubation at the
Apache Software
Foundation (ASF)
• Wrapper to multiple
cloud providers
• Basis of many Cloud
tools
Deltacloud
• Cloud Provider API
abstraction
• Good way to get a
DMTF CIMI interface
• Avoid lock-in for apps ?
Other Interfaces
AWS
import boto
import boto.ec2
accesskey="2IUSA5xkFHYHTIafpUx0pHcfLvt-dzw"
secretkey="oxV5Dhhk5ufNowey7OVDA”
region = boto.ec2.regioninfo.RegionInfo(name="ROOT",
endpoint="localhost")
conn = boto.connect_ec2(aws_access_key_id=accesskey,
aws_secret_access_key=secretkey, is_secure=False, region=region,
port=7080, path="/awsapi", api_version="2012-08-15")
images=conn.get_all_images()
res =
images[0].run(instance_type='m1.small',security_groups=['default'
])
GCE
https://github.com/NOPping/cloudstack-gce
$$ gce –project acs listmachinetypes
gce –project acs listmachinetypes
--project acs listmachinetypes
--project acs listmachinetypes
Items in zone/CH-GV2:
Items in zone/CH-GV2:
+-------------+--------------------------+--------+------+-----------+---------------------+-------------+--------------------------+--------+------+-----------+---------------------+---------+----------------------+-------------+
+---------+----------------------+-------------+
||
name
||
description
|| zone || cpus || memory-mb || scratch-disk-size-gb || maxname
description
zone
cpus
memory-mb
scratch-disk-size-gb
maxpds || max-total-pd-size-gb || deprecation ||
pds
max-total-pd-size-gb
deprecation
+-------------+--------------------------+--------+------+-----------+---------------------+-------------+--------------------------+--------+------+-----------+---------------------+---------+----------------------+-------------+
+---------+----------------------+-------------+
|| Micro
|| Micro 512mb 1cpu
|| CH-GV2 || 11
|| 512
||
||
Micro
Micro 512mb 1cpu
CH-GV2
512
||
||
||
|| Tiny
|| Tiny 1024mb 1cpu
|| CH-GV2 || 11
|| 1024
||
||
Tiny
Tiny 1024mb 1cpu
CH-GV2
1024
||
||
||
|| Small
|| Small 2048mb 2cpu
|| CH-GV2 || 22
|| 2048
||
||
Small
Small 2048mb 2cpu
CH-GV2
2048
||
||
||
|| Medium
|| Medium 4096mb 2cpu
|| CH-GV2 || 22
|| 4096
||
||
Medium
Medium 4096mb 2cpu
CH-GV2
4096
||
||
||
|| Large
|| Large 8192mb 4cpu
|| CH-GV2 || 44
|| 8182
||
||
Large
Large 8192mb 4cpu
CH-GV2
8182
||
||
||
|| Extra-large || Extra-large 16384mb 4cpu || CH-GV2 || 44
|| 16384
||
||
Extra-large
Extra-large 16384mb 4cpu
CH-GV2
16384
||
||
||
|| Huge
|| Huge 32184mb 8cpu
|| CH-GV2 || 88
|| 32184
||
||
Huge
Huge 32184mb 8cpu
CH-GV2
32184
||
||
||
+-------------+--------------------------+--------+------+-----------+---------------------+-------------+--------------------------+--------+------+-----------+---------------------+---------+----------------------+-------------+
+---------+----------------------+-------------+
Whirr

Apache

• Big Data Provisioning
tool
• Deploys Hadoop, cdh,
Hbase, Yarn, etc in the
Cloud
• Use jclouds
• Works with multiple
cloud providers
including CloudStack
Cloud

An ASF

• Build your Open Cloud with Apache Software
Foundation software
PaaS ?
Conference Nov 20-22
you and Info
•
•
•
•
•
•
•

Thank
Sebastien Goasguen
@sebgoa

Apache Top Level project
http://cloudstack.apache.org
#cloudstack on irc.freenode.net
@cloudstack on Twitter
http://www.slideshare.net/cloudstack
http://www.slideshare.net/sebastiengoasguen
http://www.youtube.com/diycloudcomputing

Build A Cloud Day London - Introduction

  • 1.
    Build a CloudDay Sebastien Goasguen Open Source Office, Citrix Apache Committer and PMC member of Apache CloudStack @sebgoa Oct 10th 2013 London, England
  • 2.
  • 3.
    BACD • http://buildacloud.org • #build_cloud •Blogs, events, slides, videos • Open Source News in Cloud Computing • Focused on CloudStack but not only • A resource for an “Open Cloud” strategy
  • 4.
    BACD Agenda • CloudStackBasics – Paul Angus • Business Use Cases – Giles Sirett • CloudStack Networking – Geoff Higginbottom • Lunch
  • 5.
    BACD Agenda • “Hi”from Control Circle – Len Bellemore • User Group News – Giles Sirett • Ceph in CloudStack – Wido Den Hollander • RiakCS in CloudStack – John Burwell • Getting Involved – Sebastien Goasguen • Beers
  • 6.
    A bit ofHistory • • • • • Original company VMOPs (2008) Open source (GPLv3) as CloudStack Acquired by Citrix (July 2011) Relicensed under ASL v2 April 3, 2012 Accepted as Apache Incubating Project April 16, 2012 • First Apache release ACS 4.0 in November 2012
  • 7.
    • CloudStack basics ApacheCloudStack is a top-level project at the Apache Software Foundation. Apache CloudStack, CloudStack and CloudMonkey are registered trademarks of the ASF.
  • 8.
  • 9.
    IaaS is really: •A Data Center Orchestrator – Data storage – Data movement – Data processing • That can: – Handle failures – Support large scale – Be programmed
  • 10.
    What is CloudStack? • Open source Infrastructure as a Service (IaaS) solution. • “Programmable” Data Center orchestrator • Apache Software Foundation Top Level Project (TLP)
  • 11.
    Data Center Orchestrator API(EC2 & CS) Image Mgmt. Self-service Portal Dashboard Load Balancers Storage Metering Identity Mgmt. FWs & VPNs Compute Network
  • 12.
    How • Tomcat, mysql •Hypervisor: KVM, Xen, XS, ESx • Storage: NFS, CLVM, Ceph… apt-get install cloudstack-management apt-get install cloudstack-agent
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
    • CloudStack “The WebServer of the Cloud” Apache CloudStack is a top-level project at the Apache Software Foundation. Apache CloudStack, CloudStack and CloudMonkey are registered trademarks of the ASF.
  • 19.
  • 20.
    Why ASF ? •Citrix Open Sourced CloudStack to: – Build a community – Facilitate the building of an ecosystem – Faster time to market • ASF highly recognized OSS foundation. • ASF clear processes • Individual contributions, companies have no standing
  • 21.
  • 22.
    ASF Pros &Cons • Pros: – Vendor neutral – No company affiliation – No vendor lock-in • Cons: – Heavy processes ? – Weak marketing ? – Tad old-fashion ? – Developer centric
  • 23.
  • 24.
    Multiple Contributors Sungard: Announced last weekthat 6 developers were joining the Apache project Schuberg Philis: Big contribution in building/packaging and Nicira support SolidFire: New storage backend with QoS backend ShapeBlue: User support Basho: Support for RiackCS
  • 25.
    • Build yourCloud with ASF software Apache CloudStack is a top-level project at the Apache Software Foundation. Apache CloudStack, CloudStack and CloudMonkey are registered trademarks of the ASF.
  • 26.
    Libcloud • Python modulethat provides a Cloud Provider API abstraction • Ability to write apps using multiple providers • Now with an improved CloudStack driver
  • 27.
    CloudStack + libcloud fromlibcloud.compute.types import Provider from libcloud.compute.providers import get_driver Driver = get_driver(Provider.CLOUDSTACK) conn=Driver(key=apikey,secret=secretkey,secure=Tru e,host=host,path=path)
  • 28.
  • 29.
    jClouds • Under Incubationat the Apache Software Foundation (ASF) • Wrapper to multiple cloud providers • Basis of many Cloud tools
  • 30.
    Deltacloud • Cloud ProviderAPI abstraction • Good way to get a DMTF CIMI interface • Avoid lock-in for apps ?
  • 31.
  • 32.
    AWS import boto import boto.ec2 accesskey="2IUSA5xkFHYHTIafpUx0pHcfLvt-dzw" secretkey="oxV5Dhhk5ufNowey7OVDA” region= boto.ec2.regioninfo.RegionInfo(name="ROOT", endpoint="localhost") conn = boto.connect_ec2(aws_access_key_id=accesskey, aws_secret_access_key=secretkey, is_secure=False, region=region, port=7080, path="/awsapi", api_version="2012-08-15") images=conn.get_all_images() res = images[0].run(instance_type='m1.small',security_groups=['default' ])
  • 33.
    GCE https://github.com/NOPping/cloudstack-gce $$ gce –projectacs listmachinetypes gce –project acs listmachinetypes --project acs listmachinetypes --project acs listmachinetypes Items in zone/CH-GV2: Items in zone/CH-GV2: +-------------+--------------------------+--------+------+-----------+---------------------+-------------+--------------------------+--------+------+-----------+---------------------+---------+----------------------+-------------+ +---------+----------------------+-------------+ || name || description || zone || cpus || memory-mb || scratch-disk-size-gb || maxname description zone cpus memory-mb scratch-disk-size-gb maxpds || max-total-pd-size-gb || deprecation || pds max-total-pd-size-gb deprecation +-------------+--------------------------+--------+------+-----------+---------------------+-------------+--------------------------+--------+------+-----------+---------------------+---------+----------------------+-------------+ +---------+----------------------+-------------+ || Micro || Micro 512mb 1cpu || CH-GV2 || 11 || 512 || || Micro Micro 512mb 1cpu CH-GV2 512 || || || || Tiny || Tiny 1024mb 1cpu || CH-GV2 || 11 || 1024 || || Tiny Tiny 1024mb 1cpu CH-GV2 1024 || || || || Small || Small 2048mb 2cpu || CH-GV2 || 22 || 2048 || || Small Small 2048mb 2cpu CH-GV2 2048 || || || || Medium || Medium 4096mb 2cpu || CH-GV2 || 22 || 4096 || || Medium Medium 4096mb 2cpu CH-GV2 4096 || || || || Large || Large 8192mb 4cpu || CH-GV2 || 44 || 8182 || || Large Large 8192mb 4cpu CH-GV2 8182 || || || || Extra-large || Extra-large 16384mb 4cpu || CH-GV2 || 44 || 16384 || || Extra-large Extra-large 16384mb 4cpu CH-GV2 16384 || || || || Huge || Huge 32184mb 8cpu || CH-GV2 || 88 || 32184 || || Huge Huge 32184mb 8cpu CH-GV2 32184 || || || +-------------+--------------------------+--------+------+-----------+---------------------+-------------+--------------------------+--------+------+-----------+---------------------+---------+----------------------+-------------+ +---------+----------------------+-------------+
  • 34.
    Whirr Apache • Big DataProvisioning tool • Deploys Hadoop, cdh, Hbase, Yarn, etc in the Cloud • Use jclouds • Works with multiple cloud providers including CloudStack
  • 35.
    Cloud An ASF • Buildyour Open Cloud with Apache Software Foundation software PaaS ?
  • 36.
  • 37.
    you and Info • • • • • • • Thank SebastienGoasguen @sebgoa Apache Top Level project http://cloudstack.apache.org #cloudstack on irc.freenode.net @cloudstack on Twitter http://www.slideshare.net/cloudstack http://www.slideshare.net/sebastiengoasguen http://www.youtube.com/diycloudcomputing