Skip to content
This repository has been archived by the owner on Jun 11, 2019. It is now read-only.

example42/puppet-kibana

Repository files navigation

Puppet module: kibana

DEPRECATION NOTICE

This module is no more actively maintained and will hardly be updated.

Please find an alternative module from other authors or consider Tiny Puppet as replacement.

If you want to maintain this module, contact Alessandro Franceschi

This is a Puppet module for Kibana3: http://three.kibana.org/ .

It manages its installation and configuration.

The module is based on stdmod naming standars. Refer to http://github.com/stdmod/

Released under the terms of Apache 2 License.

NOTE: This module is to be considered a POC, that uses the stdmod naming conventions. For development time reasons the module currently uses some Example42 modules and prerequisites.

USAGE - Common parameters

  • Installation of kibana with common configuration parameters

      class { 'kibana':
        elasticsearch_url => "http://elastic.${::domain}:9200",
        webserver         => 'apache',
        virtualhost       => 'logs.example42.com', # Default: kibana.${::domain}
        file_template     => 'example42/kibana/config.js',
      }
    

USAGE - Basic management

  • Install kibana fetching the upstream tarball. Note: By default kibana is installed but no webserver is configured to serve its files.

      class { 'kibana': }
    
  • Install kibana and setup apache to serve it with a custom virtualhost

      class { 'kibana':
        webserver   => 'apache',
        virtualhost => 'logs.example42.com', # Default: kibana.${::domain}
      }
    
  • Install kibana from a custom url to a custom destination

      class { 'kibana':
        install_url         => 'http://files.example42.com/kibana/3.1.tar.gz',
        install_destination => '/var/www/html', # Default: /opt
      }
    
  • Define the url of your elastisearch server

      class { 'kibana':
        elasticsearch_url => "http://elastic.${::domain}:9200",
      }
    
  • Install kibana fetching a specific version

      class { 'kibana':
        install => 'upstream',
        version => '3.0.1',
      }
    
  • Install kibana via OS package

      class { 'kibana':
        install => 'package',
      }
    
  • Remove kibana package and purge all the managed files

      class { 'kibana':
        ensure => absent,
      }
    
  • Enable auditing (on all the arguments)

      class { 'kibana':
        audit => 'all',
      }
    
  • Module dry-run: Do not make any change on all the resources provided by the module

      class { 'kibana':
        noop => true,
      }
    

USAGE - Overrides and Customizations

  • Use custom source for main configuration file

      class { 'kibana':
        file_source => [ "puppet:///modules/example42/kibana/kibana.conf-${hostname}" ,
                         "puppet:///modules/example42/kibana/kibana.conf" ],
      }
    
  • Use custom template for main config file. Note that template and source arguments are alternative.

      class { 'kibana':
        file_template => 'example42/kibana/kibana.conf.erb',
      }
    
  • Use a custom template and provide an hash of custom configurations that you can use inside the template

      class { 'kibana':
        file_template       => 'example42/kibana/kibana.conf.erb',
        file_options_hash  => {
          opt  => 'value',
          opt2 => 'value2',
        },
      }
    
  • Specify the name of a custom class to include that provides the dependencies required by the module

      class { 'kibana':
        dependency_class => 'site::kibana_dependency',
      }
    
  • Automatically include a custom class with extra resources related to kibana. Here is loaded $modulepath/example42/manifests/my_kibana.pp. Note: Use a subclass name different than kibana to avoid order loading issues.

      class { 'kibana':
        my_class => 'site::my_kibana',
      }
    

TESTING

Build Status

About

Puppet module for Kibana 3 based on stdmod naming standards

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •