Introduction to cloudify - workshop 2013


Published on

An introduction to Cloudify, the problems it tries to solve and the basic concepts

Published in: Technology, Business
1 Like
  • Be the first to comment

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Research conducted by HP found that the majority of businesses in the EMEA region are planning to move their mission-critical apps to the cloud. Of the 940 respondents, 80 percent revealed plans to move mission-critical apps at some point over the next two to five years.A more recent survey, by research firm MeriTalk and sponsored by VMware and EMC (NYSE:EMC), showed that one-third of respondents say they plan to move some mission-critical applications to the cloud in the next year. Within two years, the IT managers said they will move 26 percent of their mission-critical apps to the cloud, and in five years, they expect 44 percent of their mission-critical apps to run in the cloud.
  • Even AWS used Chef for this…
  • Wrap all your system elements into easy-to-use recipes, providing you with consistent, automated management of your complex multitier app
  • Creates an abstraction between your enterprise system recipe/blueprint and the target environment. This means you can take the same blueprint and simply point it at different environments without making any changes to your application.
  • Introduction to cloudify - workshop 2013

    1. 1. Introduction to Cloudify Barak Merimovich Cloudify Team Leader @barakmer
    2. 2. GigaSpaces Business Card Description GigaSpaces provides software middleware for Deployment, Management and Scaling of Mission-Critical applications on cloud environments Offices Offices in New York, San Jose, London. R&D center in Herzliya Products Two main product lines: - - Customers Cloudify - designed to provide organizations with application lifecycle automation (deployment, configuration management, high-availability, fail-over, scaling, monitoring) on any cloud environment XAP - designed to handle extreme data processing Over 400 Tier 1 enterprises and ISV’s worldwide Main verticals: Financial Services, Telco, eCommerce, Healthcare
    3. 3. 400+ customers worldwide Leverage GigaSpaces technology
    4. 4. Enterprises are moving to Cloud 26% In 2 years BUT.. So far only 44% 16.B$ in 5 years in Saving 5% able to migrate successfully
    5. 5. Current Approaches for Migrating Apps to the Cloud
    6. 6. Migrating Apps – IaaS First
    7. 7. Migrating Apps – IaaS First Credit: sdarchitect It’s the apps, stupid!
    8. 8. Migrating Apps – PaaS Good for new, relatively simple apps
    9. 9. Migrating Apps – CM Tools Setup Only, but apps are a living organism!
    10. 10. Amazon Stack for App Deployment Cloudify provide the equivalent of Amazon OpsWork on OpenStack
    11. 11. Cloudify’s Mission Statement • Deploy, Manage and Scale Enterprise Grade Applications on OpenStack Clouds, with no code changes – Using well known tools and best practices – Allow users to choose what fits best for them – Allow users to leverage existing assets
    12. 12. Migrating apps – the Cloudify way… 1 Upload your recipe 2 Cloudify creates VMs & installs agents 3 Agents install and manage your app 4 Cloudify automates monitoring, healing and scaling
    13. 13. Reducing Complexity Typical Enterprise / Big Data System Consistent Management 13
    14. 14. Reducing Infrastructure Costs Typical Enterprise / Big Data System Consistent Management Dev Testing QA Prod 14
    15. 15. Reducing Lock-In Risks Cloud Driver Existing Data Center OpenStack Cloud
    16. 16. Geared for Mission Critical Apps • Critical Apps are Data Centric • Moving data is hard • Cloudify has built-in data services: – Replication over the WAN – Elastic caching – Built in support for big data
    17. 17. Built in support for Big Data stacks Real Time Relational DB Clusters NoSQL Clusters Hadoop Storm MySQL MongoDB Hadoop GigaSpaces XAP PostgreSQL Cassandra ZooKeeper Couchbase ElasticSearch
    18. 18. 100s More of Ready-Made Recipes Leverage Puppet Templates
    19. 19. One Click Deployment • Deploying the most complex apps in one click • Smooth transition from trial to real production • Patent pending technology • Let’s see it!
    20. 20. Cloudify Recipe Domain Model Application: Describes the application tiers and their dependencies Application Pod DB Service: Describe an individual tier e.g. Tomcat, Node.js, Ruby, NoSQL Web Server LB
    21. 21. Application Recipe application { name="petclinic" service { name = "mongod" } service { name = "mongoConfig" } service { name = "apacheLB" } service { name = "mongos" dependsOn = ["mongoConfig", "mongod"] } } ® Copyright 2012 GigaSpaces Ltd. All Rights Reserved
    22. 22. Service Recipe: Lifecycle service { name "mysql" icon "mysql.png" type "DATABASE" ... } lifecycle{ install "mysql_install.groovy" start "mysql_start.groovy" startDetectionTimeoutSecs 900 startDetection "mysql_startDetection.groovy" stopDetection { !ServiceUtils.isPortOccupied(jdbcPort) } preStop ([ "Win.*":"killAllMysql.bat", "Linux.*":"mysql_stop.groovy" ]) shutdown ([ "Linux.*":"mysql_uninstall.groovy" ]) ® Copyright 2012 GigaSpaces Ltd. All Rights Reserved 22
    23. 23. Service Recipe: Scaling Rules scalingRules ([ scalingRule { serviceStatistics { metric "Total Requests Count" statistics Statistics.maximumThroughput movingTimeRangeInSeconds 20 } highThreshold { value 1 instancesIncrease 1 } lowThreshold { value 0.2 instancesDecrease 1 } } ]) ® Copyright 2012 GigaSpaces Ltd. All Rights Reserved 23
    24. 24. Service Recipe: Custom Metrics 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("",currJmxPort,metricNamesToMBeansNames) } ® Copyright 2012 GigaSpaces Ltd. All Rights Reserved 24
    25. 25. Service Recipe: Machine Templates compute { template "SMALL_LINUX" } 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 } 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":"", "":""]) privileged true } ® Copyright 2012 GigaSpaces Ltd. All Rights Reserved 25
    26. 26. Summary Mission Critical • Manage data, not just processes • Built-in multi-site support • Designed for multi-tier complex apps Proven • Field-proven • Running the most complex finance, telco’s and Big-Data apps Open • Open Source • Open standard (OpenStack) • Open Cloud Easy • One click deployment • Hassle-free online experience • Smooth transition from trial to production
    27. 27. Thank You!
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.