Lifecycle management service for pooled bare-metal infrastructure.
Go to file
Anusha Ramineni 1afb9f0cbf Update Node controller to make it generic
This commit updates node controller code to use generic manager
interface instead of redfish directly

Partially-Implements blueprint add-vendor-extensible-framework
Change-Id: Ic551167798306a1ed6b5c609117e6d19e6de6574
2017-09-08 16:39:04 +05:30
api-ref/source Fix a typo 2017-07-13 07:52:52 +00:00
doc Move all the config items to etc folder 2017-05-02 15:09:11 +05:30
etc Fixing installation for Ubuntu 16.04 2017-05-31 17:44:01 +05:30
releasenotes Enable release notes translation 2017-01-30 18:24:39 +00:00
simulator Some typing error in README document 2017-05-05 14:53:33 +05:30
ui Clean up css styles for each components. 2017-03-01 01:33:58 +00:00
valence Update Node controller to make it generic 2017-09-08 16:39:04 +05:30
.gitignore Clean valence.conf.sample generated by install_valence.sh 2017-06-28 16:47:22 -07:00
.gitreview Update project name setting in .gitreview 2016-11-23 21:44:55 -08:00
.testr.conf Make functional tests out of Jenkin's verification 2017-01-06 14:27:59 +08:00
babel.cfg Initial import from external repository 2016-10-07 08:50:05 +08:00
CONTRIBUTING.rst Updated the launchpad link for bug reporting 2016-12-16 15:17:10 +05:30
HACKING.rst Update the documentation link for doc migration 2017-07-26 07:53:30 +00:00
install_valence.sh Clean valence.conf.sample generated by install_valence.sh 2017-06-28 16:47:22 -07:00
MANIFEST.in Initial import from external repository 2016-10-07 08:50:05 +08:00
README.rst Add missing package dependency 2017-06-08 14:32:19 -07:00
requirements.txt Import sushy lib and extend it as well as show its usage for mutli-podm 2017-07-12 09:39:04 +08:00
setup.cfg Add manager.py to redirect to respective podmanager 2017-09-06 11:47:20 +05:30
setup.py Initial import from external repository 2016-10-07 08:50:05 +08:00
test-requirements.txt Use flake8-import-order 2017-02-27 12:45:06 -08:00
tox.ini Remove valence.conf.sample 2017-04-10 11:51:37 +05:30

Openstack Valence Project

Valence is a service for lifecycle management of pooled bare-metal hardware infrastructure such as Intel(R) Rack Scale architecture which uses Redfish(TM) as one of the management protocols.

Free software

Apache license

Wiki

https://wiki.openstack.org/wiki/Valence

Source

http://git.openstack.org/cgit/openstack/valence

Bugs

http://bugs.launchpad.net/openstack-valence

Download and Installation

The following steps capture how to install valence. All installation steps require super user permissions.

Database etcd installation

Single node installation reference: https://github.com/coreos/etcd/releases

Distributed installation reference: https://github.com/coreos/etcd/blob/master/Documentation/op-guide/clustering.md

For development, single node installation is recommended practice.

Valence installation

  1. Install software dependencies

    $ sudo apt-get install git python-pip python-dev build-essential

  2. Clone the Valence code from git repo.

    $ git clone https://git.openstack.org/openstack/valence

  3. Execute the 'install_valence.sh' file present in the Valence root directory. The install script will automatically install the dependencies listed in the requirements.txt file.

    $ sudo bash install_valence.sh

  4. Check the values in valence.conf located at /etc/valence/valence.conf

    set the ip/credentials of podm for which this Valence will interact

  5. Check the PYTHON_HOME and other variables in /etc/init/valence.conf

  6. Initialize etcd database

    $ valence-db-manager init

    Note: The TypeError exception "TypeError: NoneType object is not callable" is caused by known python-etcd bug, which will not impact this db init functionality. https://github.com/jplana/python-etcd/issues/190

  7. Start valence service

    $ sudo service valence start

  8. Logs are located at /var/logs/valence/

GUI installation

Please refer to the installation steps in the ui/README file.

Components

Valence follows the typical OpenStack project setup. The components are listed below:

valence-api

A python based daemon based on Flask framework to expose Valence REST APIs. The api service communicates to the PODM through REST interface using Redfish(TM) specification. For adding new api please refer https://github.com/openstack/valence/blob/master/doc/source/developer-guide/add_new_api.rst

valence-ui

valence-ui provides a Web-based GUI interface that can be used to explore Rack Scale Design (RSD) artifacts and compose/disassemble nodes. valence-ui is implemented using Node.js runtime environment and hosted through apache. valence-ui makes us of React.js javascript libaray and invoke Valence REST APIs through ajax REST calls.

Features

Please refer the Valence blueprints for supported and in-the-pipeline features. https://blueprints.launchpad.net/openstack-valence