influxdb

Статус сборки Оценка качества Ansible

Ansible InfluxDB

Эта роль устанавливает, управляет и настраивает InfluxDB, включая базы данных и пользователей. Поддерживаются большинство основных дистрибутивов. Пул-реквесты и вопросы приветствуются :)

Требования

Сначала нужно установить две зависимости: python-клиент для influxdb, и эта роль этим займётся.

Во-вторых, должен быть установлен pip для установки python-клиента influxdb.

Переменные роли

По умолчанию

Все переменные по умолчанию перечислены ниже, для каждого раздела конфигурации influxdb.conf есть своя переменная.

Пожалуйста, измените пароль администратора на что-то более безопасное, чем по умолчанию:

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

Пожалуйста, ознакомьтесь с параметрами для каждого раздела конфигурации в документации:

influxdb_config_global глобальные параметры

influxdb_config_meta мета

influxdb_config_data данные

influxdb_config_http http

influxdb_config_subscriber подписчик

influxdb_config_graphite графит

influxdb_config_monitor мониторинг

influxdb_config_shard_precreation предварительное создание разделов

influxdb_config_collectd collectd

influxdb_config_continuous_queries

influxdb_config_tls

influxdb_config_retention

influxdb_config_udp

Все разделы, которые могут быть определены несколько раз, определяются как массив.

Следующий пример:

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

Определение баз данных

Чтобы определить базы данных, используйте следующий синтаксис для создания нескольких:

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

Все параметры для баз данных перечислены ниже:

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

Определение пользователей

Чтобы определить пользователей, используйте следующий синтаксис для создания нескольких:

influxdb_users:
  - name: influxadm
    password: influxdbadmpass
    admin: yes
  - name: icinga
    admin: no
    password: icinga
    grants:
      - database: 'icinga'
        privilege: 'WRITE'

Все параметры для пользователей перечислены ниже:

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

Пример плейбука

Включение примера того, как использовать вашу роль (например, с переданными переменными в качестве параметров), будет полезно для пользователей:

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

Лицензия

Apache-2.0

Информация об авторе

Twitter: @mkayontour

Установить
ansible-galaxy install mkayontour/ansible-influxdb
Лицензия
apache-2.0
Загрузки
23255
Владелец
Twitter: @mkayontour