Skip to content

jmoratilla/chef-stackdriver

 
 

Repository files navigation

Stackdriver Chef cookbook

Build Status

Handles the setup and installation of the stackdriver agent and plugins.

Requirements

Supports CentOS, RHEL, Amazon, and Ubuntu linux distributions.

Usage

Add stackdriver::default to your run list.

To use the plugins, change the enable attribute to true and add the stackdriver::plugins recipe to your run list.

Attributes

default

  • action - Install (:install) or install and ensure stackdriver_agent is the latest version (:upgrade). Default :upgrade.
  • repo_url - location of the package repository.
  • api_key - set the api key from your stackdriver account.
  • config_collectd - should stackdriver handle collectd.conf autogeneration. Default is true.
  • enable - If set to false, the stackdriver agent will be disabled. Default is true.
  • gen_hostid - generate a host id. Link
  • tags - set tags for your instance. Link

plugins

node[:stackdriver][:plugins]

apache

  • enable - enable the apache plugin. Default is false.
  • mod_status_url - Mod status URL for apache. Default = http://127.0.0.1/server-status?auto
  • user - Mod status username for apache plugin.
  • password - Mod status password for apache plugin.

elasticcache

  • enable - enable the elasticcache plugin. Default is false.
  • url - elastic search status url

memcached

  • enable - enable the memcached plugin. Default is false.
  • host - location of the memcached instance.
  • port - port for the memcached instance.

mongodb

  • enable - enable the mongodb plugin. Default is false.
  • host - location of the mongodb instance.
  • port - port of the mongodb isntance.
  • username - if a username is required for access.
  • password - if a password is required for access.
  • secondary_query - all dbStat queries will be executed on a secondary node to avoid performance hits to the main db while adding a bit of latency to the metric data due to the eventual consistent nature of secondary nodes. Default is false.

nginx

  • enable - enable the nginx plugin. Default is false.
  • url - location of the nginx_status output.
  • username - if a username is required for access. password - if a password is required for access.

redis

  • enable - enable the redis plugin. Default is false.
  • package - install redis package dependency
  • node - name of the redis node
  • host - location of the redis instance.
  • port - port for the redis instance.
  • timeout - time to wait for missing values.

Recipes

stackdriver::default - sets up the repository and installs the stackdriver agent. stackdriver::plugins - handles plugin configuration for compatible collectd plugins.

Development

  1. Fork the repository from GitHub.

  2. Clone your fork to your local machine:

     $ git clone git@github.com:USER/chefspec.git
    
  3. Create a git branch

     $ git checkout -b my_bug_fix
    
  4. Run guard: guard

  5. Write tests

  6. Make your changes/patches/fixes, committing appropriately

  7. Run kitchen test

  8. Push your changes to GitHub

  9. Open a Pull Request

Author

Author:: TABLE XI (sysadmins@tablexi.com)

Contributors

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 100.0%