carrier paas - cloudstack collaboration event 2012

Post on 15-Jan-2015

2.252 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

A Carrier grade PaaS aims to bring the network and application together. That means that application can easily deployed on multiple sites on different physical location as if it was one big data centre. Unlike regular cloud environment where application need to explicitly handle multi-zone deployments with Carrier PaaS the application workload and availability is handled through policy driven approach. The policy describes the desired application SLA and the Carrier PaaS maps the deployment of the application resources on the cloud node that best fit the latency, load or availability requirements.

TRANSCRIPT

Building Carrier Grade PaaS with CloudStack

Uri Cohen @uri1803 | github.com/uric

Head of Product @ GigaSpaces#CCC12

Some of You Have

Been through

This

And You All

Watched This

Where (lots of) the Data

Came From

Multiple Channels

TV, smartphone apps, tablet apps, live streaming, print, radio, and APIs

Sounds Trivial?

Let’s look at some numbers

1,000%The Weather Company’s traffic increase during hurricane Sandy

110The amount of data, in GB, served every second during Sandy

170,000Peak number of simultaneous streams of video served during Sandy

1The amount of data centers that went bust during the storm

99%

Availability of weather services from the Weather Company during Sandy

How Did They Do

It?

13 Data Centers managed by Verizon across North America, with load balancing between them

How Did They Do

It?

Gigabytes of network capacity added in real time by Verizon during the storm

How Did They Do

It?

It’s always good to have big friends: • Akamai did its CDN

part • YouTube made sure

live stream stayed available

The Weather Company

is Just One Example

When it comes to massive-scale, business critical apps, you have a many more

Verizon Runs Many Other

Services w/Similar Concerns

• Cell and network services (DHCP, DNS, …)

• Content serving (SMS, MMS, …)

• Activation services• CRM, call centers…

Telco Services

FTW

• Critical to the business• Massive scale• Usage spikes• Complex architectures• Location sensitivity

A.K.A “Carrier Grade”

Can You Host This

on a Vanilla

IaaS Cloud?

What Carrier Grade Apps

Require

Networking: • Isolation • Controllable

bandwidth• Controllable latency

What Carrier Grade Apps

Require

Location awareness: • Deploy closer to users • Prefer specific data

centers • Constrain physical

location (affinity & anti affinity)

What Carrier Grade Apps

Require

Cross cloud / data center deployments: • Redundancy • Global affinity / anti

affinity • Bursting

What Carrier Grade Apps

Require

Testability:• Identical testing,

staging and production environments

What Carrier Grade Apps

Require

Compliance: • Data security • Local regulations • Standards: PCI,

HIPAA, …

Why Cloud?

Traditional Telco apps are appliance based• Hard to maintain

(very heterogeneous env.)

• Scaling capacity means buying more appliances ( == $$$, time)

From Telco to vTelco

Benefits: • Unified

infrastructure• Lower TCO • Fast testing and

rollout of new products

• Real elastic scaling

Why CloudStack?

• It works!• It’s robust • Open source • Extensible • Strong community

Can You Host This

on a Vanilla

IaaS Cloud?

Maybe, but It

Won’t Be Easy

Carrier Cloud & Carrier PaaS

What Makes a Carrier Cloud

Different

It’s all about service levels...

HW, Network, Storage, Geography, Regulation

What’s a Carrier PaaS?

A platform that will let Telco apps easily leverage the carrier cloud services

Introducing CloudBand

A carrier cloud platform, with carrier grade IaaS and PaaS baked right in

Leverages CloudStack & Cloudify

Introducing CloudBand

Policy Driven IaaS and PaaS:• Define provisioning,

networking and scaling policies

• Define application stack

• Deploy

Network Definition

Network & Business Policies

Telco Applications Market Place

The Building Blocks

The Building Blocks

• Bridging the network and the cloud

• Resource constraints• Business policies

The Building Blocks

• Different types of Cloud Nodes

• Basic Compute, Storage & Networks services

The Building Blocks

The Building Blocks• Application level SLA• Application life cycle automation

Open source framework for deploying, managing, healing and scaling any app, on any cloud

Integrated with CloudStack, so you can build your own kick-ass PaaS!

Your App, Your Recipe

45

application {name="petclinic"service { name = "mongod" }service { name = "mongoConfig" }service { name = "apacheLB" }service { name = "mongos" dependsOn = ["mongoConfig",

"mongod"]}service { name = "tomcat" dependsOn = ["mongos","apacheLB"]

}}

How It Works

46

service { name "mysql" icon "mysql.png" type "DATABASE"

...}

How It Works

® Copyright 2012 GigaSpaces Ltd. All Rights Reserved

47

monitors {

def ctxPath = ("default" == context.applicationName)?"":"${context.applicationName}“

def metricNamesToMBeansNames = [ "Current Http Threads Busy": ["Catalina:type=ThreadPool,name=\"http-bio-${currHttpPort}\"", "currentThreadsBusy"], "Current Http Thread Count": ["Catalina:type=ThreadPool,name=\"http-bio-${currHttpPort}\"", "currentThreadCount"],

return getJmxMetrics("127.0.0.1",currJmxPort,metricNamesToMBeansNames)}

How It Works

® Copyright 2012 GigaSpaces Ltd. All Rights Reserved

48

scalingRules ([ scalingRule { serviceStatistics { metric "Total Requests Count" statistics Statistics.maximumThroughput movingTimeRangeInSeconds 20 } highThreshold { value 1 instancesIncrease 1 } lowThreshold { value 0.2 instancesDecrease 1 } }])

How It Works

Thank You!

top related