Lifecycle management service for pooled bare-metal infrastructure.
Go to file
Rajiv Kumar e121b002de Enable release notes translation
Releasenote translation publishing is being prepared. 'locale_dirs'
needs to be defined in conf.py to generate translated version of the
release notes.

Note that this repository might not get translated release notes - or
no translations at all - but we add the entry here nevertheless to
prepare for it.

Change-Id: I8e60294e3f10cf649233edb699bfbded3413f152
2017-01-30 18:24:39 +00:00
api-ref/source rename issue for flavor->flavors 2016-12-06 10:27:40 +08:00
doc Remove document for proxy setting 2016-12-12 11:35:14 -08:00
etc/valence Fix get_option() bug when option value type is bool. 2017-01-12 04:26:06 +00:00
releasenotes Enable release notes translation 2017-01-30 18:24:39 +00:00
ui Add vlan parameters in compose menu 2016-11-21 18:23:53 +00:00
valence Remove object imports. 2017-01-18 07:59:58 +05:30
.gitignore Remove reference to magnum in .gitignore 2016-12-13 13:22:19 -08: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 Fix h305 python import order issue 2016-11-22 09:17:33 +05:30
install_valence.sh Fixed shellcheck error and warning on install_valence.sh 2016-12-26 15:14:13 +05:30
MANIFEST.in Initial import from external repository 2016-10-07 08:50:05 +08:00
README.rst Merge "Fix execute db_manager init failed" 2017-01-17 20:26:51 +00:00
requirements.txt Insert DB:etcd for BP:multi-podmanager 2016-12-19 09:12:55 -08:00
setup.cfg Insert DB:etcd for BP:multi-podmanager 2016-12-19 09:12:55 -08:00
setup.py Initial import from external repository 2016-10-07 08:50:05 +08:00
test-requirements.txt Auto add timestamp fields into db model 2016-12-28 15:27:29 -08:00
tox.ini Make functional tests out of Jenkin's verification 2017-01-06 14:27:59 +08:00

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

  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

    $ 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