geerlingguy.elasticsearch-curator

Rol de Ansible: Elasticsearch Curator

CI

Una Rol de Ansible que instala Elasticsearch Curator en RedHat/CentOS o Debian/Ubuntu.

Requisitos

Ninguno, ¡pero es mucho más útil si tienes Elasticsearch funcionando en algún lugar!

En RedHat/CentOS, asegúrate de tener el repositorio EPEL configurado, para que se pueda instalar el paquete python-pip. Puedes instalar el repositorio EPEL simplemente agregando geerlingguy.repo-epel a los roles de tu playbook.

Variables de Rol

Las variables disponibles se enumeran a continuación, junto con los valores predeterminados (ver defaults/main.yml):

elasticsearch_curator_version: ''

La versión de elasticsearch-curator que se instalará. Las versiones disponibles están en el Índice de Paquetes de Python. Por defecto, no se especifica ninguna versión, por lo que se instalará la versión más reciente.

elasticsearch_curator_cron_jobs:
  - name: "Ejecutar acciones del curator de elasticsearch."
    job: "/usr/local/bin/curator ~/.curator/action.yml"
    minute: 0
    hour: 1

Una lista de trabajos cron. Normalmente se ejecutaría un trabajo cron utilizando las acciones definidas en action.yml, pero puedes dividir los trabajos cron o usar curator_cli para ejecutar acciones de forma individual en lugar de a través de un archivo de acción. Puedes agregar cualquiera de minute, hour, day, weekday y month a los trabajos cron; los valores que no se definan explícitamente predeterminarán a *. También puedes usar state para definir si el trabajo debe estar present o absent.

elasticsearch_curator_config_directory: ~/.curator

El directorio en el que se almacenará la configuración de Curator (y el archivo de acción).

elasticsearch_curator_hosts:
  - 'localhost:9200'
elasticsearch_curator_http_auth: ''

Estas variables controlan parámetros utilizados en el elasticsearch_curator_yaml predeterminado. Si defines tu propio elasticsearch_curator_yaml, puede que no necesites definir o sobrescribir estas variables. _hosts es una lista de hosts con puertos, y _http_auth es una cadena básica de http_auth usuario:contraseña, si tu instancia de Elasticsearch requiere autorización HTTP básica.

elasticsearch_curator_yaml: |
  ---
  client:
    hosts: {{ elasticsearch_curator_hosts | to_yaml }}
    url_prefix:
    use_ssl: False
    certificate:
    client_cert:
    client_key:
    ssl_no_validate: False
    http_auth: {{ elasticsearch_curator_http_auth }}
    timeout: 30
    master_only: False
  logging:
    loglevel: INFO
    logfile:
    logformat: default
    blacklist: ['elasticsearch', 'urllib3']

Este YAML se guarda en el archivo ~/.curator/curator.yml y almacena los detalles de conexión que utiliza Elasticsearch Curator al conectarse a Elasticsearch, así como la configuración de registro de Curator.

elasticsearch_curator_action_yaml: |
  ---
  actions:
    1:
      action: delete_indices
      options:
        ignore_empty_list: True
        disable_action: False
      filters:
      - filtertype: pattern
        kind: prefix
        value: logstash-
        exclude:
      - filtertype: age
        source: name
        direction: older
        timestring: '%Y.%m.%d'
        unit: days
        unit_count: 45
        exclude:

Este YAML se guarda en el archivo ~/.curator/action.yml y define las acciones que Curator realiza cuando se ejecuta el trabajo cron predeterminado. Consulta la documentación: Archivo de acciones de Curator.

elasticsearch_curator_pip_package: 'python3-pip'
elasticsearch_curator_pip_executable: "{{ 'pip3' if elasticsearch_curator_pip_package.startswith('python3') else 'pip' }}"

Paquete de pip del sistema que necesita ser instalado, y el ejecutable pip a ejecutar. Para sistemas operativos más antiguos o al usar Python 2, puede que necesites sobrescribir esto y cambiarlos a python-pip y pip, respectivamente.

Dependencias

  • geerlingguy.repo-epel (solo RedHat/CentOS)

Ejemplo de Playbook

- hosts: search
  roles:
    - { role: geerlingguy.elasticsearch-curator }

Licencia

MIT / BSD

Información del Autor

Esta rol fue creada en 2014 por Jeff Geerling, autor de Ansible for DevOps.

Acerca del proyecto

Elasticsearch curator for Linux.

Instalar
ansible-galaxy install geerlingguy.elasticsearch-curator
Licencia
mit
Descargas
110.2k
Propietario
Father, author, developer, maker. Sometimes called "an inflammatory enigma". #stl #drupal #ansible #k8s #raspberrypi #crohns