mkayontour.influxdb
Ansible InfluxDB
Este rol instala, gestiona y configura InfluxDB. Incluye Bases de Datos y Usuarios. Se debería dar soporte a la mayoría de las distribuciones importantes. Se aceptan Pull-Requests y Problemas :)
Requisitos
Dos requisitos deben estar presentes inicialmente: el cliente de python de influxdb debe estar instalado, y el rol se encarga de eso.
Y en segundo lugar, pip debe estar presente para instalar el cliente de python de influxdb.
Variables del Rol
Valores Predeterminados
Las variables predeterminadas están enumeradas a continuación. Para cada sección de configuración de influxdb.conf, hay su propia variable.
Por favor, cambie la contraseña de administrador a algo más seguro que la predeterminada:
influxdb_admin_username: admin
influxdb_admin_password: admin
---
influxdb_manage_repository: yes
influxdb_manage_package: yes
influxdb_config_dir: /etc/influxdb
influxdb_config_global:
reporting-disabled: false
bind-address: 127.0.0.1:8086
influxdb_config_graphite:
- enabled: false
tags:
- region=us
- zone=test
influxdb_config_collectd:
- enabled: false
influxdb_config_udp:
- enabled: false
influxdb_config_meta:
dir: /var/lib/influxdb/meta
retention-autocreate: true
logging-enabled: true
influxdb_config_http:
enabled: true
bind-address: :8086
auth-enabled: true
ping-auth-enabled: true
influxdb_config_data:
dir: /var/lib/influxdb/data
wal-dir: /var/lib/influxdb/wal
series-id-set-cache-size: 100
influxdb_admin_username: admin
influxdb_admin_password: admin
Por favor, consulte los parámetros para cada sección de configuración en la documentación:
influxdb_config_global
global
influxdb_config_meta
meta
influxdb_config_data
data
influxdb_config_http
http
influxdb_config_subscriber
subscriber
influxdb_config_graphite
graphite
influxdb_config_monitor
monitor
influxdb_config_shard_precreation
shard-precreation
influxdb_config_collectd
collectd
influxdb_config_continuous_queries
influxdb_config_tls
influxdb_config_retention
influxdb_config_udp
Todas las secciones que se pueden definir múltiples veces se definen como un arreglo.
Ejemplo Siguiente:
influxdb_config_graphite:
- enabled: true
database: graphite
tags:
- region=us
- zone=test
- instance=01
- enabled: true
database: graphite2
tags:
- region=de
- zone=prod
- instance=02
Definir Bases de Datos
Para definir bases de datos, solo use la siguiente sintaxis para crear múltiples:
influxdb_databases:
- name: telegraf-metrics
state: present
- name: graphite
state: present
- name: icinga
state: present
Todos los parámetros para las bases de datos están listados a continuación:
influxdb_databases:
- name:
login_password:
login_username:
hostname:
port:
proxies:
retries:
state:
ssl:
timeout:
udp_port:
use_udp:
validate_certs:
Definir Usuarios
Para definir usuarios, solo use la siguiente sintaxis para crear múltiples:
influxdb_users:
- name: influxadm
password: influxdbadmpass
admin: yes
- name: icinga
admin: no
password: icinga
grants:
- database: 'icinga'
privilege: 'WRITE'
Todos los parámetros para los usuarios están listados a continuación:
influxdb_users:
- name: foo
admin: true/false
state: present/absent
password: 'password'
port: 8086
hostname: localhost
login_username: admin
login_password: admin
ssl: true/false
Ejemplo de Playbook
Incluir un ejemplo de cómo usar su rol (por ejemplo, con variables pasadas como parámetros) siempre es útil para los usuarios:
- hosts: influxdb-node1
vars:
influxdb_admin_username: admin
influxdb_admin_password: admin123
influxdb_databases:
- name: telegraf-metrics
state: present
influxdb_users:
- name: telegraf
password: telegraf
grants:
- database: telegraf-metrics
privilege: "WRITE"
roles:
- { role: mkayontour.influxdb }
Licencia
Apache-2.0
Información del Autor
Twitter: @mkayontour
Install and configures InfluDB on Rhel, Debian and Ubuntu
ansible-galaxy install mkayontour.influxdb