june 2014 hug - continuuity loom : cluster management

16
100% Open Source, multi-tiered application infrastructure provisioning and management Nitin Motgi Albert Shau @nmotgi @albertshau tryloom.io

Upload: yahoo-developer-network

Post on 26-Jan-2015

102 views

Category:

Software


0 download

DESCRIPTION

June 2014 HUG - Continuuity Loom : Cluster Management

TRANSCRIPT

Page 1: June 2014 HUG - Continuuity Loom : Cluster Management

100% Open Source, multi-tiered application infrastructure provisioning and management!

Nitin Motgi Albert Shau@nmotgi @albertshau

tryloom.io

Page 2: June 2014 HUG - Continuuity Loom : Cluster Management

Our Problem

2

• Create variety of application infrastructure stack - Continuuity Reactor + Hadoop (CDH, HDP, Apache), Secured Hadoop, LAMP, Mesos, …

• In Public and Private Cloud

• Using our existing investment in SCM tools - Chef, Shell script, etc

• Easy way to manage the stack - like add new services, manage configuration changes, scale up/down, etc..

• DevOps friendly, easy to manage and maintain

• Resource constraints (1 Ninja support 20 Developers) - Ninja had no vacations or couldn’t get sick

Page 3: June 2014 HUG - Continuuity Loom : Cluster Management

3

Challenges

Simply HardMulti-tier applications are hard to provision, install, configure, monitor & scale and also have complex cluster life cycles.

Lack of experience and repeatability Installation and Configuration require a lot of practice to tackle common pitfalls for configuring complex multi-tier application clusters, complexity prevents simple attempts at automation

Increased organization bottlenecksComplexity limits number of people who can provision, install and configure complex multi-tier application clusters

Decreased developer productivityHard to support DevOps role within an organization without an easy to use self serving model

No governance with reference architecturesDifficult to model reference architectures in complex environments

Multiple cloud environmentsSupporting multiple cloud environments is extremely hard.

Page 4: June 2014 HUG - Continuuity Loom : Cluster Management

Our Assessment

4

• Numerous technologies available that solve parts of the problem

• Open Source / Closed Source

• We looked closely at Apache Ambari, Crowbar, etc…

• Concluded that none at current state were solving our problem (Happy to talk about it after this talk)

Page 5: June 2014 HUG - Continuuity Loom : Cluster Management

Introducing

5

A system for templatizing and materializing complex multi-tiered application reference architectures in public or private clouds. Designed bottom-up to support different facets of your organization - from developers, operations and system administrators to large service providers.

Page 6: June 2014 HUG - Continuuity Loom : Cluster Management

Who can use it ?

6

CONTINUUITY LOOM TEMPLATES ON CLOUD

DEVELOPERCreate, provision and decommission clusters of complex, multi-tiered applications using a self-service model.

SYS ADMINWrite Chef recipes, Puppet modules and shell scripts for application services.

IT OPERATIONSCreate and manage Continuuity Loom templates for multi-tiered application services. Configure compliance policies and enforce service constraints.

Page 7: June 2014 HUG - Continuuity Loom : Cluster Management

Lifecycle

7

Create!Loom!

Template

Save!Template

Publish!Template

Expose!REST API

Create!Instance of !

template

on any cloud

Reference !Architecture!(Enterprise)

Centralized!Administration!

Control with!Multi-tenancy

Supports Hybrid!Infrastructure!& Architecture

Page 8: June 2014 HUG - Continuuity Loom : Cluster Management

Concepts

8

• Service!

• Software component. ex: Namenode, Datanode, ResourceManager, etc.

• Specify dependencies between services

• Template!

• Defines how a cluster should be created

• Specify compatible services, configuration and constraints which determine service placement

• Provider!

• Creates and destroys machines. ex: AWS, Rackspace, Joyent, Openstack

• Automator!

• Performs service actions like start, stop, config, install, remove, init

• ex: chef, puppet, scripts, etc.

Page 9: June 2014 HUG - Continuuity Loom : Cluster Management

Architecture

9

Page 10: June 2014 HUG - Continuuity Loom : Cluster Management

Cluster Creation: Solver

10

Template +

args (size, etc.)

Solver

Layout

services:{s1, s3} hw: large image: ubuntu12

x 1

services:{s2} hw: medium image: ubuntu12

x 4

Page 11: June 2014 HUG - Continuuity Loom : Cluster Management

Cluster Creation: Planner

11

Layout Dependencies

Planner

Coordinator

Task Queue

ProvisionersProvisionersProvisionersProvisionersProvisionersProvisioners

Plan

Page 12: June 2014 HUG - Continuuity Loom : Cluster Management

Planner : DAG

12

Page 13: June 2014 HUG - Continuuity Loom : Cluster Management

Planner : Linearize

13

Page 14: June 2014 HUG - Continuuity Loom : Cluster Management

Planner: Expand

14

Page 15: June 2014 HUG - Continuuity Loom : Cluster Management

DEMO

15

Page 16: June 2014 HUG - Continuuity Loom : Cluster Management

16

Thank you

Nitin Motgi Albert Shau@nmotgi @albertshau

http://github.com/continuuity/loom