the devops paas infusion - may meetup
DESCRIPTION
PaaS JailbreakerTRANSCRIPT
Cloudify The PaaS Jailbreaker
Uri Cohen, VP ProductsGigaSpaces
@uri1803
Why PaaS In the First Place?
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved3
It’s Simple, Fisher-Price Simple
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved4
Enter GigaSpaces XAP
It’s Agile
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved5
But Does it Meet YOUR Needs?
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved6
New Breed of PaaS Platforms
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved7
Ask yourself: • Do I need additional platforms?• Do I need a different
OS version/type?• Can I settle for the
underlying cloud SLAs?
Is This Good Enough for YOU?
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved8
Can You Really DIY?
Fork, learn source code, change, push, request pull on github…
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved9
Step Back: Perspectives on PaaS
Developer: “PaaS is so easy, who needs sys admins anyway”?
Sys admin: “PaaS is just giant blackbox toy that I can’t really use for real-world app”
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved10
DevOps is all about: Automating complex IT
processes “Infrastructure as Code”
We thought it would make a good foundation for PaaS…
DevOps to the Rescue
11
Putting PaaS & DevOps Together
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved
12
Result: YOUR App, UNCHANGED, on ANY Cloud
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved13
GigaSpaces Cloudify is an open source PaaS stack that can on board any application to any cloud without architectural or code changes.
GIGASPACES CLOUDIFY
1. Mission critical applications 2. Any cloud, any stack. No code change3. Full control and visibility
14
application { name="simple app"
service { name = "mysql-service"} service { name = "jboss-service" dependsOn = ["mysql-service"]}}
Application description through RECIPES
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved
Groovy-DSL based Setup (a-la Chef, Puppet)Provisioning for any cloud:local, public, privateCustomizable monitoring Scaling (manual and auto)
service {name "jboss-service"icon "jboss.jpg"type "APP_SERVER“numInstances 2[recipe body]
}
lifecycle{ init "mysql_install.groovy” start "mysql_start.groovy” stop "mysql_stop.groovy"}
..
compute{ template “BIG_LINUX_32”}
scalingRule { serviceStatistics { metric "Total Requests Count" movingTimeRangeInSeconds 20 statistics maximumThroughput } highThreshold { value 1 instancesIncrease 1 } }])
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved15
Recipe Execution
CommandsResource Allocation
Invokes IaaSAPI
BootstrapJava & Cloudify
Agent
InstallConfigure
Start Monitor
& Ensures H/A
Process Application
Recipe
ComputeServices
16
MongoDBCassandra
MySQL
Built-in recipes
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved
JEE & Spring
XAP Processing Unit
Relational & Big Data
XAP
Tomcat
JBoss
Spring
Web
Ruby on Rails
PHP
Node.js
CouchDB
Hadoop
17
Built In Cloud Drivers (Partial List)
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved
Your Own Data Center
Q&A
® Copyright 2011 Gigaspaces Ltd. All Rights Reserved18
Get it today, for free: www.cloudifysource.org