There are in general two ways to install Senlin service: you can install it via devstack, or you install it manually, following the steps outlined in this document.
This is the recommended way to install the Senlin service. Please refer to following detailed instructions.
Download DevStack:
$ git clone https://git.openstack.org/openstack-dev/devstack
$ cd devstack
Add following repo as external repositories into your local.conf
file:
[[local|localrc]]
#Enable senlin
enable_plugin senlin https://git.openstack.org/openstack/senlin
#Enable senlin-dashboard
enable_plugin senlin-dashboard https://git.openstack.org/openstack/senlin-dashboard
Optionally, you can add a line SENLIN_USE_MOD_WSGI=True
to the same local.conf
file if you prefer running the Senlin API service under Apache.
Run ./stack.sh
:
$ ./stack.sh
Note that Senlin client is also installed when following the instructions.
$ cd /opt/stack
$ git clone https://git.openstack.org/openstack/senlin.git
$ cd /opt/stack/senlin
$ sudo pip install -e .
Register Senlin clustering service with keystone.
This can be done using the setup-service script under the
tools
folder.
NOTE: Suppose you have devstack installed under the
/opt/devstack
folder
$ source /opt/devstack/openrc admin admin
$ cd /opt/stack/senlin/tools
$ ./setup-service <HOST IP> <SERVICE_PASSWORD>
$ cd /opt/stack/senlin
$ tools/gen-config
$ sudo mkdir /etc/senlin
$ sudo cp etc/senlin/api-paste.ini /etc/senlin
$ sudo cp etc/senlin/policy.json /etc/senlin
$ sudo cp etc/senlin/senlin.conf.sample /etc/senlin/senlin.conf
Edit file /etc/senlin/senlin.conf
according to your system settings.
The most common options to be customized include:
[database]
connection = mysql://senlin:<MYSQL_SENLIN_PW>@127.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
[authentication]
auth_url = http://<HOST>:5000/v3
service_username = senlin
service_password = <SENLIN PASSWORD>
service_project_name = service
[oslo_messaging_rabbit]
rabbit_userid = <RABBIT USER ID>
rabbit_hosts = <HOST>
rabbit_password = <RABBIT PASSWORD>
[oslo_messaging_notifications]
driver = messaging
For more comprehensive helps on configuration options, please refer to Configuration Options documentation.
Create Senlin database using the senlin-db-recreate script under thetools
subdirectory. Before calling the script, you need edit it to customize the password you will use for thesenlin
user. You need to update this script with the <DB PASSWORD> entered in step4.
$ cd /opt/stack/senlin/tools
$ ./senlin-db-recreate
You may need two consoles for the services i.e., one for each service.
$ senlin-engine --config-file /etc/senlin/senlin.conf
$ senlin-api --config-file /etc/senlin/senlin.conf
$ cd /opt/stack
$ git clone https://git.openstack.org/openstack/python-senlinclient.git
$ cd python-senlinclient
$ sudo python setup.py install
To check whether Senlin server and Senlin client have been installed
successfully, run command openstack cluster build info
in a console.
The installation is successful if the command output looks similar to the
following.
$ openstack cluster build info
+--------+---------------------+
| Field | Value |
+--------+---------------------+
| api | { |
| | "revision": "1.0" |
| | } |
| engine | { |
| | "revision": "1.0" |
| | } |
+--------+---------------------+
You are ready to begin your journey (aka. adventure) with Senlin, now.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.