Senlin is a clustering service for OpenStack clouds. It creates and operates clusters of homogeneous 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.
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.
The senlinclient package provides a plugin for the openstackclient tool so you have a command line interface to communicate with the senlin-api to manage clusters, nodes, profiles, policies, actions and events. End developers could also use the Senlin REST API directly.
The senlin-dashboard is a Horizon plugin that provides a UI for senlin.
The senlin-api component provides an OpenStack-native REST API that processes API requests by sending them to the senlin-engine over RPC.
The senlin-engine‘s main responsibility is to create and orchestrate the clusters, nodes, profiles and policies.
You will need to make sure you have a suitable environment for deploying Senlin. Please refer to Installation for detailed instructions on setting up an environment to use the Senlin service.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.