DevStack-like environment for StackTach.v3
Go to file
Sandy Walsh ddda9be458 Remove oahu mentions ... and fix up README
Change-Id: I9c077b6e5ed10be76ef6b702d10a30f33aff6fa2
2015-03-05 12:12:48 -08:00
ansible Expanded event_definitions to UsageHandler required traits. 2015-02-25 11:03:01 -08:00
bin Fix silly mistake with api results. 2015-01-28 12:14:43 -08:00
docs More docs on sandbox setup 2015-03-05 11:59:25 -08:00
etc stv3_status.py 2015-01-22 07:14:16 -08:00
vagrant Update Vagrant script to avoid needing sudo for build.sh 2015-02-19 08:44:59 -06:00
winchester Expanded event_definitions to UsageHandler required traits. 2015-02-25 11:03:01 -08:00
.gitignore Initial commit 2014-05-26 23:10:55 -03:00
.gitreview Preliminary time-sync and usage support 2014-10-16 13:08:42 -07:00
build.sh Added missing docs for streams and added events api docs. 2015-03-04 09:31:53 -08:00
distiller.conf distiller support for metadata extraction 2014-05-29 20:15:04 +00:00
flush.sh lots of experiments 2014-08-19 13:40:06 +00:00
LICENSE Initial commit 2014-05-26 23:10:55 -03:00
logging.conf Start on STv3 docs 2015-02-19 10:24:47 -08:00
quincy.conf Enable quincy API w/ winchester pipeline engine 2014-12-03 19:58:12 +00:00
README.md Remove oahu mentions ... and fix up README 2015-03-05 12:12:48 -08:00
reset.sh Preliminary time-sync and usage support 2014-10-16 13:08:42 -07:00
reset.sql Preliminary time-sync and usage support 2014-10-16 13:08:42 -07:00
screenrc.winchester Enable quincy API w/ winchester pipeline engine 2014-12-03 19:58:12 +00:00
winchester.yaml Fix up defaults to use notabene handler and usage 2015-02-10 12:57:28 -08:00
yagi.conf.common Supports the new tarball style of WritingJSONRollManager. 2015-02-24 11:29:25 -08:00
yagi.conf.winchester Updates yagi.conf to write json files of every event. 2015-02-17 15:00:45 -08:00

sandbox

Dev env for StackTach development. Uses Notigen event generator and yagi.

Note: read the Operators Guide etherpad for deployment notes.

Prerequisites:

make sure you have a working python dev environment (2.7+ ideally)
    including virtualenv.
Install rabbitmq and mysql-server.

TL;DR:

handle the prerequisites above.
git clone https://github.com/stackforge/stacktach-sandbox
cd sandbox
create a mysql database to use
set the database url appropriately in winchester.yaml
./build.sh

Using Vagrant for fast local provisioning:

* Install [Vagrant](https://www.vagrantup.com/downloads.html)
* Install [VirtualBox](https://www.virtualbox.org/wiki/Downloads)
* git clone https://github.com/StackTach/sandbox.git
* cd sandbox/vagrant
* vagrant up
* vagrant ssh
* cd stacktach-sandbox
* ./build.sh

Tweaks:

You can create a local.sh to override the defaults:

SOURCE_DIR=git  # where the StackTach repos are cloned
VENV_DIR=.venv  # name of the .venv

The build.sh script will create clone each of the StackTach projects into the $SOURCE_DIR directory (so you can work on them in a running env).

The virtualenv will be created and each of the projects (and their dependencies) installed into it.

A screen session is started, based on screenrc.oahu or screenrc.winchester which will start the notigen event generator. The event generator simulated OpenStack notifications and pumps them into rabbitmq. yagi-event is also started with the yagi.conf configuration file. This will read events from the rabbit queue and save them to local files. The working directory and archive directory for shoebox is specified in yagi.conf.

The sandbox environment configures shoebox to archive notifications to local .json files and tarball them up after the directory reaches 20GB.

To have shoebox upload to Swift, you are required to create a credentials file in the .../sandbox/ directory (like in .../git/sandbox/etc/sample_rax_credentials.conf) Call it swift_credentials.conf or alter the shoebox.conf file accordingly. If you don't have access to a Swift server, like CloudFiles, read the config file for details on disabling this feature.