This is an old revision of the document!
This is a temporary location for a Congress install guide that will be included in the Copper git repo.
Following are instructions for installing Congress on an Ubuntu 14.04 LXC container in the OPNFV Controller node, as installed by the JOID installer. This guide uses instructions from the Congress guide on readthedocs. Specific values below will need to be modified if you intend to repeat this procedure in your install environment.
OPFNV install per JOID
sudo juju ssh ubuntu@192.168.10.21
sudo lxc-clone -o juju-trusty-lxc-template -n juju-trusty-congress
sudo lxc-start -n juju-trusty-congress -d
sudo lxc-info -n juju-trusty-congress
sudo lxc-destroy --name juju-trusty-congress
sudo juju ssh ubuntu@192.168.10.117
export CONGRESS_HOST=192.168.10.106 export KEYSTONE_HOST=192.168.10.119 export CEILOMETER_HOST=192.168.10.116 export CINDER_HOST=192.168.10.117 export GLANCE_HOST=192.168.10.118 export NEUTRON_HOST=192.168.10.125 export NOVA_HOST=192.168.10.121
sudo apt-get install python-pip -y
sudo apt-get install default-jre -y
# when prompted, set and remember mysql root user password sudo apt-get install git gcc python-dev libxml2 libxslt1-dev libzip-dev mysql-server python-mysqldb -y sudo pip install virtualenv
git clone https://github.com/openstack/congress.git cd congress git checkout liberty/stable
virtualenv ~/congress cd congress source bin/activate
sudo mkdir -p /etc/congress sudo mkdir -p /etc/congress/snapshot sudo mkdir /var/log/congress sudo chown ubuntu /var/log/congress sudo cp etc/api-paste.ini /etc/congress sudo cp etc/policy.json /etc/congress
sudo apt-get install libffi-dev -y sudo apt-get install openssl -y sudo apt-get install libssl-dev -y
pip install -r requirements.txt python setup.py install
pip install tox
tox -egenconfig
sed -i -- 's/#verbose = true/verbose = true/g' etc/congress.conf.sample sed -i -- 's/#log_file = <None>/log_file = congress.log/g' etc/congress.conf.sample sed -i -- 's/#log_dir = <None>/log_dir = \/var\/log\/congress/g' etc/congress.conf.sample sed -i -- 's/#bind_host = 0.0.0.0/bind_host = 192.168.10.117/g' etc/congress.conf.sample sed -i -- 's/#policy_path = <None>/policy_path = \/etc\/congress\/snapshot/g' etc/congress.conf.sample sed -i -- 's/#auth_strategy = keystone/auth_strategy = noauth/g' etc/congress.conf.sample sed -i -- 's/#drivers =/drivers = congress.datasources.neutronv2_driver.NeutronV2Driver,congress.datasources.glancev2_driver.GlanceV2Driver,congress.datasources.nova_driver.NovaDriver,congress.datasources.keystone_driver.KeystoneDriver,congress.datasources.ceilometer_driver.CeilometerDriver,congress.datasources.cinder_driver.CinderDriver/g' etc/congress.conf.sample sed -i -- 's/#auth_host = 127.0.0.1/auth_host = 192.168.10.108/g' etc/congress.conf.sample sed -i -- 's/#auth_port = 35357/auth_port = 35357/g' etc/congress.conf.sample sed -i -- 's/#auth_protocol = https/auth_protocol = http/g' etc/congress.conf.sample sed -i -- 's/#admin_tenant_name = admin/admin_tenant_name = admin/g' etc/congress.conf.sample sed -i -- 's/#admin_user = <None>/admin_user = congress/g' etc/congress.conf.sample sed -i -- 's/#admin_password = <None>/admin_password = congress/g' etc/congress.conf.sample sed -i -- 's/#connection = <None>/connection = mysql:\/\/ubuntu:<mysql password>@localhost:3306\/congress/g' etc/congress.conf.sample
sudo cp etc/congress.conf.sample /etc/congress/congress.conf
sudo mysql -u root -p CREATE DATABASE congress; GRANT ALL PRIVILEGES ON congress.* TO 'ubuntu'@'localhost' IDENTIFIED BY 'ubuntu'; GRANT ALL PRIVILEGES ON congress.* TO 'ubuntu'@'%' IDENTIFIED BY 'ubuntu'; exit
sudo apt-get build-dep python-mysqldb pip install MySQL-python
congress-db-manage --config-file /etc/congress/congress.conf upgrade head
pip install python-openstackclient pip install python-congressclient pip install python-keystoneclient
source ~/admin-openrc.sh
pip install cliff --upgrade export ADMIN_ROLE=$(openstack role list | awk "/ Admin / { print \$2 }") export SERVICE_TENANT=$(openstack project list | awk "/ admin / { print \$2 }") openstack user create --password congress --project admin --email "congress@example.com" congress export CONGRESS_USER=$(openstack user list | awk "/ congress / { print \$2 }") openstack role add $ADMIN_ROLE --user $CONGRESS_USER --project $SERVICE_TENANT
openstack service create congress --type "policy" --description "Congress Service" export CONGRESS_SERVICE=$(openstack service list | awk "/ congress / { print \$2 }")
openstack endpoint create $CONGRESS_SERVICE \ --region $OS_REGION_NAME \ --publicurl http://$CONGRESS_HOST:1789/ \ --adminurl http://$CONGRESS_HOST:1789/ \ --internalurl http://$CONGRESS_HOST:1789/
bin/congress-server
To remove: openstack congress datasource delete nova ==
openstack congress datasource create nova "nova" \ --config username=$OS_USERNAME \ --config tenant_name=$OS_TENANT_NAME \ --config password=$OS_PASSWORD \ --config auth_url=http://$KEYSTONE_HOST:5000/v2.0 openstack congress datasource create neutronv2 "neutronv2" \ --config username=$OS_USERNAME \ --config tenant_name=$OS_TENANT_NAME \ --config password=$OS_PASSWORD \ --config auth_url=http://$KEYSTONE_HOST:5000/v2.0 openstack congress datasource create ceilometer "ceilometer" \ --config username=$OS_USERNAME \ --config tenant_name=$OS_TENANT_NAME \ --config password=$OS_PASSWORD \ --config auth_url=http://$KEYSTONE_HOST:5000/v2.0 openstack congress datasource create cinder "cinder" \ --config username=$OS_USERNAME \ --config tenant_name=$OS_TENANT_NAME \ --config password=$OS_PASSWORD \ --config auth_url=http://$KEYSTONE_HOST:5000/v2.0 openstack congress datasource create glancev2 "glancev2" \ --config username=$OS_USERNAME \ --config tenant_name=$OS_TENANT_NAME \ --config password=$OS_PASSWORD \ --config auth_url=http://$KEYSTONE_HOST:5000/v2.0 openstack congress datasource create keystone "keystone" \ --config username=$OS_USERNAME \ --config tenant_name=$OS_TENANT_NAME \ --config password=$OS_PASSWORD \ --config auth_url=http://$KEYSTONE_HOST:5000/v2.0