DevStack-like environment for StackTach.v3
Go to file
Sandy Walsh 4cb647a7f3 Updates yagi.conf to write json files of every event.
For uploading raw notifications to archive (like an HDFS store).

Also, removes msgpack-python (installed by oslo), which currently
conflict with carrot. This is a temp fix.

Change-Id: I973949c83c9018235169646ce0370d71a2260241
2015-02-17 15:00:45 -08:00
ansible Updates yagi.conf to write json files of every event. 2015-02-17 15:00:45 -08:00
bin Fix silly mistake with api results. 2015-01-28 12:14:43 -08:00
etc stv3_status.py 2015-01-22 07:14:16 -08:00
vagrant Add Vagrant support for easy local testing 2015-02-17 15:24:43 -06:00
winchester Don't purge completed streams and fix pipeline expiries 2015-02-16 12:33:32 -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 Updates yagi.conf to write json files of every event. 2015-02-17 15:00:45 -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 Fix up defaults to use notabene handler and usage 2015-02-10 12:57:28 -08:00
oahu_config.py cleaned up some terminology 2014-09-05 20:56:15 +00:00
quincy.conf Enable quincy API w/ winchester pipeline engine 2014-12-03 19:58:12 +00:00
README.md Add Vagrant support for easy local testing 2015-02-17 15:24:43 -06: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.oahu Add winchester support 2014-09-08 07:01:08 +00: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 Updates yagi.conf to write json files of every event. 2015-02-17 15:00:45 -08:00
yagi.conf.oahu Add winchester support 2014-09-08 07:01:08 +00: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.
If using the oahu pipeline engine, install mongodb.
If using the winchester pipeline engine, install MySQL.

TL;DR:

handle the prerequisites above.
git clone https://github.com/StackTach/sandbox.git
cd sandbox
If running winchester:
    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
* sudo ./build.sh

Note: 
This uses sandbox defaults including the use of the Winchester
pipeline.

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
PIPELINE_ENGINE=oahu # Name of pipeline processing library to run.

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 upload archive files to Swift automatically. This requires you 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.