Jump to: navigation, search

Tuskar/Instack

< Tuskar
Revision as of 08:00, 19 November 2014 by Lsmola (talk | contribs) (Installing, Updating and testing Overcloud from CLI)

Using Tuskar and Tuskar-UI with instack

Installing from source

Follow steps in https://github.com/agroup/instack-undercloud/blob/master/README-source.md

Create ssh tunnel so you can access Tuskar UI from you machine, example:

# 192.168.122.215 is undercloud ip
# ibm-x3550m4-07.lab.eng.brq.redhat.com is lab addr
# Tuskar-UI be accessible on localhost:8045 in your browser
ssh -L 8045:192.168.122.215:80 root@ibm-x3550m4-07.lab.eng.brq.redhat.com

Installing, Updating and testing Overcloud from CLI

# after you install Undercloud, deploy Overcloud using this:
CONTROLSCALE=1
COMPUTESCALE=1
BLOCKSTORAGESCALE=0
SWIFTSTORAGESCALE=0

source deploy-overcloudrc
source tripleo-undercloud-passwords
source stackrc
source instack-undercloud/deploy-virt-overcloudrc
source instack-undercloud/instack-sourcerc
instack-deploy-overcloud --tuskar
# And run this for stack-update:
BLOCKSTORAGESCALE=1
SWIFTSTORAGESCALE=1
instack-update-overcloud --tuskar 
# Run tests of Overcloud
instack-test-overcloud
# if you want to verify Overcloud with CLI, run this:
source stackrc
source tripleo-overcloud-passwords
OVERCLOUD_ENDPOINT=$(heat output-show overcloud KeystoneURL|sed 's/^"\(.*\)"$/\1/')
export OVERCLOUD_IP=$(echo $OVERCLOUD_ENDPOINT | awk -F '[/:]' '{print $4}')
export no_proxy=${no_proxy:-""}
export no_proxy=$no_proxy,$OVERCLOUD_IP

NEW_JSON=$(jq '.overcloud.password="'${OVERCLOUD_ADMIN_PASSWORD}'" | .overcloud.endpoint="'${OVERCLOUD_ENDPOINT}'" | .overcloud.endpointhost="'${OVERCLOUD_IP}'"' $NODES_JSON)

echo $NEW_JSON > $NODES_JSON
export TE_DATAFILE=$NODES_JSON
source tripleo-incubator/overcloudrc

Installing from UI and testing Overcloud from CLI

# after you deploy and initialize overcloud from UI
OVERCLOUD_ADMIN_PASSWORD=<the one from UI overview page>
export NODES_JSON=${NODES_JSON:-"instackenv.json"}
source stackrc
OVERCLOUD_ENDPOINT=$(heat output-show overcloud KeystoneURL|sed 's/^"\(.*\)"$/\1/')
export OVERCLOUD_IP=$(echo $OVERCLOUD_ENDPOINT | awk -F '[/:]' '{print $4}')
touch ~/.ssh/known_hosts
chmod 600 ~/.ssh/known_hosts
ssh-keygen -R $OVERCLOUD_IP
export no_proxy=${no_proxy:-""}
export no_proxy=$no_proxy,$OVERCLOUD_IP
NEW_JSON=$(jq '.overcloud.password="'${OVERCLOUD_ADMIN_PASSWORD}'" | .overcloud.endpoint="'${OVERCLOUD_ENDPOINT}'" | .overcloud.endpointhost="'${OVERCLOUD_IP}'"' $NODES_JSON)
echo $NEW_JSON > $NODES_JSON
export TE_DATAFILE=$NODES_JSON
source /home/stack/tripleo-incubator/overcloudrc

nova flavor-create m1.demo auto 512 10 1

# TODO(lsmola) are those passwords used anywhere
tripleo setup-overcloud-passwords -o tripleo-overcloud-passwords

instack-test-overcloud

Running TuskaUI in development mode

For development it's better to install Horizon and Tuskar-UI on your lab, so you don't have to reinstall it every time you reinstall Instack.

# Install Tuskar-UI and Horizon on your lab, follow:
http://tuskar-ui.readthedocs.org/en/latest/install.html
# Set routes, rerun this every-time Undercloud IP changes
BM_NETWORK_CIDR=192.0.2.0/24
ROUTE_DEV=virbr0
SEED_IP=libvirt default network ip of instack vm (undercloud VM)
ip route replace $BM_NETWORK_CIDR dev $ROUTE_DEV via $SEED_IP
# In horizon local_settings set: 
OPENSTACK_HOST=192.0.2.1
# Run horizon manually
tools/with_venv.sh ./manage.py runserver 0.0.0.0:8320
# Either allow the Horizon port in firewall or setup ssh tunnel
ssh -L 8330:localhost:8320 root@ibm-x3550m4-07.lab.eng.brq.redhat.com
# Go to browser on localhost:8330