Easy installer for Graphite and StatsD
Python Shell ApacheConf
Latest commit ab3da3c Jan 6, 2017 @obfuscurity committed on GitHub Merge pull request #55 from CMihalcik/feature/fix_amqp_support
Support RabbitMQ 3.2.4+, fixes obfuscurity/synthesize#54

README.md

Synthesize

Install on DigitalOcean

Installing Graphite doesn't have to be difficult. The install script in synthesize is designed to make it brain-dead easy to install Graphite and related services onto a modern Linux distribution.

Synthesize is built to run on Ubuntu 14.04 LTS. It will not run on other Ubuntu releases or Linux distributions. The goal of this project is not to become an automation alternative to modern configuration management utilities (e.g. Chef or Puppet), but rather, to make it as easy as possible for the beginner Graphite user to get started and familiar with the project without having to learn a suite of other automation and/or infrastructure-related projects.

The resulting Graphite server listens only on https port 443 and has been configured to collect metrics specifically for helping profile the performance of your Graphite and Carbon services. It uses memcached for improved query performance, and Statsite for a fast, C-based implementation of the StatsD collector/aggregator.

⚠️ WARNING: You should not install Synthesize directly on your personal development system. It's strongly suggested that you use a VM or other temporary VPS instance for sandboxing Synthesize.

Provides

Dependencies

  • Vagrant, an Ubuntu 14.04 VM or a non-production server
  • Some mechanism for downloading Synthesize

Installation

⚠️ WARNING: Windows users may encounter provisioning issues. An apparent workaround is to run dos2unix on the install file before re-attempting provisioning.

Manual

$ cd synthesize
$ sudo ./install

Vagrant

Synthesize configures the following host ports to forward to the private vagrant box:

config.vm.network :forwarded_port, guest: 443, host: 8443
config.vm.network :forwarded_port, guest: 8125, host: 8125
config.vm.network :forwarded_port, guest: 2003, host: 22003
config.vm.network :forwarded_port, guest: 2004, host: 22004
$ cd synthesize
$ vagrant plugin install vagrant-vbguest
$ vagrant up

Administration

There is a superuser (Django) account that grants access to the administrative features in the backend Django database. The default credentials are:

  • username admin
  • password graphite_me_synthesize

These credentials can be changed with the following commands:

$ cd /opt/graphite/webapp/graphite
$ sudo python manage.py changepassword admin

Upgrade

It's now possible to upgrade an existing Synthesize (e.g. Graphite 0.9.12) to the newest Graphite 0.9.15. You will need to checkout at least version 2.3.0 of Synthesize for this feature. Besides upgrading the Graphite components, it will also migrate the webapp database (graphite.db) to the newest fixtures version.

$ cd synthesize
$ sudo ./upgrade

Removal

Manual

$ cd synthesize
$ ./uninstall

Vagrant

$ cd synthesize
$ vagrant destroy

License

Synthesize is distributed under the MIT license.