Build A Cloud Day London - Introduction

Preview:

Citation preview

Build a Cloud Day

Sebastien GoasguenOpen Source Office, Citrix

Apache Committer and PMC member of Apache CloudStack

@sebgoaOct 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

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

of the ASF.

• CloudStack basics

IaaS Landscape

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)

Load BalancersLoad Balancers

FWs & VPNsFWs & VPNs

DashboardDashboard

Identity Mgmt.Identity Mgmt.

Image Mgmt.Image Mgmt.

ComputeCompute

StorageStorage

NetworkNetwork

MeteringMeteringAPI (EC2 & CS)API (EC2 & CS) Self-service PortalSelf-service Portal

Data Center Orchestrator

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

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

of the ASF.

• CloudStack“The Web Server of the Cloud”

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

A Community

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 ContributorsSungard: Announced last

week that 6 developers were joining the Apache projectSchuberg Philis: Big contribution in building/packaging and Nicira supportSolidFire: New storage backend with QoS backendShapeBlue: User supportBasho: Support for RiackCS

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

of the ASF.

• Build your Cloud with ASF software

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=True,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

AWSimport 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 –project acs listmachinetypes--project acs listmachinetypes

Items in zone/CH-GV2:

+-------------+--------------------------+--------+------+-----------+----------------------+---------+----------------------+-------------+| name | description | zone | cpus | memory-mb | scratch-disk-size-gb | max-pds | max-total-pd-size-gb | deprecation |+-------------+--------------------------+--------+------+-----------+----------------------+---------+----------------------+-------------+| Micro | Micro 512mb 1cpu | CH-GV2 | 1 | 512 | | | | || Tiny | Tiny 1024mb 1cpu | CH-GV2 | 1 | 1024 | | | | || Small | Small 2048mb 2cpu | CH-GV2 | 2 | 2048 | | | | || Medium | Medium 4096mb 2cpu | CH-GV2 | 2 | 4096 | | | | || Large | Large 8192mb 4cpu | CH-GV2 | 4 | 8182 | | | | || Extra-large | Extra-large 16384mb 4cpu | CH-GV2 | 4 | 16384 | | | | || Huge | Huge 32184mb 8cpu | CH-GV2 | 8 | 32184 | | | | |+-------------+--------------------------+--------+------+-----------+----------------------+---------+----------------------+-------------+

$ gce –project acs listmachinetypes--project acs listmachinetypes

Items in zone/CH-GV2:

+-------------+--------------------------+--------+------+-----------+----------------------+---------+----------------------+-------------+| name | description | zone | cpus | memory-mb | scratch-disk-size-gb | max-pds | max-total-pd-size-gb | deprecation |+-------------+--------------------------+--------+------+-----------+----------------------+---------+----------------------+-------------+| Micro | Micro 512mb 1cpu | CH-GV2 | 1 | 512 | | | | || Tiny | Tiny 1024mb 1cpu | CH-GV2 | 1 | 1024 | | | | || Small | Small 2048mb 2cpu | CH-GV2 | 2 | 2048 | | | | || Medium | Medium 4096mb 2cpu | CH-GV2 | 2 | 4096 | | | | || Large | Large 8192mb 4cpu | CH-GV2 | 4 | 8182 | | | | || Extra-large | Extra-large 16384mb 4cpu | CH-GV2 | 4 | 16384 | | | | || Huge | Huge 32184mb 8cpu | CH-GV2 | 8 | 32184 | | | | |+-------------+--------------------------+--------+------+-----------+----------------------+---------+----------------------+-------------+

GCEhttps://github.com/NOPping/cloudstack-gce

Apache Whirr

• Big Data Provisioning tool

• Deploys Hadoop, cdh, Hbase, Yarn, etc in the Cloud

• Use jclouds• Works with multiple

cloud providers including CloudStack

An ASF Cloud

• Build your Open Cloud with Apache Software Foundation software

PaaS ?

Conference Nov 20-22

Thank you and Info

• 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

Sebastien Goasguen@sebgoa