What is Apache CloudStack?• CloudStack is an open source Infrastructure-as –a-Service (IaaS) orchestration platform that enables users to build, manage and deploy compute cloud environments.• CloudStack is a Top-Level Project at the Apache Software Foundation.
Graphical User Interface• CloudStack offers an administrators Web interface, used for provisioning and managing the cloud, as well as an end-users Web interface, used for running VMs and managing VM templates.• The UI can be customized to reflect the desired service provider or enterprise look and feel.
• CloudStack Web Services Query HTTP API is loosely based on the REST architecture and allows developers to create new management solutions or integrate existing systems with CloudStack. It supports output in both XML and JSON.• EC2/S3 support (translation layer) is also present.
Benefits of CloudStack Workforce Leverage Self Service Remove IT as a service delivery critical path Management Automation Reduce IT operational costs Workload Standardization Consistent application and service deployment Capital Leverage Usage Metering Visibility into user and line of business usage Centralized Management Manage complete infrastructure, regardless of scale Smarter Virtualization Drive reduced capital requirements
Create Custom Virtual Machines via ServiceOfferings
Dashboard Provides Overview of Consumed Resources• Running, Stopped & Total VMs• Public IPs• Private networks• Latest Events
Virtual Machine Management Users Change VM Operations Console Access VM Status Service Offering Start • CPU Utilized 2 CPUs 4 CPUs Stop 1 GB RAM 4 GB RAM • Network Read 20 GB 200 GB Restart • Network Writes 20 Mbps 100 Mbps Destroy
Volume & Snapshot Management Add / Delete VM 1 Volumes Volume Create Templates Volume Template from Volumes Hourly Weekly Schedule Now Snapshots Daily Monthly View Snapshot History …. 12/2/2012 7.30 am 2/2/2012 7.30 am
Network & Network Services • Create Networks and attach VMs • Acquire public IP address for NAT & load balancing• Control traffic to VM using ingress and egress firewall rules • Set up rules to load balance traffic between VMs
CloudStack Architecture (OSS/BSS, Monitoring, Identity Management , Etc) User Interface Developer API Operational Integration Administrator End User Console Amazon* Availability and Security Image Libraries Integration API snapshots LB HA Monitoring Application Catalog Dynamic Workload Management Resource Management Custom Templates Operating System ISOs Servers Storage Network Service Management (Metering, Accounts, etc.) Virtualization Layer Servers Network Storage
Cloud Infrastructure Overview - Summary• One or more hosts grouped into a cluster Secondary• One or more clusters grouped into a Management Storage Server pod• One or more pods grouped into a zone• One or more zones controlled by MySQL one management server Cloud_db
Components• Hosts • Servers onto which services will be provisioned VM• Primary Storage Host • VM disk storage Network VM• Cluster Host • A grouping of hosts and their associated storage Primary• Pod Storage • Collection of clusters in the same failure boundary• Network Cluster • Logical network associated with service offerings Secondary Storage Cluster• Secondary Storage • Template, snapshot and ISO storage CloudStack Pod• Zone • Collection of pods, network offerings and secondary storage CloudStack Pod• Management Server Farm • Management and provisioning tasks Zone
CloudStack Infrastructure - Overview• CloudStack provides a number of ‘infrastructure’ pieces, external to the management server that provide scalable services. • Secondary Storage (SSVM) • Console Proxy (CPVM) • Virtual Router (VR or domR)
Secondary Storage• Secondary Storage - provides storage for machine images and snapshots• Secondary Storage VM - provides stateless and scalable management and interaction with Secondary Storage.
Console Proxy• Hypervisors provide access to the ‘console’ of a virtual machine generally via VNC.• Accessing it requires direct access to the hypervisor - including credentials into the hypervisor directly.• CPVM proxies access to the VNC session and provides access control so that others can’t get access.• Automatically scales to handle demand of console sessions.• Provides an AJAX interface that is usable on virtually any device.
Virtual router• Lowest common denominator (so far) is a virtual machine.• Provides a number of services • DHCP • Routing • DNS • Loadbalancing • Firewall • NAT