3.6 KiB
Getting Started with Senlin
Overview
Senlin is a clustering service for OpenStack clouds. It creates and operates clusters of homogenous objects exposed by other OpenStack services. The goal is to make orchestration of collections of similar objects easier.
A Cluster
can be
associated with different Policy
objects that can be checked/enforced at
varying enforcement levels. Through service APIs, a user can dynamically
add Node
to and remove
node from a cluster, attach and detach policies, such as creation
policy, deletion policy, load-balancing policy,
scaling policy, health policy etc. Through integration
with other OpenStack projects, users will be enabled to manage
deployments and orchestrations large-scale resource pools much
easier.
Currently no other clustering service exists for OpenStack. The developers believe cloud operators have a strong desire to create and operate resource pools on OpenStack deployments. The Heat project provides a preliminary support to resource groups but Heat team has achieved a consensus that such kind of a service should stand on its own feet.
Senlin is designed to be capable of managing different types of
objects. An object's lifecycle is managed using Profile Type
implementations, which are plugins that can be dynamically loaded by the
service engine.
Components
The developers are focusing on creating an OpenStack style project using OpenStack design tenets, implemented in Python. We have started with a close interaction with Heat project.
senlin
The senlin
tool
is a command line interface that communicates with the senlin-api
to manage
clusters, nodes, profiles, policies, actions and events. End developers
could also use the Senlin REST API directly.
senlin-api
The senlin-api
component provides an OpenStack-native REST API that processes API
requests by sending them to the senlin-engine
over RPC.
senlin-engine
The senlin-engine
's main responsibility is to create
and orchestrate the clusters, nodes, profiles and policies.
Installation
You will need to make sure you have a suitable environment for
deploying Senlin. Please refer to Installation <guide-install>
for detailed
instructions on setting up an environment to use the Senlin service.
How To Use
This section walks you through some basic operations you can do with the Senlin service including its clients.
Working with Profile Types <profile_types>
Managing Profiles Objects <profiles>
Creating Clusters <clusters>
Creating and Managing Nodes <nodes>
Managing Cluster Membership <membership>
Working with Policy Types <policy_types>
Creating Your Own Policy Objects <policies>
Binding a Policy to a Cluster <bindings>
Creating Webhooks for Your Objects <webhooks>
Examinining Actions <actions>
Browsing Events <events>