Transcript
Page 1: Cloud stack collabiration conference - It's the app, stupid!

It’s the App, Stupid!Orchestration, Automation, Scaling

& What’s in Between

Uri Cohen GigaSpaces @uri1803#CCCEU13 #ItsTheAppStupid

Page 2: Cloud stack collabiration conference - It's the app, stupid!

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

Page 3: Cloud stack collabiration conference - It's the app, stupid!

So Their Services Are Deployed on CloudStack

Gunicorn

PostgreSQL

Hadoop

ActiveMQ

Nginx

MongoDB

Logstash

Graphite

Jenkins

Nagios

Page 4: Cloud stack collabiration conference - It's the app, stupid!

The Business Is Doing

Great, Thx (esp. Cat

paper crafts), But…

Rolling out new code is Painful

http://www.interestingtopics.net/storage/5762c0bec0add88fae0c3958d61effe1.jpg

Page 5: Cloud stack collabiration conference - It's the app, stupid!

The Business Is Doing

Great, Thx (esp. Cat

paper crafts), But…

MTTR is… mehhh

Mehhh

http://fineartamerica.com/featured/wooly-sheep-ramona-johnston.html

Page 6: Cloud stack collabiration conference - It's the app, stupid!

They Need to Automate!!

Page 7: Cloud stack collabiration conference - It's the app, stupid!

Let’s have a closer look at DevOpsProcesses

It’s about Workflows

and Triggers

Page 8: Cloud stack collabiration conference - It's the app, stupid!

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/

Page 9: Cloud stack collabiration conference - It's the app, stupid!

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

Page 10: Cloud stack collabiration conference - It's the app, stupid!

Code Push (or more generally,

CD)

• Trigger: CI server, Manual • Flow: Canary,

Red/Black, A/B…– In general – Partial

deploy, verify, rollback / complete deploy

Page 11: Cloud stack collabiration conference - It's the app, stupid!

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.)

Page 12: Cloud stack collabiration conference - It's the app, stupid!

Scaling • Trigger: System

SLAs, Schedule• Flow: Add new

nodes, push code, reconfigure dependent nodes, reconfigure LB

Page 13: Cloud stack collabiration conference - It's the app, stupid!

Automation Encompasses All Layers

Proxy Config WAR Schema

Infrastructure

Middleware Apache Tomcat MySQL

Application

Host Networks Storage

Page 14: Cloud stack collabiration conference - It's the app, stupid!

Automation Building Blocks

Environment Creation

SW Infra. Setup & Config

Code Push Monitoring & Alarming

Repairing Scaling

Page 15: Cloud stack collabiration conference - It's the app, stupid!

Let’s Look at Some Tools

Page 16: Cloud stack collabiration conference - It's the app, stupid!

Orchestration Tools

Environment Creation

SW Infra. Setup & Config

Code Push Monitoring & Alarming

Repairing Scaling

Page 17: Cloud stack collabiration conference - It's the app, stupid!

CM Tools

Environment Creation

SW Infra. Setup & Config

Code Push Monitoring & Alarming

Repairing Scaling

Page 18: Cloud stack collabiration conference - It's the app, stupid!

Automation Tools

Environment Creation

SW Infra. Setup & Config

Code Push Monitoring & Alarming

Repairing Scaling

Page 19: Cloud stack collabiration conference - It's the app, stupid!

Metric & Log Collection Tools

Environment Creation

SW Infra. Setup & Config

Code Push Monitoring & Alarming

Repairing Scaling

Page 20: Cloud stack collabiration conference - It's the app, stupid!

Still, when you need to

automate & orchestrate,

that’s what is looks like…

Page 21: Cloud stack collabiration conference - It's the app, stupid!

Where You Want to Be

Environment Creation

SW Infra. Setup & Config

Code Push Monitoring & Alarming

Repairing Scaling

Page 22: Cloud stack collabiration conference - It's the app, stupid!

How It’s Done in AWS

Page 23: Cloud stack collabiration conference - It's the app, stupid!

How It’s Done in AWS

Page 24: Cloud stack collabiration conference - It's the app, stupid!

He Calls It DevOps Automation

http://www.allthingsdistributed.com/2013/02/aws-opsworks.html

Page 25: Cloud stack collabiration conference - It's the app, stupid!

Still a Bit Too Rigid

Page 26: Cloud stack collabiration conference - It's the app, stupid!

OpsWorks – We Can Do

Better!

• Integrated with CloudStack (and other clouds)• Custom

Workflows• Not limited to

Chef• Open Monitoring

and Policies

Page 27: Cloud stack collabiration conference - It's the app, stupid!

Our TOSCA-Inspired Building Blocks

Application Topologies

Workflows

Policies

Page 28: Cloud stack collabiration conference - It's the app, stupid!

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

Page 29: Cloud stack collabiration conference - It's the app, stupid!

Workflows

• Create and interact with nodes using interfaces

Page 30: Cloud stack collabiration conference - It's the app, stupid!

Policies• Trigger workflows

based on a certain system state

Page 31: Cloud stack collabiration conference - It's the app, stupid!

Where We Are Today

http://cloudifysource.orghttp://github.com/cloudifysource/cloudify

Page 33: Cloud stack collabiration conference - It's the app, stupid!

DSL

GUI

Second Gen ArchitectureBlueprint + RuntimeModel

Metrics

Plugins

WorkflowEngine

TaskBroker

PolicyEngine

AgentMetrics

Collector

Plugin

RESTAPI

Agent

Plugin

Page 34: Cloud stack collabiration conference - It's the app, stupid!

Thank You!


Top Related