fluentd

williamyeh.fluentd для Ansible Galaxy

Circle CI Статус сборки

Резюме

Имя роли в Ansible Galaxy: williamyeh.fluentd

Эта роль Ansible имеет следующие функции для Fluentd:

  • Установка td-agent: стабильный пакет распространения Fluentd, поддерживаемый Treasure Data, Inc.
  • Установка нескольких плагинов.
  • Минимальная конфигурация (реальную конфигурацию следует оставлять для пользовательских файлов шаблонов; см. раздел Использование ниже).

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

Обязательные переменные

Нет.

Необязательные переменные

Настраиваемые пользователем значения по умолчанию:

# версия td-agent; например, 2.3.4
# Если не указано, будет установлена версия по умолчанию (обычно последняя стабильная).
tdagent_version

# массив плагинов (с последними версиями), которые будут установлены
tdagent_plugins

# словарь плагинов (с указанными версиями), которые будут установлены
# поля словаря:
#   - ключ: заметка для этого плагина
#   - значение:
#     - name:    имя плагина
#     - version: версия плагина
tdagent_plugins_versions

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

# конфигурационный файл (обычно td-agent.conf), который будет установлен,
# относительный к `playbook_dir`;
# файл будет скопирован без изменений
tdagent_conf_copy

# конфигурационный файл (обычно td-agent.conf.j2), который будет установлен,
# относительный к `playbook_dir`;
# файл будет скопирован через систему шаблонов Ansible
tdagent_conf_template

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

# другие шаблоны конфигураций, которые будут установлены в "/etc/td-agent/conf.d";
# поля словаря:
#   - ключ: заметка для этой конфигурации
#   - значение:
#     - src:  файл шаблона относительно `playbook_dir`
#     - dest: целевой файл относительно `/etc/td-agent/conf.d/`
tdagent_conf_others

Обработчики

  • перезагрузить td-agent
  • перезапустить td-agent
  • остановить td-agent

Использование

Шаг 1: добавить роль

Добавьте имя роли williamyeh.fluentd в ваш файл playbook.

Шаг 2: добавить переменные, если есть

Установите переменные в своем файле playbook.

Простой пример:

---
# файл: simple-playbook.yml

- hosts: all

  roles:
    - williamyeh.fluentd

  vars:
    tdagent_plugins:
      - fluent-plugin-multiprocess
      - fluent-plugin-forest
      - fluent-plugin-elasticsearch

    tdagent_plugins_versions:
      prometheus:
        name: fluent-plugin-prometheus
        version: 0.1.2
      flowcounter:
        name: fluent-plugin-flowcounter
        version: 0.4.1

Шаг 3: скопировать конфигурационный файл пользователя, если необходимо

Более практичный пример:

---
# файл: complex-playbook.yml

- hosts: all

  roles:
    - williamyeh.fluentd

  vars:
    tdagent_plugins:
      - fluent-plugin-multiprocess
      - fluent-plugin-flowcounter
      - fluent-plugin-elasticsearch

    # копировать без изменений
    tdagent_conf_copy: "files/td-agent.conf"

    # копировать через систему шаблонов Ansible
    tdagent_conf_template: "templates/td-agent.conf.j2"

    # другие конфигурации, которые будут скопированы через систему шаблонов Ansible
    tdagent_conf_others:
      prometheus_metrics:
        src:  templates/prometheus.conf.j2
        dest: prometheus.conf

Зависимости

Нет.

Лицензия

Лицензируется под лицензией MIT. См. файл LICENSE для подробностей.

История

Модифицировано из моего Dockerized приложения Fluentd:

О проекте

Install Fluentd (td-agent version)

Установить
ansible-galaxy install William-Yeh/ansible-fluentd
Лицензия
mit
Загрузки
212831
Владелец