application centric approach to devops

23
Application Centric Devops Orchestration, DevOps Automation & What’s in Between Nati Shalom @natishalom Uri Cohen @uri1803

Upload: nati-shalom

Post on 08-May-2015

1.795 views

Category:

Technology


7 download

DESCRIPTION

The experience of automating continuous delivery processes with Chef and Cloudify through an application-centric approach to DevOps, and how this model transformed PaddyPower's traditional IT into DevOps, keeping their Devs and their Ops happy. References: --------------- - Cloudify & Chef : http://www.cloudifysource.org/guide/2.7/integrations/chef_documentation - Blog Post: http://www.cloudifysource.org/2013/10/27/application_centric_approach_to_devops.html - Earlier Video Presentation : http://www.youtube.com/watch?v=YhDNKyP_s7U

TRANSCRIPT

Page 1: Application Centric Approach to Devops

Application Centric DevopsOrchestration, DevOps Automation

& What’s in Between

Nati Shalom @natishalomUri Cohen @uri1803

Page 2: Application Centric Approach to Devops

What It Really Takes to

Deploy and Manage Apps

Provision

Install

Configure

Deploy

Monitor

Scale

Page 3: Application Centric Approach to Devops

Quite often we end up with this..

Page 4: Application Centric Approach to Devops

LoadBalancer Web DataBase

LoadBalancer Web DataBase

Your Journey Start Here

Your Journey Start Here

Application Centric Infrastructure Centric

Map Application Dependencies, SLA (performance, scaling, HA)

Map Application To machine instances

Page 5: Application Centric Approach to Devops

Environment Creation

Code Push Monitoring & Alarming

Repairing Scaling

Technical Perspective

• Infrastructure Centric

• Application Centric

Environment Creation

SW Infra. Setup & Config

Code Push Monitoring & Alarming

Repairing Scaling

Page 6: Application Centric Approach to Devops

INFRASTRUCTURE CENTRIC TOOLS

Page 7: Application Centric Approach to Devops

Configuration Management

Defined

Page 8: Application Centric Approach to Devops

Configuration Management

Defined

• Directive & Directives Script • Master Node &

Children Nodes • Remote Execution

Page 9: Application Centric Approach to Devops

APPLICATION CENTRIC TOOLS

Page 10: Application Centric Approach to Devops

App Centric Devops – the AWS way…

Page 11: Application Centric Approach to Devops

Cloudify provide the equivalent of Amazon OpsWork on OpenStack and other clouds

App Centric Devops – the AWS way…

Page 12: Application Centric Approach to Devops

App Centric Devops – 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

Page 13: Application Centric Approach to Devops

DevOps Automation: PaddyPower

• Ireland's largest online betting service.

• Use Cloudify for Continues Delivery

• Stack: Cloudify, Chef, Cloud Stack• Reason for Choosing Cloudify

– PAAS strives to abstract provisioning and deployment thus reducing complexity.

– PAAS constrains applica'ons to use features provided by the platform.

– Cloudify was geared to work in DevOps environment

Page 14: Application Centric Approach to Devops

PaddyPower View

Page 15: Application Centric Approach to Devops

PUTTING APPLICATION AND CONFIGURATION CENTRIC TOOLS TOGETHER

Page 16: Application Centric Approach to Devops

Cloudify Chef Integration(Deployment)

• Install Chef Agent• Setup Chef Server• Support existing Chef

Recipes/Cookbooks• Remote Execution• Application

Dependency• Cloud portability

Page 17: Application Centric Approach to Devops

Cloudify Chef Integration

(Post Deployment)

Page 18: Application Centric Approach to Devops

Cloudify Chef Integration(Advances)

• Advanced Orchestration– Self Healing– Auto-Scaling– DR Automation– DevOps Policies*

• Standard Recipe (Yaml/Tosca)*

Page 19: Application Centric Approach to Devops

Remote Execution

Page 20: Application Centric Approach to Devops

Update

Orchestrator

Jenkins

API

Update

LoadBalancer Web DataBase

Update war()Reload()

snapshot()Alter-table()

addNode()removeNode()

Monitoring Alarming

Page 21: Application Centric Approach to Devops

Example: Running MySQL

Page 23: Application Centric Approach to Devops

Thank You!