its the app stupid - cloudstack 2014 collaboration conference #ccna14

33
It’s the App, Stupid! Orchestration, Automation, Scaling & What’s in Between Uri Cohen GigaSpaces @uri1803 #CCNA14 #ItsTheAppStupid

Upload: uri-cohen

Post on 15-Jan-2015

747 views

Category:

Technology


1 download

DESCRIPTION

Slides from my session at #CCNA14 http://sched.co/1hETwSO

TRANSCRIPT

Page 1: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

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

& What’s in Between

Uri Cohen GigaSpaces @uri1803#CCNA14 #ItsTheAppStupid

Page 2: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

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

Page 3: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

So Their Services Are Deployed on CloudStack

Gunicorn

PostgreSQL

Hadoop

ActiveMQ

Nginx

MongoDB

Logstash

Graphite

Jenkins

Nagios

Page 4: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

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: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

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: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

They Need to Automate!!

Page 7: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Let’s have a closer look at DevOpsProcesses

It’s about Workflows

and Triggers

Page 8: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

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: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

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: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

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: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

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: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Scaling • Trigger: System

SLAs, Schedule• Flow: Add new

nodes, push code, reconfigure dependent nodes, reconfigure LB

Page 13: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Automation Encompasses All Layers

Proxy Config WAR Schema

Infrastructure

Middleware Apache Tomcat MySQL

Application

Host Networks Storage

Page 14: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Automation Building Blocks

Environment Creation

SW Infra. Setup & Config

Code Push Monitoring & Alarming

Repairing Scaling

Page 15: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Let’s Look at Some Tools

Page 16: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Orchestration Tools

Environment Creation

SW Infra. Setup & Config

Code Push Monitoring & Alarming

Repairing Scaling

Page 17: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

CM Tools

Environment Creation

SW Infra. Setup & Config

Code Push Monitoring & Alarming

Repairing Scaling

Page 18: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Automation Tools

Environment Creation

SW Infra. Setup & Config

Code Push Monitoring & Alarming

Repairing Scaling

Page 19: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Metric & Log Collection Tools

Environment Creation

SW Infra. Setup & Config

Code Push Monitoring & Alarming

Repairing Scaling

Page 20: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Still, when you need to

automate & orchestrate,

that’s what is looks like…

Page 21: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Where You Want to Be

Environment Creation

SW Infra. Setup & Config

Code Push Monitoring & Alarming

Repairing Scaling

Page 22: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

How It’s Done in AWS

Page 23: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

How It’s Done in AWS

Page 24: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

He Calls It DevOps Automation

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

Page 25: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Still a Bit Too Rigid

Page 26: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

OpsWorks – We Can Do

Better!

• Integrated with CloudStack (and other clouds)• Custom

Workflows• Not limited to

Chef• Open Monitoring

and Policies

Page 27: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Our TOSCA-Inspired Building Blocks

Application Topologies

Workflows

Policies

Page 28: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Topology, Visualized

Page 29: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Topology, Visualized

Node

Node

Node

Connected_to relationship

Hosted_onrelationship

Page 30: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Architecture

REST

GUI

WorkflowEngine

Task Manager

Blueprint + RuntimeData

Policy Engine

Agent

Monitoring Data

Agent Monitoring Agent

ApplicationStack

Cloudify Manager

App VM

InvokesReportsCreates

Metrics VM

Logs + Events

Proxy+ File

Server

Page 31: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Demo Time!

Page 32: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Where We Are Today

Page 33: Its the app stupid - CloudStack 2014 Collaboration Conference #CCNA14

Thank You!getcloudify.org