cloudstack architecture

Download CloudStack Architecture

Post on 08-May-2015




4 download

Embed Size (px)


  • 1.CloudStack Architecture 4/29/2012 Chiradeep Vittal Alex Huang

2. Outline Overview of CloudStack Problem Definition Feature set overview System VMs System Architecture & Context Component View 3. What is CloudStack? Secure, multi-tenant cloud orchestration platform Turnkey platform for delivering IaaS clouds Build your cloud the way the Hypervisor agnosticworlds most successful clouds are built Scalable, secure and open Open source, open standards Deploys on premise or as a hosted solution Deliver cloud services faster and cheaper 4. CloudStack Supports Multiple Cloud Strategies Private CloudsPublic CloudsOn-premiseHosted Multi-tenantEnterprise CloudEnterprise Cloud Public Cloud Dedicated Dedicated Mix of shared andresources resourcesdedicated Security & total Security resourcescontrol SLA bound Elastic scaling Internal network 3rd party owned Pay as you go Managed byand operated Public internet,Enterprise or 3rdVPN accessparty 5. CloudStack Provides On-demand Access to Infrastructure Through a Self-Service Portal Org A Org B Users Admin AdminEnd User Users Users ComputeNetworkStorageAdmin 6. Open Flexible PlatformCompute HypervisorXenServerVMwareOracle VMKVM Bare metalStorage Block & ObjectFiberLocal DiskiSCSINFS Swift Channel Primary StorageSecondary StorageNetwork Network & Network Services Network Load IsolationFirewallVPNType balancer 7. Problem Definition Offer a scalable, flexible, manageable IAAS platform thatfollows established cloud computing paradigms IAAS Orchestrate physical and virtual resources to offer self-service infrastructure provisioning and monitoring Scalable 1 -> N hypervisors / VMs / virtual resources 1 -> N end users Flexible Handle new physical resource types Hypervisors, storage, networking Add new APIs Add new services Add new network models 8. Problem Definition (contd) Manageable Hide complexity of underlying resources Rich functional end-user and admin UI Admin API to automate operations Easy install, upgrade for small -> large clouds Simple scaling, automated resilience Established Paradigms EC2 inspired Semantic variations based on cloud provider needs, hypervisor capabilities 9. End-User ExperienceSelf-service Portal to Create &Manage VMs 10. Create Custom Virtual Machines via Service Offerings Select Operating System Windows, Linux Select Compute Offering CPU & RAM Select Disk Offering Volume Size Select Network Offering Network & Services Create VM 11. Dashboard Provides Overview of Consumed Resources Running, Stopped &Total VMs Public IPs Private networks Latest Events 12. Virtual Machine Management Users ChangeVM Operations Console Access VM Status Service OfferingStart CPU Utilized 2 CPUs4 CPUsStop 1 GB4 GB Network Read RAM RAMRestartNetwork Writes 20 GB 200 GBDestroy20 Mbps 100 Mbps 13. Volume & Snapshot ManagementVM 1 Add / Delete Volumes Volume Create Templates VolumeTemplate from Volumes Hourly WeeklySchedule NowSnapshotsDailyMonthly .View SnapshotHistory 14. Network & Network Services Create Networks and attach VMs Acquire public IP address for NAT &load balancing Control traffic to VM using ingressand egress firewall rules Set up rules to load balance trafficbetween VMs 15. CloudStack Deployment Architecture CloudStac Inter knet Hypervisor is the basic unit ofManage scale.mentZone 1 Server Cluster consists of one ore more hosts of same hypervisor L3 core All hosts in cluster have access to shared (primary) storagePod 1 Access Layer Pod N Secondary Pod is one or more clusters, . Storageusually with L2 switches.Cluster N Availability Zone has one or more pods, has access to .secondary storage. One or more zones representCluster 1 cloudHost 1 Primary StorageHost 2 16. CloudStack Cloud ArchitectureCloudData Center 1Data Center 2 Data Center 2Data Center 3 Zone 2 Zone 2Zone1Zone 3Zone 4 3 ZoneCloudStack Cloud can haveone or more AvailabilityZones (AZ). Data Center 2 Data Center 2Data Center 2Zone 2Zone 2ZoneZone 3 2Zone 3Zone 3- Do Not Distribute 17. Management Server ManagingMultiple ZonesCloudData Center 1Data Center 2 Single Management Server can Data Center 2 ManagemData Center 3 manage multiple zones entServer Zone 2 Zones can be geographically Zone 2 distributed but low latency links are Zone 3 expected for better performance Zone1Zone 4 3 Zone Single MS node can manage up to5K hosts. Multiple MS nodes can be deployed Data Center 2as cluster for scale or redundancy Data Center 2Data Center 2Zone 2Zone 2 Zone Zone 32Zone 3Zone 3- Do Not Distribute 18. Management Server Deployment Architecture Single-nodeMulti-node Deployment Deployment Managem entServerUser APIUser API Managem Managem entMySQL Load entServer DBBalancerServerAdmin APIAdmin API Managem MySQL entDBServer Back Up Replication DB MS is stateless. MS can be deployedas physical server or VM Single MS node can manage up to InfrastructureInfrastructure10K hosts. Multiple nodes can beResources Resourcesdeployed for scale or redundancy Commercial: RHEL 5.4+; FOSS:Ubuntu 10.0.4, Fedora 16 - Do Not Distribute 19. CloudStack StoragePrimary Storage Configured at Cluster-level. Close to hosts for betterperformance L3 switch Stores all disk volumes for VMs in a cluster Cluster can have one or more primary storagesPod 1L2 switch Local disk, iSCSI, FC or NFS Secondary Cluster 1Storage Host 1 PrimarySecondary StorageStorage Host 2 Configured at Zone-level Stores all Templates, ISOs and Snapshots Zone can have one or more secondary storages NFS, OpenStack Swift- Do Not Distribute 20. Core CloudStack Components VMHosts Servers onto which services will be provisioned Host VMPrimary Storage Network VM storageHostCluster Primary A grouping of hosts and their associated storage StoragePod Collection of clusters ClusterNetworkSecondary Logical network associated with service offeringsStorage ClusterSecondary Storage Template, snapshot and ISO storageCloudStack PodZone Collection of pods, network offerings and secondarystorage CloudStack PodManagement Server Farm Responsible for all management and provisioning tasksZone 21. Understanding the Role of Storage and Templates Primary Storage Cluster level storage for VMs Host Connected directly to hosts NFS, iSCSI, FC and LocalHost Secondary Storage Primary Storage Zone level storage for template, ISOs andCluster snapshots NFS or OpenStack Swift via CloudStack Pod System VM Templates and ISOs Imported into CloudStack Can be private or public Secondary Storage Zone Template 22. Provisioning Process1. User Requests Instance VM2. Provision Optional Network Services Host3. Copy instance template from Host secondary storage to primary storagePrimary Storage on appropriate clusterCluster4. Create any requested data volumes on primary storage for the cluster Pod5. Create instanceTemplate6. Start instanceSecondary Storage Zone 23. Citrix XenServerCloudStack Integrates directly with XenServer ManagerPool Master Snapshots at host levelXenServer PoolMaster Host System VM control channel at hostlevelXenServer Host Network management is host level XenServer Host XenServer Host XenServer Host XenServer Resource Pool 24. Oracle VMCloudStack Integrates with ovs-agentManager Snapshots at host level OVS Agent System VM control channel at OVM Hosthost level OVS Agent Network management is host OVM Hostlevel OVS Agent Does not use OVM Manager OVM Host All templates must be from Oracle OVS Agent CloudStack configures ocfs2 nodesOVM Host Requires helper cluster 25. RedHat Enterprise Linux (KVM) Integrates with libvirt using CloudCloudStackAgentManager Snapshots at host level Cloud Agent System VM control channel athost level Libvirt KVM Host Network management is hostlevel Cloud Agent Only RHEL 6, not RHEV Libvirt Also supports Ubuntu 10.04 KVM Host 26. VMware vSphere CloudStack Integration through vCenter Manager vSphere Host System VM control channel viavCenterCloudStack private network vSphere Host Snapshot and volume vSphere Clustermanagement via SecondaryStorage VM vSphere Host Networking via vSphere vSwitch vSphere Host vSphere HostvSphere Cluster Data Center 27. Management Server Interaction with Hypervisors Managem ent ServerXAPI HTTP vCenterAgentAgentXenServer KVMOVM ESX XS 5.6, 5.6FP1, 5.6 SP2, 6.0 ESX 4.1, 5.0 (coming) RHEL 6.0, 6.1, 6.2 (coming) OVM 2.2 Incremental Snapshots Full Snapshots Full Snapshots (not live) No Snapshots VHD VMDK QCOW2 RAW NFS, iSCSI, FC & Local disk NFS, iSCSI, FC & Local disk NFS, iSCSI & FC NFS & iSCSi Storage over-provisioning: Storage over-provisioning: Storage over-provisioning: No storage over-NFSNFS, iSCSI NFS provisioning 28. Multi-tenancy & Account ManagementCloud Resources Domain VMs, IPs,Snapshots Domain is a unit ofOrg A isolation that representsAdmin a customer org, businessunit or a reseller DomainReseller A Domain can haveAdmin Resources arbitrary levels of sub-Sub-DomainVMs, IPs,Org C Snapshots domainsAdmin A Domain can have one Accountor more accountsGroup A An Account represents Accountone or more users and is Group Bthe basic unit of isolation User 1 Admin can limitresources at the Account User 2or Domain levels 29. Physical Network Operations Users Admin and Cloud APICloudStackMgmt ServerCluster Router MySQLLoad BalancerAvailability Zone L3 Core SwitchAccess LayerSwitchesSecondary Servers Storage Pod 1 Pod 2Pod 3Pod N 30. Layer 3 cloud networkingWebDB WebVM VM VMWebDBSecurity Security GroupGroupWebWebDBVM VM VMWebWebVM VM 31. Guest Networks with L3 isolationPublic Public IP Guest GuestInternet address 1 VMaddress Guest 1 L2Guest Switch 2 VMaddress Guest Guest 1 VMaddressL3 Core Pod 2 L2Switch10.1.8.1 2 Guest GuestLoad10.1.16. 2 VMaddress Pod 3 L2Balancer12 Guest Guest 2 VM address 3 1 VM Guest address 3 Guest Guest 1 VM address 4 32. Virtual Networks (L2 iso