Revised the README file

We use RST doc format after migration to StackForge, instead of the
Markdown file which was used on github.com. This patch also clarified
the installation and configuration process.

Change-Id: Ifa8a0a571e0c5fb62830d4e7952fded7d7c82424
This commit is contained in:
tengqm 2015-04-20 10:15:26 -04:00
parent 1fff894b19
commit 893a70c030
3 changed files with 124 additions and 82 deletions

View File

@ -1,81 +0,0 @@
senlin
======
Senlin is a clustering service for OpenStack cloud. 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.
Senlin provides ReSTful APIs to users so that they can associate various
policies to a cluster. Sample policies include placement policy, load
balancing policy, failover policy, scaling policy, ... and so on.
Developers will decide when to contribute it to OpenStack community.
IRC Channel: #senlin
Install via Devstack
-----
Please refer to devstack/README.rst
Installation
-----
* Get senlin code from github
```
git clone https://github.com/tengqm/senlin.git
```
* Install requirements
```
pip install -r requirements.txt
```
* Install senlin
```
./install.sh
```
* Create keystone service for senlin
There is a setup-service script under tools folder to do this for you, you should use the script to automate this step and step 5 for you.
```
keystone service-create --type clustering --name senlin
```
* Create keystone endpoint for senlin
There is a setup-service script under tools folder to do this for you, you should use the script to automate step 4 and this step for you.
```
keystone endpoint-create --region RegionOne --service <service_id> --publicurl 'http://<your_ip>:8778/v1/$(tenant_id)s' --adminurl 'http://<your_ip>:8778/v1/$(tenant_id)s' --internalurl 'http://<your_ip>:8778/v1/$(tenant_id)s'
```
* Update configuration file /etc/senlin/senlin.conf according to your system
Note that the item policy_dir should be pointed to a folder which include file policy.json
* Start senlin engine and api service
```
senlin-engine --config-file /etc/senlin/senlin.conf --log-file /tmp/senlin-api.log --debug
senlin-api --config-file /etc/senlin/senlin.conf --log-file /tmp/senlin-api.log --debug
```
* Get senlin client code
```
git clone https://github.com/tengqm/python-senlinclient.git
```
* Install senlin client
```
python setup.py install
```
* You are ready to play with senlin right now

123
README.rst Normal file
View File

@ -0,0 +1,123 @@
senlin
======
Senlin is a clustering service for OpenStack cloud. 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.
Senlin provides ReSTful APIs to users so that they can associate various
policies to a cluster. Sample policies include placement policy, load
balancing policy, failover policy, scaling policy, ... and so on.
IRC Channel: #senlin
--------------------
Install via Devstack
--------------------
This is the recommended way to install Senlin service. Please refer to
`devstack/README.rst` for detailed instructions.
Note that Senlin client is also installed when following the instructions
it the above mentioned document.
-------------------
Manual Installation
-------------------
Install Senlin Server
---------------------
1. Get Senlin source code from OpenStack git repository
::
$ cd /opt/stack
$ git clone http://git.openstack.org/stackforge/senlin.git
2. Install Senlin with required packages
::
$ cd /opt/stack/senlin
$ sudo pip install -e .
3. Register Senlin clustering service with keystone.
This can be done using the `setup-service` script under `tools` folder.
::
$ cd /opt/stack/senlin/tools
$ ./setup-service <HOST IP>
4. Generate configuration file for the Senlin service
::
$ cd /opt/stack/senlin
$ tools/gen-config
$ sudo mkdir /etc/senlin
$ cp etc/senlin/api-paste.ini /etc/senlin
$ cp etc/senlin/policy.json /etc/senlin
$ cp etc/senlin/senlin.conf.sample
Edit file `/etc/senlin/senlin.conf` according to your system settings. The
most common options to be customized include::
[database]
connection = mysql://senlin:<DB PASSWORD>.0.0.1/senlin?charset=utf8
[keystone_authtoken]
auth_uri = http://<HOST>:5000/v3
auth_version = 3
cafile = /opt/stack/data/ca-bundle.pem
identity_uri = http://<HOST>:35357
admin_user = senlin
admin_password = <SENLIN PASSWORD>
admin_tenant_name = service
[oslo_messaging_rabbit]
rabbit_host = <HOST>
rabbit_password = <RABBIT PASSWORD>
5. Create Senlin Database
Create Senlin database using the `senlin-db-recreate` script under the `tools`
subdirectory. Before calling the script, you need edit it to customize the
password you will use for the `senlin` user.
::
$ cd /opt/stack/senlin/tools
$ ./senlin-db-recreate
6. Start senlin engine and api service.
You may need two consoles for the services each.
::
$ senlin-engine --config-file /etc/senlin/senlin.conf
$ senlin-api --config-file /etc/senlin/senlin.conf
---------------------
Install Senlin Client
---------------------
1. Get Senlin client code from OpenStack git repository.
::
$ cd /opt/stack
$ git clone http://git.openstack.org/stackforge/python-senlinclient.git
2. Install senlin client.
::
$ cd python-senlinclient
$ python setup.py install
You are ready to begin your journey (aka. adventure) with Senlin, now.

View File

@ -3,7 +3,7 @@ name = senlin
version = 2015.1
summary = OpenStack Clustering
description-file =
README.md
README.rst
author = OpenStack
author-email = openstack-dev@lists.openstack.org
home-page = http://www.openstack.org/