Jump to: navigation, search

Senlin

Revision as of 09:20, 10 March 2015 by Qiming (talk | contribs) (Created page with "__NOTOC__ = OpenStack Clustering = The mission of the OpenStack Clustering project is to create a service for managing the homogeneous objects exposed by other services in a...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)


OpenStack Clustering

The mission of the OpenStack Clustering project is to create a service for managing the homogeneous objects exposed by other services in an OpenStack cloud.

Senlin

Senlin provides a clustering service to create and manage objects of the same nature, e.g. Nova servers, Heat stacks, Cinder volumes, etc. The collection of these objects is referred to as a cluster. Senlin abstracts the physical objects as nodes, which can belong to any cluster of the same type. Senlin supports object creation, deletion and update via a concept called Profile. Each profile is in essential a driver to communicate with certain services for object manipulation.

With Senlin, user can attach a policy to a cluster and enforce it, or detach it from a cluster. Some built-in policies are provided to meet requirements such as auto-scaling, load-balancing, high-availability etc.

Senlin provides an OpenStack-native ReST API and a command line interface tool to other services and the users.

How it works

  • A Senlin profile describes the information needed to create a node (or a cluster). A user will create a profile via Senlin first. Different profile types talk to different backend drivers.
  • The profile then can be used to create a node or a cluster.
  • The cluster membership can be changed by explicit adding or removal of nodes, or by a scale-in/out operation.
  • User can instruct a node to join a cluster or leave its current cluster.
  • A Senlin policy describes certain rules that will be checked and enforced.
  • (TBC)

Architecture

Senlin comprises a number of Python applications:

senlin

The senlin tool is a CLI tool.

senlin-api

The senlin-api component provides an OpenStack-native ReST API.

senlin-engine

The senlin engine does the main work of managing clusters, nodes, profiles, policies, actions, events and webhooks.

Development

[TBD]

Get involved

IRC

The developers use IRC in #senlin on Freenode for development discussion.

Meetings

[TBD]

Mailing list

Discussions about Senlin happens on the openstack-dev mailing list. Please use the tag [Senlin] in the subject line for new threads.