• This repository has been archived on 15/Oct/2022
  • Stars
    star
    384
  • Rank 109,382 (Top 3 %)
  • Language
    Python
  • License
    MIT License
  • Created over 10 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Easy installer for Graphite and StatsD

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 18.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 web interface 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.

Beginning with version 3.0.0 we've also incorporated the Grafana dashboard project, a modern and full-featured alternative to Graphite's built-in Composer and Dashboard interfaces. It also includes a default dashboard for monitoring Carbon's internal statistics.

⚠️ 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 18.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, protocol: 'tcp'
config.vm.network :forwarded_port, guest: 8125, host: 8125, protocol: 'udp'
config.vm.network :forwarded_port, guest: 2003, host: 22003
config.vm.network :forwarded_port, guest: 2004, host: 22004
config.vm.network :forwarded_port, guest: 3000, host: 3030
$ cd synthesize
$ vagrant plugin install vagrant-vbguest
$ vagrant up

Administration

Graphite-Web

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

Grafana

Grafana includes a default user to start:

  • username admin
  • password admin

Upgrade

⚠️ WARNING: The following information is outdated for this experimental branch. If you attempt to run the upgrade script it will display a warning with further instructions to acknowledge the current experimental status and override the warning.

It's now possible to upgrade an existing Synthesize (e.g. Graphite 0.9.15) to the newest Graphite HEAD. 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.

More Repositories

1

tasseo

Live dashboard for Graphite
JavaScript
1,528
star
2

descartes

Introspective dashboard for Graphite
JavaScript
501
star
3

backstop

HTTP service for submitting metrics to Graphite
Ruby
296
star
4

dusk

Hotspot dashboard for Graphite
JavaScript
191
star
5

mater

Status Board to Graphite bridge
Ruby
83
star
6

therry

Simple service for searching Graphite metrics
Ruby
56
star
7

ledbetter

Script that scrapes alert statistics from Nagios and reports them to Graphite
Ruby
52
star
8

food-recipes

Honest-to-goodness "real food" recipes
Elixir
49
star
9

graphite-scripts

Scripts that gather and submit data to Graphite/Carbon
Shell
48
star
10

nagios-scripts

Custom scripts written for Nagios
Perl
38
star
11

evenflow

sFlow to Graphite bridge
Ruby
31
star
12

lipstick

Dashboard for unifying Nagios data across multiple sites
Ruby
29
star
13

judy

Bespoke service for reviewing CFP submissions
HTML
25
star
14

fortune-rants

Rants from your favorite online personalities.
18
star
15

arigato

Migrate your Graphite metrics to Librato Metrics
Python
9
star
16

heroku-static-site

Example for creating a barebones static site on Heroku
PHP
6
star
17

netflowdashboard

NetFlow Dashboard for real-time analysis of network traffic.
Perl
6
star
18

slack-catbot

Slack bot for the The Cat API
Ruby
4
star
19

vellup

User Authorization as a Service
Ruby
4
star
20

blogsum

Blog application written with a focus on simplicity and security.
Perl
4
star
21

undeadly-ruby

Next generation of the OpenBSD Journal website (Ruby version)
Ruby
2
star
22

undeadly

Next generation of the OpenBSD Journal website
JavaScript
2
star
23

undeadly-perl

Next generation of the OpenBSD Journal website
Perl
2
star
24

hatchet

PF firewall log parser
JavaScript
1
star
25

skynet

Ruby
1
star