intro to cloudify

28
GigaSpaces Cloudify Any App, On Any Cloud, Your Way February 2012

Upload: ron-zavner

Post on 15-Jan-2015

915 views

Category:

Technology


0 download

DESCRIPTION

Ron Zavner's presentation at the Infracoders London Meetup July 9th, 2013.

TRANSCRIPT

Page 1: Intro to Cloudify

GigaSpaces Cloudify Any App, On Any Cloud, Your Way

February 2012

Page 2: Intro to Cloudify

2

Intro to Big data world & Cloud apps Challenges of big data applications

Outages & disaster recovery Complexity of multi tiers application Lock-in to specific cloud Monitoring & Scaling

PaaS make our life easier …

® Copyright 2013 GigaSpaces Ltd. All Rights Reserved

AGENDA

Page 3: Intro to Cloudify

WE’RE LIVING IN A REAL TIME WORLD…

Homeland Security

Real Time Search

Social

eCommerce

User Tracking & Engagement

Financial Services

® Copyright 2011 Gigaspaces Ltd. All Rights Reserved3

Page 4: Intro to Cloudify

BIG DATA PREDICTIONS

“Over the next few years we'll see the adoption of scalable frameworks and platforms for handling streaming, or near real-time, analysis and processing. In the same way that Hadoop has been borne out of large-scale web applications, these platforms will be driven by the needs of large-scale location-aware mobile, social and sensor use.”

Edd Dumbill, O’REILLY

4® Copyright 2011 Gigaspaces Ltd. All Rights Reserved

Page 5: Intro to Cloudify

5

THE BIG GUYS…

Managing Big Data on the Cloud

• AWS – around 0.5M servers• Facebook – less than 0.1M servers• Google – around 1M servers

Page 6: Intro to Cloudify

6

STORE 135+ BILLION MESSAGES A MONTH

® Copyright 2011 Gigaspaces Ltd. All Rights Reserved

Page 7: Intro to Cloudify

7

THE OUTAGE PROBLEM

Page 8: Intro to Cloudify

A TYPICAL BIG DATA SYSTEM…

Page 9: Intro to Cloudify

9

LOCKED IN TO SPECIFIC CLOUD?

Managing Big Data on the Cloud

Page 10: Intro to Cloudify

10

DISASTER RECOVERY

Page 11: Intro to Cloudify

Realization:

What You Really Care about Is App Portability

OS is the same on any cloud

Most clouds have compute & storage

Elasticity & scaling have same effects on the app, regardless of the cloud

Page 12: Intro to Cloudify

Cloud Portability Facts

Zynga moved ~80% of their workload from Amazon to their private zCloud

“own the base, rent the spike”

http://code.zynga.com/2012/02/the-evolution-of-zcloud/

Page 13: Intro to Cloudify

13

You must use an AUTOMATION layer

Page 14: Intro to Cloudify

14

Managing Big Data on the Cloud

• No Code Change• No lock-in• Full Monitor & Control

Moving Apps At Massive Scale – The Right Way

Page 15: Intro to Cloudify

CLOUDIFY POSITIONING IN THE CLOUD STACK

15

PaaS

IaaS

DevOps(Automation)

Productivity

Control

ChefPuppet

CloudFoundryHeroku

GAEOpenShift

Rightscale

Public clouds(AWS, Rackspace,..) Private clouds

(Vmware, OpenStack..)

High productivity with full control

Enstratus

Page 16: Intro to Cloudify

HOW DOES IT WORK?1 Upload your recipes

2 Cloudify creates VMs & installs agents

3 Agents install and manage your app

4 Cloudify automates the scaling

® Copyright 2012 GigaSpaces Ltd. All Rights Reserved16

Page 17: Intro to Cloudify

® Copyright 2012 GigaSpaces. All Rights Reserved17

EXTENSIVE PLATFORM SUPPORT

Page 18: Intro to Cloudify

® Copyright 2012 GigaSpaces Ltd. All Rights Reserved18

BOOTSTRAPPING

Page 19: Intro to Cloudify

® Copyright 2012 GigaSpaces Ltd. All Rights Reserved19

INSTALL APPLICATION

Page 20: Intro to Cloudify

® Copyright 2012 GigaSpaces Ltd. All Rights Reserved20

POST DEPLOYMENT

Page 21: Intro to Cloudify

® Copyright 2012 GigaSpaces Ltd. All Rights Reserved21

SELF HEALING

Page 22: Intro to Cloudify

® Copyright 2012 GigaSpaces Ltd. All Rights Reserved22

GETTING COMPUTE RESOURCES IN A PORTABLE WAY

compute { template "SMALL_LINUX"}

SMALL_LINUX : template imageId "us-east-1/ami-76f0061f“ remoteDirectory "/home/ec2-user/gs-files“ machineMemoryMB 1600 hardwareId "m1.small" locationId "us-east-1" localDirectory "upload" keyFile "myKeyFile.pem"

options ([ "securityGroups" : ["default"]as

String[], "keyPair" : "myKeyFile"])

overrides (["jclouds.ec2.ami-query":"",

"jclouds.ec2.cc-ami-query":""])privileged true

}

SMALL_LINUX : template{ imageId "1234" machineMemoryMB 3200 hardwareId "103" remoteDirectory "/root/gs-files" localDirectory "upload" keyFile "gigaPGHP.pem" options ([ "openstack.securityGroup" : "default", "openstack.keyPair" : "gigaPGHP"

])privileged true

}

Page 23: Intro to Cloudify

® Copyright 2012 GigaSpaces Ltd. All Rights Reserved23

UNDERSTAND APPLICATION STRUCTURE & DEPENDENCIESapplication {

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

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

}}

Page 24: Intro to Cloudify

® Copyright 2012 GigaSpaces Ltd. All Rights Reserved24

DYNAMICALLY CONFIGURE APPLICATION TIERS

1

23

serviceContext.attributes.thisInstance["port"] = config.port

dbServiceInstances = ServiceContext.attributes[“db”].instances

dbServicePort = dbServiceInstances[1].port

customCommands ([

"addNode" : "apacheLB_addNode.groovy",

"removeNode" : "apacheLB_removeNode.groovy",

"load" : "apacheLB-load.groovy“ ])

Page 25: Intro to Cloudify

® Copyright 2012 GigaSpaces Ltd. All Rights Reserved25

AUTO SCALE YOUR WAY

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

Page 26: Intro to Cloudify

® Copyright 2012 GigaSpaces Ltd. All Rights Reserved26

5 MINUTES SETUP

/* Credentials - You must enter your * cloud provider account credentials */

user="ENTER_USER_HERE"apiKey="ENTER_API_KEY_HERE"keyFile="ENTER_KEY_FILE_HERE"keyPair="ENTER_KEY_PAIR_HERE"

// Advanced usage

hardwareId="m1.small"locationId="us-east-1"linuxImageId="us-east-1/ami-1624987f"ubuntuImageId="us-east-1/ami-82fa58eb"

Page 27: Intro to Cloudify

27

Intro to Big data world & Cloud apps Challenges of big data applications

Outages & disaster recovery Complexity of multi tiers application Lock-in to specific cloud Monitoring & Scaling

PaaS make our life easier - Cloudify

® Copyright 2013 GigaSpaces Ltd. All Rights Reserved

SUMMARY

Page 28: Intro to Cloudify

THANK YOU!

Ron Zavner

[email protected]

® Copyright 2013 Gigaspaces Ltd. All Rights Reserved

Q&A