mkayontour.influxdb

Ansible InfluxDB

=========

Ta rola instaluje, zarządza i konfiguruje InfluxDB. Obsługuje bazy danych i użytkowników. Powinna wspierać większość głównych dystrybucji. Chętnie przyjmujemy Pull-Requesty i zgłaszanie problemów :)

Wymagania


Na początku muszą być spełnione dwa wymagania: klient python dla influxdb powinien być zainstalowany, a rola zajmie się tym.

Po drugie, pip musi być obecny, aby zainstalować klienta python dla influxdb.

Zmienne roli


Domyślne

Domyślne zmienne są wymienione poniżej, dla każdego sekcji konfiguracyjnej z pliku influxdb.conf jest własna zmienna.

Proszę zmienić hasło administratora na coś bardziej bezpiecznego niż domyślne:

influxdb_admin_username: admin
influxdb_admin_password: admin
---
influxdb_manage_repository: tak
influxdb_manage_package: tak
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

Proszę zapoznać się z parametrami dla każdej sekcji konfiguracyjnej w dokumentacji:

  • influxdb_config_global globalne
  • influxdb_config_meta meta
  • influxdb_config_data dane
  • influxdb_config_http http
  • influxdb_config_subscriber subskrybent
  • influxdb_config_graphite grafit
  • influxdb_config_monitor monitor
  • influxdb_config_shard_precreation przedgeneracja fragmentów
  • influxdb_config_collectd collectd
  • influxdb_config_continuous_queries
  • influxdb_config_tls
  • influxdb_config_retention
  • influxdb_config_udp

Wszystkie sekcje, które mogą być zdefiniowane wielokrotnie, są zdefiniowane jako tablica.

Przykład:

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

Definiowanie baz danych

Aby zdefiniować bazy danych, wystarczy użyć następującej składni do utworzenia wielu:

influxdb_databases:
  - name: telegraf-metrics
    state: present
  - name: graphite
    state: present
  - name: icinga
    state: present

Wszystkie parametry dla baz danych są wymienione poniżej:

influxdb_databases:
  - name:
    login_password:
    login_username:
    hostname:
    port:
    proxies:
    retries:
    state:
    ssl:
    timeout:
    udp_port:
    use_udp:
    validate_certs:

Definiowanie użytkowników

Aby zdefiniować użytkowników, wystarczy użyć następującej składni do utworzenia wielu:

influxdb_users:
  - name: influxadm
    password: influxdbadmpass
    admin: tak
  - name: icinga
    admin: nie
    password: icinga
    grants:
      - database: 'icinga'
        privilege: 'WRITE'

Wszystkie parametry dla użytkowników są wymienione poniżej:

influxdb_users:
  - name: foo
    admin: true/false
    state: present/absent
    password: 'hasło'
    port: 8086
    hostname: localhost
    login_username: admin
    login_password: admin
    ssl: true/false

Przykładowy Playbook


Poniżej znajduje się przykład, jak użyć tej roli (na przykład, z przekazaniem zmiennych jako parametrów):

    - 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 }

Licencja


Apache-2.0

Informacje o autorze


Twitter: @mkayontour

Zainstaluj
ansible-galaxy install mkayontour.influxdb
Licencja
apache-2.0
Pobrania
23.3k
Właściciel
Twitter: @mkayontour