Forge Home

influxdb

Manage InfluxDB service, databases, users. Supports Auth. Using ruby resource types for InfluxDB operations.

8,650 downloads

4,976 latest version

2.6 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 0.2.2 (latest)
  • 0.2.1
  • 0.2.0
  • 0.1.0
released Mar 1st 2019
This version is compatible with:
  • Puppet Enterprise 2018.1.x, 2017.3.x, 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
  • Puppet >= 3.0.0 < 6.0.0
  • , , ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'quadriq-influxdb', '0.2.2'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add quadriq-influxdb
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install quadriq-influxdb --version 0.2.2

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

quadriq/influxdb — version 0.2.2 Mar 1st 2019

Puppet InfluxDB

Puppet Module to setup and manage influxdb installation and resources.

Under Development! Currently very limited functionality: support of EL-Linux(CentOs) and some build-in ruby functions. Welcome Contribution!

Quick Start

install and start InfluxDb service.

class {'influxdb':}

or in hiera

classes:
 - influxdb

InfluxDB config Parameter

note, not all parameters are introduced right now, Welcome Contribution!

see manifests/config.pp for supported parameters. Here is a usage example:

$parameter =
{ 'global' =>
  {
    'reporting-disabled' => true,
    'bind-adress' => '127.0.0.1:8088',
  },
  'http' =>
  {
    'bind-address' => ':8086'
  }
}

class{'influxdb':
  config => $parameter,
}

or in hiera:

influxdb::config:
  global:
    reporting-disabled: true
  http:
    bind-address: ':8086'

Enable http-auth

by design, influxdb needs an "admin" user before you can enable http-auth in influxdb-config. So in order to manage this with puppet we need to pass "admin" creadentials to the influx class.. we would call this admin user - superuser

so call it like:

class {"influxdb":
  auth_enabled => true,
  auth_superuser => 'john',
  auth_superpass => 'lennon',
}

Custom resource-types

all resource types using influx cli command to communicate with influxdb. Because influx cli command uses http interface of influxdb, we also need to do a http-auth, if this is enabled. So pass superuser creadentials to all resource types, if http-auth is enabled.

influx_database

create database

parameter

  • superuser - by http-auth enabled, pass the admin user name
  • superpass - by http-auth enabled, pass the admin user password
influx_database{"testme2":
  ensure => present,
}

or if you use http-auth

influx_database{"testme2":
  ensure => present,
  superuser => 'john',
  superpass => 'lennon'
}

influx_user

parameter

  • name - namevar, name of the user
  • password - password
  • admin - if the user is admin, default to false
  • database - on which database grant privileges, relevant only for non-admin users. Requires database to be created.
  • privileges - privileges to grant, default to 'ALL'
  • superuser - by http-auth enabled, pass the admin user name
  • superpass - by http-auth enabled, pass the admin user password
influx_user{"homer":
     password => "marge",
     ensure => present,
     database => "testme2"
}

all custom resources have 20sec delay, in order to wait for influxdb to startup, if it was restarted just before.