Download presentation
Presentation is loading. Please wait.
Published byJudith Stickley Modified over 9 years ago
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 Gunicorn PostgreSQL Hadoop ActiveMQ Nginx MongoDB Logstash GraphiteJenkinsNagios
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
The Business Is Doing Great, Thx (esp. Cat paper crafts), But… MTTR is… mehhh Mehhh http://fineartamerica.com/featured/wooly-sheep-ramona-johnston.html
6
They Had a Server Failure Two Weeks Ago One of the web servers crashed due to a bug in the Inventory service It took a few days to get the system back on its feet…
7
It Was also the Case When They Needed a New Server It’s still troublesome to roll out a new Gunicorn and add it to the existing deployment
8
Another Thing Is Quality… They have a nice set of unit tests, but integration testing is mostly manual…
9
They Need to Automate!!
10
So, Let’s have a closer look at DevOps Processes It’s about Workflows and Triggers
11
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/
12
Infra Upgrade Trigger: Critical updates, patches, etc. Flow: Take down relevant processes, one by one, apply patch, and reconnect to cluster. In some cases restarts server
13
App upgrade (or more generally, CD) Trigger: CI server, Manual Flow: Canary, Red/Black, A/B… – In general – Partial deploy, verify, rollback / complete deploy
14
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.)
15
Scaling Trigger: System SLAs, Schedule Flow: Add new nodes, push code, reconfigure dependent nodes, reconfigure LB
16
Automation refers to all the layers Proxy Config Python App Schema Infrastructure Middleware NGinx Gunicorn Postgres Application Host Networks Storage WE need Workflows
17
Take a (Very) Simple Deployment Scenario.. WE need Workflows
18
Let’s have a look at AWS Compared to OpenStack
19
The AWS Stack
20
The OpenStack Equivalents OpenShift/ CloudFoundry **Solum** Heat Nova, Cinder, Neutron etc.. ? ?
21
He Calls It Devops Automation http://www.allthingsdistributed.com/2013/02/aws-opsworks.html
22
Still a bit too rigid
23
OpsWorks – We can do better! Integrated with Heat Cross Clouds Custom Workflows Not limited to Chef Open Monitoring and Policies
24
How do you build the WF piece? Introduction to the Cloudify COSMO project
25
Our TOSCA-Inspired Building Blocks Application Topologies Workflows Policies
26
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
27
Workflows Create and interact with nodes using actions
28
Policies Trigger workflows based on a certain system state
29
DSL GUI How It Works in Practice Blueprint + Runtime Model Blueprint + Runtime Model Metrics Plugins Workflow Engine Workflow Engine TaskBroker TaskBroker Policy Engine Policy Engine Agen t Metrics Collecto r Plugin REST API REST API Agen t Plugin
30
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
31
Some Resources Framework (code name – Cosmo) code and sample app are available on github github.com/cloudifysource/cosmo- manager github.com/cloudifysource/cosmo-mezzanine- example github.com/cloudifysource/cosmo- manager github.com/cloudifysource/cosmo-mezzanine- example
32
Plans, Plans
34
How Does It Fit into the OpenStack Eco-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
35
Thank You! Come meet us in booth C27
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.