#newrelic_plugins
Note: This Module is currently in Beta
This module is currently in Beta and will be moved to the Puppet Forge site after the beta. To use the module, clone or download this repo and add it to your Puppet modules path under the name newrelic_plugins
. Follow the usage instructions below.
Please provide any feedback to jstenhouse@newrelic.com or create a pull request here. Thanks!
####Table of Contents
- Overview
- Module Description - What the does the module do?
- Setup - The basics of getting started with New Relic Plugins
- Usage - Configuration options and additional functionality
- Limitations - OS compatibility, etc.
- License
- Contact - Contributing to the module or feedback
##Overview
This module installs, configures and manages as a service, New Relic Plugins on Debian/RHEL.
##Module Description
The following New Relic plugins are supported through this module:
- AWS Cloudwatch
- MySQL
- F5
- Example
##Setup
###Requirements
The AWS Cloudwatch, F5 and Example plugins require:
- Ruby >= 1.8.7
- Rubygems >= 1.8
The MySQL plugin requires:
- Java Runtime Environment (JRE) >= 1.6
###What New Relic Plugins affect
- Creates installation path
- Curls and extracts distribution file(s) (e.g. tarball)
- Creates configuration files
- Installs bundler gem (ruby plugins)
- Creates and manages service init script
##Usage
An example of using the AWS Cloudwatch and MySQL plugins with two classes. See the below sections for plugin specifics.
class { 'newrelic_plugins::aws_cloudwatch':
license_key => 'NEW_RELIC_LICENSE_KEY',
install_path => '/path/to/plugin',
aws_access_key => 'AWS_ACCESS_KEY',
aws_secret_key => 'AWS_SECRET_KEY',
agents => [ 'ec2', 'ebs', 'elb' ]
}
class { 'newrelic_plugins::mysql':
license_key => 'NEW_RELIC_LICENSE_KEY',
install_path => '/path/to/plugin',
java_options => '-Dhttps.proxyHost=proxy.example.com -Dhttps.proxyPort=12345',
servers => [
{
name => 'Production 1',
host => 'localhost',
metrics => 'status,newrelic',
user => 'USER',
passwd => 'PASSWORD'
}
]
}
###AWS Cloudwatch Plugin
####Parameters
license_key
- (required) New Relic License Key
install_path
- (required) Install Directory
aws_access_key
- (required) AWS Cloudwatch Access Key
aws_secret_key
- (required) AWS Cloudwatch Secret Key
agents
- (required) Array of AWS Cloudwatch agents. Valid values are ec
, ec2
, ebs
, elb
, rds
, sqs
, and sns
version
- (optional) Plugin version. Defaults to latest release version.
regions
- (optional) Array of AWS Cloudwatch regions. e.g. us-east-1
. Defaults to all available regions
####Class
class { 'newrelic_plugins::aws_cloudwatch':
license_key => 'NEW_RELIC_LICENSE_KEY',
install_path => '/path/to/plugin',
aws_access_key => 'AWS_ACCESS_KEY',
aws_secret_key => 'AWS_SECRET_KEY',
agents => [ 'ec2', 'ebs', 'elb' ]
}
For additional info, see https://github.com/newrelic-platform/newrelic_aws_cloudwatch_plugin
###Example Plugin
####Parameters
license_key
- (required) New Relic License Key
install_path
- (required) Install Directory
####Class
class { 'newrelic_plugins::example_plugin':
license_key => 'NEW_RELIC_LICENSE_KEY',
install_path => '/path/to/plugin'
}
For additional info, see https://github.com/newrelic-platform/newrelic_example_plugin
###F5 Plugin
####Parameters
license_key
- (required) New Relic License Key
install_path
- (required) Install Directory
agents
- (required) Array of F5 agents that require a name, host, port and snmp_community
version
- (optional) Plugin version. Defaults to latest release version
####Class
class { 'newrelic_plugins::f5':
license_key => 'NEW_RELIC_LICENSE_KEY',
install_path => '/path/to/plugin',
agents => [
{
name => 'My F5',
host => 'my-f5',
port => 161,
snmp_community => 'community'
}
]
}
For additional info, see https://github.com/newrelic-platform/newrelic_f5_plugin
###MySQL Plugin
####Parameters
license_key
- (required) New Relic License Key
install_path
- (required) Install Directory
servers
- (required) Array of MySQL server information. If using the default username and password, the user
, passwd
attributes can be left off.
version
- (optional) Plugin version. Defaults to latest release version
java_options
- (optional) String of java options that will be passed to the init script java command. E.g. -Dhttps.proxyHost=proxy.example.com -Dhttps.proxyPort=12345
for proxy support.
####Class
class { 'newrelic_plugins::mysql':
license_key => 'NEW_RELIC_LICENSE_KEY',
install_path => '/path/to/plugin',
java_options => '-Dhttps.proxyHost=proxy.example.com -Dhttps.proxyPort=12345',
servers => [
{
name => 'Production Master',
host => 'master-host',
metrics => 'status,newrelic,master',
user => 'USER_NAME_HERE',
passwd => 'USER_CLEAR_TEXT_PASSWORD_HERE'
},
{
name => 'Production Slave',
host => 'slave-host',
metrics => 'status,newrelic,slave',
user => 'USER_NAME_HERE',
passwd => 'USER_CLEAR_TEXT_PASSWORD_HERE'
}
]
}
For additional info, see https://github.com/newrelic-platform/newrelic_mysql_java_plugin
##Limitations
This module supports:
- Debian
- Ubuntu
- CentOS
- Red Hat
- Fedora
- Amazon
- FreeBSD
License
This cookbook is under the included MIT License.
Contact
Contribute to this Cookbook at https://github.com/newrelic-platform/newrelic_plugins_puppet. Any other feedback or support related questions can be sent to support @ newrelic.com.