Xen and Apache cloudstack
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Xen and Apache cloudstack

on

  • 10,636 views

CloudStack, the world's leading open-source cloud infrastructure platform, was recently donated to the Apache Foundation, and is now an incubated Apache project. Ewan Mellor, Director of Engineering ...

CloudStack, the world's leading open-source cloud infrastructure platform, was recently donated to the Apache Foundation, and is now an incubated Apache project. Ewan Mellor, Director of Engineering in the Citrix Cloud Platforms Group will describe the CloudStack project and explain why Xen is the pre-eminent hypervisor in public clouds today. He will describe the changes coming in CloudStack in the next 12 months, and how they are going to change the way that Xen is consumed in public and private clouds next year.

Statistics

Views

Total Views
10,636
Views on SlideShare
6,136
Embed Views
4,500

Actions

Likes
5
Downloads
293
Comments
0

13 Embeds 4,500

http://www.xen.org 3039
http://xen.org 1163
http://www.xenproject.org 125
http://www-archive.xenproject.org 84
http://staging.xen.org 21
http://xen.xensource.com 18
http://www.toddpigram.com 17
http://xenproject.org 13
http://xenorg.cloudaccess.net 10
http://translate.googleusercontent.com 6
https://twitter.com 2
http://twitter.com 1
http://www.xen.org. 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • We’re an unusual Apache Incubator project. The code has been open-source for a long time (GPLv3) and it is a mature codebase (version 4.0 coming RSN). This has lead to a number of challenges. We’ve actually had developers say to us that they don’t want to get involved because it looks like all the problems are already solved!If there’s anything at all that comes out of this talk, I would like it to be for you all to know that there are actually plenty of interesting problems left to solve in cloud infrastructure! Hopefully some of you would like to get involved in those things too.
  • vSphere (ESX as we used to call it) is still a great hypervisor, and we rarely have problems with it. Of course, it comes with a cost, especially since you need the full richness of vCenter and the vSphere suite for monitoring and management. KVM is also a good hypervisor, but we have deeper integration with XenServer through the XenAPI, and the great work that the xapi team does. So XenServer tends to work better than KVM just because of the richer, easier integration that we can do.What doesn’t work so well?Things that we’ve already fixed! It is common for people to be running systems without hotfixes for known problems. Frustrating, but that’s a product quality issue in that we can’t rely on service providers to be running XenCenter to check for updates every day.People who don’t use PV drivers (surprisingly common). Providers often don’t control (or don’t want to control) the guest. Improving the delivery mechanisms for in-guest drivers and agents would make big difference.Storage going away. NFS servers can go bad, and that causes a real mess.
  • The management cluster includes a database cluster as well as the CloudStack servers themselves.
  • [ kevin: say what it does first (it stores VM disks) ]
  • [ kevin: I think you want to define terms then use them in the deployment arch slide ]The core components of a CloudStack implementation are:Hosts – Hosts are servers from at least one of the supported virtualization providers. CloudStack fully supports hosts from multiple providers, but does not convert VM images from one hypervisor type to another. Depending on the hypervisor, a “host” may be a higher level concept. For example, in XenServer a CloudStack “host” is equivalent to a XenServer resource pool and the “host” entry is the pool master.Primary Storage – Primary storage is the hypervisor level storage containing the deployed VM storage. Primary storage options will vary by hypervisor, and depending upon the hypervisor selected, CloudStack may impose requirements upon it.Cluster – Host groups are combined into Clusters which contain the primary storage options for the Cluster. Primary storage isn’t shared outside of a Cluster. In the case of CloudStack, a Cluster in of itself does not imply modification of any clustering concept within the hypervisor. For example, in XenServer a resource pool is a host to CloudStack, and CloudStack does not create a super set of Cluster functionality for XenServer. Pod -- Host groups are combined first into Clusters and then into Pods. For many customers, a pod represents a high level physical concept like a server rackNetwork – Network is the logical and physical network associated with service offerings. Multiple concurrent network service offerings and topologies can be supported within CloudStackSecondary Storage – Secondary storage is the storage system used for template and ISO management. It also is where snapshot events occur.Zone – A zone is a collection pods to form some level of service availability. While Amazon EC2 defines an availability zone as a data center, CloudStack keeps the concept more abstract allowing cloud operators to have multiple availability zones within a given data center.Management Server Farm – The CloudStack management server farm is a grouping of CentOS/RHEL CloudStack servers forming a web farm, with an underlying MySQL cluster database. The management server farm can manage multiple Zones, and can be virtualized.

Xen and Apache cloudstack Presentation Transcript

  • 1. Xen and CloudStackEwan MellorDirector, Engineering, Open-source Cloud PlatformsCitrix Systems
  • 2. Agenda• What is CloudStack?• Move to the Apache Foundation• CloudStack architecture on Xen• The future for CloudStack• Developing on CloudStack
  • 3. CloudStack is…• Infrastructure-as-a-Service software• For people to build Amazon-style clouds – either as a public service, – or as a private cloud within your own organization.
  • 4. CloudStack is…Compute Hypervisor XenServer Oracle VM vSphere KVM Bare metalStorage Block & Object Fiber Local Disk iSCSI NFS Swift ChannelNetwork Network & Network Services Network Load Isolation Firewall VPN Type balancer
  • 5. CloudStack versus OpenStackCloudStack OpenStackApache Foundation OpenStack Foundation(incubating) (founding in progress)2008-present 2010-presentJava PythonFairly centralized Aggressively distributedComplete solution More of a framework
  • 6. Apache incubation• Citrix donated the CloudStack code to the Apache Software Foundation and Apache Incubator• The project now needs to prove that it can operate openly and independent of Citrix• If it can do that, it can be accepted as a top-level Apache project.
  • 7. CloudStack and XenMost CloudStack users choose Xen or XenServer Xen VMware KVMIt is the combination that works the best!
  • 8. CloudStack is…• A cluster of management servers• An orchestration engine• State and user management• Region, zone, pod, cluster model• A large collection of effectors• System VMs• Usage reporting• User interface
  • 9. Users RouterManagementcluster Load balancer L3 core switchAccess layer switches Servers Secondary Storage Pod 1 Pod 2 Pod 3 Pod N
  • 10. Two types of storage Primary storage• Stores virtual disks L3 switch• Configured at cluster level• Close to hosts for better performance• Requires high IOPS Pod 1 L2 switch Secondary Cluster 1 storage Host 1 Primary Secondary storage Host 2 storage• Stores templates, ISOs and snapshots• Configured at zone level• Zone can have one or more• High capacity, low cost
  • 11. Users RouterManagementcluster Load balancer L3 core switchAccess layer switches Servers Secondary Storage Pod 1 Pod 2 Pod 3 Pod N
  • 12. Networking features• Choice of network isolation – Physical, VLAN, L3 (anti-spoof), overlay (GRE)• Multiple networks – Shared networks, project networks• IPAM / DHCP• Gateway (inc VRRP)• VPN, stateful firewall, NAT, port forwarding• Traffic monitoring• Load balancing• User-data / password-change services
  • 13. Virtual network topologiesCS Virtual Router provides network services External devices provide network services Guest network Guest networkPublic network Public network Guest Guest 10.1.1.1 VM 1 10.1.1.1 VM 1 SRX CS firewall Guest Guest Virtual 10.1.1.3 VM 2 10.1.1.3 VM 2 Router NetScaler DHCP, DNS, NAT, Guest Guest 10.1.1.4 VM 3 LB 10.1.1.4 VM 3 LB, VPN Guest Guest 10.1.1.5 VM 4 10.1.1.5 VM 4 CS DHCP, DNS Virtual Router
  • 14. Multi-tier virtual network topology Guest network Guest network Guest networkPublic network App VM 10.1.2.31 1 10.1.3.21 Web VM 10.1.1.1 1 10.1.2.21 SRX firewall App VM 10.1.2.24 2 10.1.3.45 Web VM 10.1.1.3 2 10.1.2.18 Netscaler Web VM LB 3 10.1.2.38 DB VM 1 10.1.1.4 10.1.3.24 Web VM 10.1.1.5 4 10.1.2.39 DHCP, DNS, CS DHCP, CS DHCP, DNS CS user-data Virtual DNS, Virtual user-data, Virtual Router user-data Router NAT, VPN Router Public network
  • 15. Users RouterManagementcluster Load balancer L3 core switchAccess layer switches Servers Secondary Storage Pod 1 Pod 2 Pod 3 Pod N
  • 16. Users RouterManagementcluster Load balancer L3 core switchAccess layer switches Servers Secondary Storage Pod 1 Pod 2 Pod 3 Pod N System VMs Customer VMs
  • 17. Driver domainsControl domain Guest VMn Driver Domain(dom0) e.g. • Disk Apps • Network PV Back Ends PV Front Ends PV Back End HW Drivers HW Driver Guest OS Kernel Xen Hypervisor Host HWI/O Memory CPUs 18
  • 18. The road ahead
  • 19. The future for CloudStack• Disentangle some core components – Make it easier for people to work on subsystems – Make it easier to scale the API layers
  • 20. S3 API system VM S3 API NFS, CIFS, HDFS, 3rd- party object S3 API VM store API, …S3 API Object store VM… … … (e.g., NetApp, Hadoop, …) S3 API VM
  • 21. The future for CloudStack• Absorb new changes from Xen and XS – Storage migration – The Windsor architecture – I/O subsystem changes
  • 22. The future for CloudStack• New object storage systems – Caringo CAStor – HDFS – Riak CS• New block storage systems – GlusterFS? – Ceph?• Open vSwitch / OpenFlow / VXLAN
  • 23. DevCloud
  • 24. DevCloud – What is inside?• VirtualBox VM – Xen Cloud Platform – Ubuntu 12.04 dom0 (aka Kronos) • JVM, Tomcat, developer tools • NFS server • MySQL – Working, pre-configured CloudStack – System VMs – Tiny Linux template
  • 25. Why?• Eliminates – need for another machine / hypervisor – Primary and secondary storage – Networking, VLAN, etc – Install and configuration of environment• Disposable changes – Revert to snapshot
  • 26. Run• Start the DevCloud VM from VirtualBox UI• Access the CloudStack UI – http://localhost:8080/client• Access the dom0 – ssh root@localhost –p 2222• From the UI, enable the zone – System VMs will start up
  • 27. CloudStack architecture
  • 28. Management Server Cluster  MS is stateless. MS can be deployed as physical server or VM MySQLUser API Management  Single MS node can Server Load manage up to 10K Balancer Replication hosts. Multiple nodesAdmin API Management can be deployed for Server scale or redundancy Replica Infrastructure Resources
  • 29. Components• Hosts • Servers onto which services will be VM provisioned Host• Primary Storage Network VM • VM disk storage Host• Cluster Primar • A grouping of hosts and their associated y storage Storag e• Pod Cluster • Collection of clusters in the same failure boundary Seconda ry Cluster• Network Storage • Logical network associated with service offerings CloudStack Pod• Secondary Storage • Template, snapshot and ISO storage CloudStack Pod• Zone Zone • Collection of pods, network offerings and secondary storage
  • 30. Deployment ArchitectureManagement Internet  Hypervisor is the basic Server Cluster unit of scale.Zone 1  Cluster consists of one ore more hosts of same L3 hypervisorPod 1 Pod N  All hosts in cluster have L2 Secondar access to shared …. y (primary) storage Cluster N Storage  Pod is one or more clusters, usually with L2 …. switches. Cluster 1  Availability Zone has one Host 1 or more pods, has Primary access to secondary Host 2 Storage storage.  One or more zones
  • 31. DevCloud step-by-step
  • 32. Overview• Install Virtual Box• Download DevCloud virtual machine• Install DevCloud VM• Run the VM• Login to the CloudStack GUI• Start a CloudStack VM.
  • 33. Virtual Box• Download / install from Oracle• Ensure that VT-d and virtualization extensions are enabled in your laptop CPU• Recommend at least 2 GB for DevCloud VM
  • 34. DevCloud VM• Download from http://download.cloud.com/templates/devcl oud/DevCloud.ova• Latest install instructions here: http://wiki.cloudstack.org/display/COMM/DevClo ud• Import DevCloud into VirtualBox – Change memory allocation to 2 GB• Snapshot for known good state