mkayontour.influxdb
Ansible InfluxDB
=========
Ce rôle installe, gère et configure InfluxDB, y compris les bases de données et les utilisateurs. La plupart des principales distributions devraient être prises en charge. Les demandes de tirage et les problèmes sont les bienvenus :)
Exigences
Deux exigences doivent être respectées au départ : le client python influxdb doit être installé, le rôle s'en occupe.
Et deuxièmement, pip doit être présent pour installer le client python influxdb.
Variables du rôle
Valeurs par défaut
Les variables par défaut sont énumérées ci-dessous. Pour chaque section de configuration de influxdb.conf, il y a sa propre variable.
Veuillez changer le mot de passe administrateur pour quelque chose de plus sécurisé que celui par défaut :
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
Veuillez consulter les paramètres pour chaque section de configuration dans la documentation :
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
Toutes les sections pouvant être définies plusieurs fois sont définies comme un tableau.
Exemple :
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
Définir des Bases de Données
Pour définir des bases de données, utilisez simplement la syntaxe suivante pour en créer plusieurs :
influxdb_databases:
- name: telegraf-metrics
state: present
- name: graphite
state: present
- name: icinga
state: present
Tous les paramètres pour les bases de données sont énumérés ci-dessous :
influxdb_databases:
- name:
login_password:
login_username:
hostname:
port:
proxies:
retries:
state:
ssl:
timeout:
udp_port:
use_udp:
validate_certs:
Définir des Utilisateurs
Pour définir des utilisateurs, utilisez simplement la syntaxe suivante pour en créer plusieurs :
influxdb_users:
- name: influxadm
password: influxdbadmpass
admin: yes
- name: icinga
admin: no
password: icinga
grants:
- database: 'icinga'
privilege: 'WRITE'
Tous les paramètres pour les utilisateurs sont énumérés ci-dessous :
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
Exemple de Playbook
Inclure un exemple d'utilisation de votre rôle (par exemple, avec des variables passées comme paramètres) est toujours agréable pour les utilisateurs :
- 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 }
Licence
Apache-2.0
Informations sur l'auteur
Twitter : @mkayontour
Install and configures InfluDB on Rhel, Debian and Ubuntu
ansible-galaxy install mkayontour.influxdb