Skip to content

pkilambi/puppet-graphite

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Module graphite

This module installs and makes basic configs for graphite, with carbon and whisper.

Tested on

RHEL/CentOS/Scientific 6+ Debian 6+ Ubunutu 10.04 and newer

Requirements

Configure conf files as you need:

templates/opt/graphite/conf/storage-schemas.conf.erb templates/opt/graphite/webapp/graphite/local_settings.py.erb

Modules needed:

stdlib by puppetlabs

Software versions needed:

facter > 1.6.2 puppet > 2.6.2

On Redhat distributions you need the EPEL or RPMforge repository, because Graphite needs packages, which are not part of the default repos.

Parameters

The descriptions are short and their are more variables to tweak your graphite if needed. For further information take a look at the file templates/opt/graphite/conf/carbon.conf.erb

ParameterDefaultDescription
gr_user its empty The user who runs graphite. If this is empty carbon runs as the user that invokes it.
gr_max_cache_sizeinfLimit the size of the cache to avoid swapping or becoming CPU bound. Use the value "inf" (infinity) for an unlimited cache size.
gr_max_updates_per_second500Limits the number of whisper update_many() calls per second, which effectively means the number of write requests sent to the disk.
gr_max_creates_per_minute50Softly limits the number of whisper files that get created each minute.
gr_line_receiver_interface0.0.0.0Interface the line receiver listens
gr_line_receiver_port2003Port of line receiver
gr_enable_udp_listenerFalseSet this to True to enable the UDP listener.
gr_udp_receiver_interface0.0.0.0Its clear, isnt it?
gr_udp_receiver_port2003Self explaining
gr_pickle_receiver_interface0.0.0.0Pickle is a special receiver who handle tuples of data.
gr_pickle_receiver_port2004Self explaining
gr_use_insecure_unpicklerFalseSet this to True to revert to the old-fashioned insecure unpickler.
gr_cache_query_interface0.0.0.0Interface to send cache queries to.
gr_cache_query_port7002Self explaining.
gr_apache_port80The HTTP port apache will use.
gr_apache_port_https443The HTTPS port apache will use.

Sample usage:

Out of the box graphite installation

node "graphite.my.domain" {
	include graphite
}

Tuned graphite installation

# This carbon cache will accept TCP and UDP datas and
# the cachesize is limited to 256mb
node "graphite.my.domain" {
	class {'graphite':
		gr_max_cache_size => 256,
		gr_enable_udp_listener => True
	}
}

Optional

Move Apache to alternative ports:

The default puppet set up won't work if you have an existing web server in place. In my case this was Nginx. For me moving apache off to another port was good enough. To allow this you do

  # Move apache to alternate HTTP/HTTPS ports:
node "graphite.my.domain" {
    class {'graphite':
        gr_apache_port => 2080,
        gr_apache_port_https => 2443,
    }
}

Author

written by Daniel Werdermann dwerdermann@web.de

Contributers

  • Oisin Mulvihill, oisin dot mulvihill at gmail dot com.

About

Puppet module for graphite monitoring tools

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Puppet 100.0%