Download - CloudStack Overview

Transcript
Page 1: CloudStack Overview

Apache CloudStack

Santhosh Kumar Edukulla

Page 2: CloudStack Overview

Agenda• Overview of CloudStack

• Few numbers, Users, Introduction etc.

• CloudStack Overview and Architecture.

• Demo of CloudStack

• CloudStack Use Cases, Community and Getting Involved

• Q&A

Page 3: CloudStack Overview

What is Apache CloudStack?

Apache CloudStack is a scalable, multi-tenant, open source, purpose-built, cloud orchestration platform for delivering turnkey Infrastructure-as-a-Service clouds. the most mature, most scalable, most proven IaaS platform available today.

Page 4: CloudStack Overview

Characteristics of Clouds

• On-Demand Self-Service

• Broad Network Access

• Resource Pooling

• Rapid Elasticity

• Measured Service

• API Access

CLOUD VIRTUALIZATION

Page 5: CloudStack Overview

Cloud Service Models

USER CLOUD a.k.a. SOFTWARE AS A SERVICESingle application, multi-tenancy, network-based, one-to-many delivery of applications, all users have same access to features.

Examples: Salesforce.com, Google Docs

DEVELOPMENT CLOUD a.k.a. PLATFORM-AS-A-SERVICEApplication developer model, Application deployed to an elastic service that autoscales, low administrative overhead. No concept of virtual machines or operating system. Code it and deploy it.

Examples: VMware CloudFoundry, Google AppEngine, Windows Azure, Rackspace Sites, Red Hat OpenShift, Active State Stackato, Appfog

SYSTEMS CLOUD a.k.a INFRASTRUCTURE-AS-A-SERVICE

Servers and storage are made available in a scalable way over a network.

Examples: EC2,Rackspace CloudFiles, OpenStack, CloudStack, Eucalyptus, OpenNebula

SaaS

PaaS

IaaS

Page 6: CloudStack Overview

Deployment Models

Page 7: CloudStack Overview

CloudStack History• 2008 – Vmops launches (rebrands Cloud.com)• April 2010 – Cloud.com Releases CloudStack under GPLv3• July 2011 - Citrix acquires CloudStack• April 2012 - CloudStack donated to Apache Software

Foundation• November 2012 – First Apache CloudStack Release (4.0)• March 2013 - CloudStack becomes a top-level Apache project• 2014 – Majority of committers are not from Citrix

Page 8: CloudStack Overview

CloudStack Users(Education/Enterprises/Governments)

Page 9: CloudStack Overview

9

CloudStack Users

Page 10: CloudStack Overview

Few Salient notes:

• Open Source (Apache-Licensed) IaaS

• Vast Community of Users and Providers

• Written in Java*• Hypervisor Agnostic• Time-Based Releases• Proven product• Strong Apache governance model• 26 k commits• Peaked at 2.5 Million lines of code• 24k unique IP’s download our

packages in last 12 months• 200 active code contributors • 81 project committers• 32 PMC members (20 organizations)• Over 100 people working on

translation• 2500 mailing list msgs per month

Page 11: CloudStack Overview

CloudStack Architecture

Page 12: CloudStack Overview

CloudStack Layered view

Commodity compute StorageNetworking

Hypervisor

CMP - Orchestration layer

orchestration API

eCommerce Platform

Choice of Hypervisor (KVM, VMWare, Xen, hyper-V)

Apache CloudStack

Ecommerce platform

CloudStack API

Billing Config Management

Networking compute Storage

PaaS Developer tooling Multi-cloud management

Page 13: CloudStack Overview

CloudStack Deployment View

Page 14: CloudStack Overview

Pod 1

….

Cluster N

Access Layer

Host 2

Cluster 1

Simple view of CloudStack Architecture

Host 1

Hypervisor is the basic unit of scale.

Cluster consists of one ore more hosts of same hypervisor

All hosts in cluster have access to shared (primary) storage

Pod is one or more clusters, usually with L2 switches.

Availability Zone has one or more pods, has access to secondary storage.

One or more zones represent cloud

PrimaryStorage

Zone 1

….

L3 core

SecondaryStorage

Pod N

CloudStack Management

Server

Internet

Page 15: CloudStack Overview

What CloudStack Provides

Page 16: CloudStack Overview

Feature Highlights

• Easy Installation• Simple to configure and use in minutes.• Broad Hypervisor support(KVM, XenServer, Xen Cloud Platform,

VMware via vCenter, Bare Metal via IPMI)• Easy plugin model• AWS API fidelity• Scalability, High Availability, Load Balancing• Broad vendor hardware for networking, storage support• Choice of interfaces

— Web UI, command line, REST-based API• Developer friendly, easy to get started, add, refactor,

contribute..(We will see in demo..)

Page 17: CloudStack Overview

• It’s the heart of the CloudStack system.

• Manages the assignment of guest VMs to particular hosts. Uses

algorithms like First fit, Disperse, Fill first etc, supports overprovisioning.

• Manages the assignment of public and private IP addresses to particular

accounts

• Manages the allocation of storage to guests as virtual disks.Manages

snapshots, templates, and ISO images, possibly replicating them across

data centers

The Management Server

Page 18: CloudStack Overview

Compute

CloudStack Provides On-demand Access to Infrastructure Through a Self-Service Portal

Citrix Confidential - Do Not Distribute

Network Storage

Admin

Users

Org A

Admin

Users

Org BUsers

End User

Admin

Page 19: CloudStack Overview

• CloudStack provides an API that gives programmatic access to all the management features available in the UI

• The API enables the creation of command line tools and new user

interfaces to suit particular needs• Authenticated on 8080 w/Keys• Unauthenticated on 8096 (off by default)• Python + Ruby clients available• Responses in XML or JSON

API and Extensibility

Page 20: CloudStack Overview

Virtual Machine Management

Users

Start

Stop

Restart

Destroy

VM Operations

Console Access

• CPU Utilized

• Network Read

• Network Writes

VM Status

Change Service Offering

2 CPUs

1 GB RAM

20 GB

20Mbps

4 CPUs

4 GB RAM

200 GB

100Mbps

Page 21: CloudStack Overview

Volume & Snapshot Management

Volume

VM 1Add / Delete Volumes

Schedule Snapshots

Hourly

Daily

Weekly

MonthlyNow

Create Templates from Volumes

Volume Template

View Snapshot History

….

12/2/2012 7.30 am 2/2/2012 7.30 am

Page 22: CloudStack Overview

Open Platform to Suit Customer Needs

Compute

XenServer VMware KVMOracle VM Bare metal

Hypervisor

Storage

NFSFiber Channel Swift

Block & Object

Local Disk iSCSI

Network

Network Type

Load balancerIsolation

FirewallVPN

Network & Network Services

Page 23: CloudStack Overview

Multi-tenancy & Account Management • Domain is a unit of

isolation that represents a customer org, business unit or a reseller

• Domain can have arbitrary levels of sub- domains

• A Domain can have one or more accounts

• An Account represents one or more users and is the basic unit of isolation

• Admin can limit resources at the Account or Domain

Admin

CloudDomain

Org A

AdminDomain

Reseller

ASub-Domain

Org C

Admin

User 1

User 2

Account

Group B

Group A

Account

ResourcesVMs, IPs,

Snapshots…

ResourcesVMs, IPs,

Snapshots…

Page 24: CloudStack Overview

Primary:• Primary storage is associated with a cluster

• Stores the disk volumes for all the VMs running on hosts in a cluster

Secondary:• Secondary storage is associated with a zone

and is available to all hosts in that zone.

• Stores Templates - OS images used to create VMs, ISO, Disk volume snapshots (saved copies of VM data)

Cloud Infrastructure – Storage

Page 25: CloudStack Overview

• One or more hosts groupedinto a cluster

• One or more clustersgrouped into a pod

• One or more pods grouped into a zone

• One or more zones controlled by one management server

Cloud Infrastructure - Summary

Pod

Zone

Secondary

Storage

CloudStack Management

Server

Page 26: CloudStack Overview

CloudStack Networking

• Network Services: CloudStack manages various network services viz., DHCP, VLAN allocation, Firewall, NAT/Port forwarding, routing, VPN, Load Balancing, supported by various network hardware vendors.

• Traffic Types: Management network, guest network, private network, public network, link local network.

• Network Modes: Basic and Advanced

Page 27: CloudStack Overview

Basic Networking:

Customer 1 Customer 2192.168.1.55192.168.1.56192.168.1.57 192.168.1.58192.168.1.59 192.168.1.60

Internet

Physical Router

CSVirtual Router

VM 1

VM 2

VM 3

VM1

VM 2

VM 3

• All zone tenants share a single flat public network

• Tenant isolation provided by Security Groups• Hypervisor level firewall IP

Address filtering• Layer 3 Isolation• Scales much better than VLANs

• CloudStack virtual system provides dhcp, dns services etc.

Page 28: CloudStack Overview

• Multiple VLANs for isolation• L2TP-based VPN• Virtual router is gateway• Load balancer available• 1:1 NAT• Metering data• One virtual router per account• Does not scale as well

Advanced Networking:

Internet

Physica l Router

CSVirtualRouter

1VM VM VM

CSVirtualRouter

1VM VM VM

Public Network

Customer PrivateNetworks

2

3Customer 1

2

3Customer 2

VLAN 100 VLAN 200

Page 29: CloudStack Overview

Cloud Infrastructure – Large-ScaleRedundant Network

Secondary Storage Servers

PrimaryStorage

NFSSecondary

Storage

Pod

1

Pod

2

Layer-3 switches with firewall modules

Layer-2 switches

Internet

PyrimarStorage

PrimaryStorage

PrimaryStorage

NFSSecondary

Storage

Internet

Computing Nodes

Managemen t Server Cluster

Primary Storage Servers

Page 30: CloudStack Overview

Let’s Build Our Cloud

Requirements and configuration…

Demo….

Page 31: CloudStack Overview

CloudStack Collaboration Conferences

Page 32: CloudStack Overview

Tooling and Support System

• Marvin• CloudMonkey• Simulator• DevCloud• Ansible Recipes• Vagrant Support• Dockerized CS

Page 33: CloudStack Overview

Use Cases(Many…)

• Private Cloud• Dual-Workload Private Cloud• Public Cloud (ISP/Providers)• Hybrid Cloud• Small to Very, Very Large• DevOps • AWS “insourcing”

Page 34: CloudStack Overview

Getting Involved…

• website : http://cloudstack.apache.org/

• Mailing lists :• [email protected][email protected]

• Twitter: #cloudstack

• Presentations: http://slideshare.net/cloudstack

• IRC: #CloudStack on irc.freenode.net

• GitHub : https://github.com/apache/cloudstack

Page 35: CloudStack Overview

Q && A

Thanks!

Questions: ?

if “I KNOW”:return AnswerFactory.get_answer (“AnswerType”)

else: “will find out and let you know”

Santhosh Kumar Edukulla

[email protected]@gmail.com


Top Related