What are clouds made from


Published on

A look at what a cloud really is, and how to choose between clouds.

Published in: Technology, Business
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Introduce what I am currently working on.This talk is not:How to “move” old apps to the cloudA talk about XenThis talk is about:How clouds are buildAnd how that affects developersCheck who has:Built a cloud app already?Looking to build a cloud app?Looking to build a cloud?Looking to develop cloud software?
  • Lets make sure we are talking the same languageMany people are confusing what Cloud computing is, which what drives the move to using Cloud
  • User experience is keyConsumersation of IT: it just works, like a kettleGlobal reach – users from all timezones – when is downtime? (HSBC advert)Overnight growth: no time to buy serversPushing for 100% availability, no matter what load
  • Can’t just avoid failureApps need to be written to deal with failureVirtualization useful, but bare metal provisioning also useful in some cases
  • Cloud Workload vs Traditional WorkloadAccept Failure … and deal with it!Old world – server virtualizationChange in abstraction delivers economies of scale
  • http://technet.microsoft.com/en-us/magazine/hh509051.aspxIts disruptive, old apps probably will not work well in the cloud.NIST definition:http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf
  • Contrast to existing server deploymentHorizontally Scalable:consider upgrade of storage system as you add more hypervisorsIn the cloud you add pods of servers (or containers of servers)Self-Service APIs:no need to wait for things to be rewired and turned onSee real picture: http://blogs.technet.com/b/msdatacenters/archive/2011/07/20/the-cloud-infrastructure-journey-from-containers-to-modularity-long-live-containment.aspx
  • http://en.wikipedia.org/wiki/File:Cloud_computing_layers.pngLike OSI layer model, it has fuzzy linesNIST cloud definition: http://www.nist.gov/itl/cloud/index.cfmPaaS = integrated Dev environment
  • Introduce the nuts and bolts of an IaaS cloud
  • You get a virtual slice of a machine
  • You don’t get to see what VMs go on what servers, but you do get to see:- Regions=geographical areas, data centre(s)- Availability zones=redundancy inside bits of data centreConsider Amazon outages that people Netflix survivedResponse time: be close to your usersAvailability: keep working if everything fails
  • Remote is a persistent disk, a live(ish) block copy (boot from volume)Local is faster, but not persistent, less network issues, cheaper, but you loose data.Hybrid approachExternal ramdisk and kernelConsider a database on Amazon – latency issues with remote disk
  • This is really where cloud can get confusing…Consider three tired web app
  • Introduce the nuts and bolts of an IaaS cloud
  • Diagram from:http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.1/html/Messaging_User_Guide/sect-Messaging_User_Guide-Introduction_to_RHM-The_AMQP_0_10_Model.html
  • Many of you know Amazon, lets look at Rackspace instead
  • Based on OpenStack and XenServer: what I work on.Lets look at this from a user perspecitveStorage:Use local disk (like amazon S3 based images)Add Block Storage, if needed (EBS)Backup into CloudFiles Object storage (S3)
  • Now lets dig down to the DevOps guy who installs this stuff
  • Shared services:IdentityImage service (sets of objects + metadata, sent to compute = image)Key design tenants:Open Design, API, etc.Pluggable
  • http://www.openstack.org/themes/openstack/images/essex/launching-instances.jpg
  • http://docs.openstack.org/essex/openstack-compute/admin/content/logical-architecture.htmlAPI + Dashboard: How you access the systemIdentity: Account managementSwift:storage distributed across multiple disksMassive rsync loopNote:Volume and Network being pulled out as separate components
  • Lets look at how an image is launched in OpenStack
  • Availability = your provider goes bustOr your provider goes down
  • APIs:Standards are earlyCIMI:http://dmtf.org/standards/cloudOCCI: http://occi-wg.org/NIST cloud definition: http://www.nist.gov/itl/cloud/index.cfm
  • DevOps: Juju provides service orchestration
  • What are clouds made from

    1. 1. What are Clouds made of?… and what that means to developersJohn Garbutt, Senior Software Developer, Citrix28th June 2012
    2. 2. What is Cloud Computing?
    3. 3. User Experience is King When did you last see this? Down for Maintenance
    4. 4. Cloud is not Server Virtualization ++ …it’s about a new architecture …for apps and infrastructure
    5. 5. Infrastructure Assumption Shift Avoid Failure Accept Failure
    6. 6. Cloud is…• On-demand Self-Service• Broad Network Access• Multi-Tenant Resource Pooling• Rapid Elasticity• Measured Service
    7. 7. … that means• Horizontally Scalable• Commodity Hardware• Self-Service APIs• VMs may die• App aim to be always available• Persistent Object Storage
    8. 8. Cloud Deployment Models• Public• Private (+ Hosted)• Community• Hybrid
    9. 9. Service Models beneath SaaS IaaS IaaS++ PaaS• Virtual Machine • (Non-)Relational DB • Source Control• Volume • Load Balancer • Staging / Deployment• Floating IP Address • Message Queue • Auto-scale• Amazon EC2 • Amazon RDS • Microsoft Azure• Dedicated Servers? • Managed Servers? • Managed Hosting?
    10. 10. What is in a IaaS cloud?
    11. 11. IaaS Cloud API Cloud Operating System Compute Storage Network
    12. 12. Compute• Hypervisor or Bare metal• Shared or Dedicated Hardware• Images: Windows vs Linux vs XenApp• Performance vs Price• GPU• MapReduce
    13. 13. Availability Zones vs Regions
    14. 14. VM Storage Options
    15. 15. Distributed Block Object File System• Hard disk blocks • Buckets + Blobs • Hierarchy of files• Usually persisted • Eventual consistency • Globally consistent• Single user • Many readers/writers • Many readers/writers• EBS, RBD (Ceph) • S3, Swift • GlusterFS, HDFS• Live VM Disk • Limited size blob • Document hierarchy
    16. 16. Networking• APIs not wiring• Flat vs Isolated Networks• Floating IPs• Load Balancing• Security Groups & Firewalls• VPN & Bridging• Integration with current network
    17. 17. What is in a PaaS cloud?
    18. 18. Useful Building Blocks• Database• Load Balancer• Message Queue (AMQP)• Source Control• Deployment Tools• Integrated Dev Environment
    19. 19. Example Cloud: RackspaceIaaS++, Hosted Private Cloud and Hosting
    20. 20. Rackspace Cloud 2 1 4 3 http://www.rackspace.com/cloud/nextgen/
    21. 21. Rackspace RackConnect™ 1 2 3 http://www.rackspace.com/hosting_solutions/hybrid_hosting/rackconnect/
    22. 22. How does OpenStack work?
    23. 23. OpenStackThe OpenSource Cloud Operating System
    24. 24. 16 5 2 7 3 4
    25. 25. How should I deploy my app?
    26. 26. How do I pick a Cloud?• Technology• Support• Demand patterns• Compliance• Security• Cloud lock-in
    27. 27. Cloud Lock-in• Move between platform• Access Data• APIs and Tools• VM images• Networking• Storage Options• Platforms
    28. 28. PaaS vs IaaS• Lock-in: ᵒTechnology ᵒCloud Vendor ᵒCloud Location• IaaS + DevOps• Vim vs Visual Studio?
    29. 29. Should I deploy on a Private Cloud?• Cost of Public Cloud • Rate of Growth• Sensitive Data • Administration costs• More Control • Up-front costs• Customer Request • Can you really do better security?
    30. 30. Citrix CloudPlatformPowered by Apache CloudStack• Secure, multi-tenant cloud orchestration platform ᵒTurnkey IaaS cloud ᵒHypervisor agnostic ᵒWorks well with Citrix XenServer and Citrix Netscaler ᵒHighly scalable, secure and open ᵒComplete Self-service portal ᵒDeploy on premise or from a hosting partner ᵒFully Supported by Citrix ᵒIn production in over 100 clouds ᵒSupports Traditional and Cloud Workloadshttp://www.citrix.com/cloudstack
    31. 31. OpenStack• OpenStack has a huge ecosystem• Supports KVM and XenServer, others• XenServer+OpenStack used by Rackspace & Internap• http://wiki.openstack.org/XenServer/GettingStarted• http://wiki.openstack.org/HowToContribute
    32. 32. Work better. Live better.