1 / 30

It’s the App, Stupid!

It’s the App, Stupid!. Orchestration, Automation, Scaling & What’s in Between. Yaron Parasol, Uri Cohen GigaSpaces @ yaronpar, @uri1803. Meet Petsy , Selling Pet Art and Supporting Pet Artists Since 2013 . So They’re Services Are Deployed on OpenStack. Logstash. Graphite. Jenkins.

jens
Download Presentation

It’s the App, Stupid!

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. It’s the App, Stupid! Orchestration, Automation, Scaling& What’s in Between Yaron Parasol, Uri Cohen GigaSpaces @yaronpar, @uri1803

  2. Meet Petsy, Selling Pet Art and Supporting Pet Artists Since 2013

  3. So They’re Services Are Deployed on OpenStack Logstash Graphite Jenkins Nagios Nginx Hadoop Gunicorn PostgreSQL ActiveMQ MongoDB

  4. The Business Is Doing Great, Thx (esp. Cat paper crafts), But… Rolling out new code is Painful http://www.interestingtopics.net/storage/5762c0bec0add88fae0c3958d61effe1.jpg

  5. They Need to Automate!!

  6. So, Let’s have a closer look at DevOpsProcesses It’s about Workflows and Triggers

  7. Automated Deployment • Triggers: Manual, CI Server • Flow: • Provision Cloud Resources: Compute, Storage, Network • Configure servers • Push code • Start components http://www.flickr.com/photos/smilemark/4611091236/sizes/m/in/photostream/

  8. InfraUpgrade • Trigger: Critical updates, patches, etc. • Flow: Take down relevant processes, one by one, apply patch, and reconnect to cluster. In some cases restarts server

  9. App upgrade (or more generally, CD) • Trigger:CI server, Manual • Flow: Canary, Red/Black, A/B… • In general – Partial deploy, verify, rollback / complete deploy

  10. Node Failure • Trigger: #$%@ happens… • Flow: Detect, provision VM, attach storage, add to network, reconfigure app (load balancer in case of web serve, DB connection in case of database, etc.)

  11. Scaling • Trigger: System SLAs, Schedule • Flow: Add new nodes, push code, reconfigure dependent nodes,reconfigure LB

  12. Automation refers to all the layers Proxy Config Python App Schema Application Middleware NGinx Gunicorn Postgres Infrastructure Host Networks Storage WE need Workflows

  13. Let’s have a look at AWS • Compared to OpenStack

  14. The AWS Stack

  15. The OpenStack Equivalents OpenShift/ CloudFoundry **Solum** ? Heat Nova, Cinder, Neutron etc..

  16. He Calls It Devops Automation http://www.allthingsdistributed.com/2013/02/aws-opsworks.html

  17. Still a bit too rigid

  18. OpsWorks – We can do better! • Integrated with Heat • Cross Clouds • Custom Workflows • Not limited to Chef • Open Monitoring and Policies

  19. How do you build the WF piece? • Introduction to the Cloudify COSMO project

  20. Our TOSCA-Inspired Building Blocks Application Topologies Workflows Policies

  21. Application Topologies • Nodes • The layers in the cake - e.g. VM, web server, app module • Actions (can be grouped into Interfaces) • Relationships • Actions • Requirements <-> capabilities

  22. Workflows • Create and interact with nodes using actions

  23. Policies • Trigger workflows based on a certain system state

  24. How It Works in Practice Blueprint + Runtime Model Metrics REST API Policy Engine Workflow Engine DSL Task Broker GUI Agent Plugins Plugin Metrics Collector Agent Plugin

  25. Live Demo – Installing Mezzanine • Create the VMs • Install Postgres • Install Gunicorn • Install NGinx • Create DB on Postgres • Push app to Containers • Configure App connection to DB • Configure Nginx routing rules • Start components in the right order

  26. Some Resources • Framework (code name – Cosmo) code and sample app are available on githubgithub.com/cloudifysource/cosmo-managergithub.com/cloudifysource/cosmo-mezzanine-example

  27. Plans, Plans

  28. Plans, Plans

  29. How Does It Fit into the OpenStackEco-System? • The need was identified (Call for TOSCA like DSL) • Solum Project • Solum Blueprints identified the needs: • Cross Cloud • Continuous Deployment • As of last week we have joined Solum • In order to contribute the relevant parts into Solum

  30. Thank You! Come meet us in booth C27

More Related