https://github.com/tubemogul/puppet-curator
Puppet module to deploy Elasticsearch Curator
https://github.com/tubemogul/puppet-curator
curator logstash puppet-module
Last synced: about 1 year ago
JSON representation
Puppet module to deploy Elasticsearch Curator
- Host: GitHub
- URL: https://github.com/tubemogul/puppet-curator
- Owner: tubemogul
- License: apache-2.0
- Created: 2015-10-01T09:56:11.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2017-06-16T15:05:43.000Z (almost 9 years ago)
- Last Synced: 2024-10-11T21:44:44.341Z (over 1 year ago)
- Topics: curator, logstash, puppet-module
- Language: Ruby
- Homepage: https://forge.puppet.com/TubeMogul/curator
- Size: 38.1 KB
- Stars: 2
- Watchers: 11
- Forks: 5
- Open Issues: 1
-
Metadata Files:
- Readme: README.markdown
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://travis-ci.org/tubemogul/puppet-curator)
[](https://forge.puppetlabs.com/TubeMogul/curator)
[](https://forge.puppetlabs.com/TubeMogul/curator)
[](https://forge.puppetlabs.com/TubeMogul/curator/scores)
#### Table of Contents
1. [Overview](#overview)
2. [Module Description - What the module does and why it is useful](#module-description)
3. [Setup - The basics of getting started with curator](#setup)
* [What curator affects](#what-curator-affects)
* [Setup requirements](#setup-requirements)
* [Beginning with curator](#beginning-with-curator)
4. [Usage - Configuration options and additional functionality](#usage)
5. [Reference - An under-the-hood peek at what the module is doing and how](#reference)
5. [Limitations - OS compatibility, etc.](#limitations)
6. [Development - Guide for contributing to the module](#development)
## Overview
This module manages Elasticsearch Curator (https://www.elastic.co/guide/en/elasticsearch/client/curator/current/index.html)
## Module Description
The module will install Curator via the Python PIP package and manage the cronjobs to schedule different Curator commands.
See the official Curator documentation for more details : https://www.elastic.co/guide/en/elasticsearch/client/curator/current/commands.html
## Setup
### What curator affects
* Install Python PIP if not present
* Install elasticsearch-curator PIP package
* Change the crontab
### Setup Requirements
* puppetlabs/stdlib
### Beginning with curator
See : https://www.elastic.co/guide/en/elasticsearch/client/curator/current/getting-started.html
## Usage
### Install Curator
```puppet
class { 'curator': }
```
### Install Curator with a specific version and deploy jobs
```puppet
class { 'curator':
version => '3.3.0',
crons => {
'logstash-cleanup' => {
command => 'delete',
subcommand => 'indices',
parameters => "--time-unit days --older-than 7 --timestring '\%Y.\%m.\%d' --prefix logstash-",
cron_minute => 0,
cron_hour => 0,
}
}
}
```
### Example using Hiera
```puppet
class { 'curator': }
```
```yaml
---
curator::version: 3.3.0
curator::crons:
logstash:
command: 'delete'
subcommand: 'indices'
parameters: "--time-unit hours --older-than 7 --timestring '\\%Y.\\%m.\\%d.\\%H' --prefix logstash-"
cron_minute: '30'
cron_hour: '*/1'
puppet-report:
command: 'delete'
parameters: "--time-unit days --older-than 14 --timestring \\%Y.\\%m.\\%d --prefix puppet-report-"
```
## Limitations
This module has been tested on Ubuntu and should work on Redhat/CentOS too.
For Redhat/CentOS, you will need to deploy the EPEL repository before using the module (See : https://fedoraproject.org/wiki/EPEL). This module doesn't manage EPEL.
## Development
See the CONTRIBUTING.md file. Pull requests are welcome :)