fluentd
Ansible Роль: Fluentd
Ansible роль, которая устанавливает Fluentd на RedHat/CentOS или Debian/Ubuntu. Эта роль устанавливает td-agent
, который является автономной версией и не требует отдельной установки Ruby на системе. См. различия между td-agent и Fluentd здесь.
Требования
Не требуется
Переменные роли
Доступные переменные указаны ниже вместе с значениями по умолчанию (см. defaults/main.yml
):
fluentd_version: 3
Версия td-agent
, которую нужно установить. См. более подробную информацию о различиях между v2, v3 и v4.
fluentd_package_state: present
Состояние пакета Fluentd td-agent
; установите latest
, чтобы обновить или изменить версии.
fluentd_service_name: td-agent
fluentd_service_state: started
fluentd_service_enabled: true
Управляет параметрами службы Fluentd.
fluentd_plugins:
- fluent-plugin-elasticsearch
# Альтернативный формат:
fluentd_plugins:
- name: fluent-plugin-elasticsearch
version: '4.0.6'
state: present
Список плагинов Fluentd для установки.
fluentd_conf_sources: |
[смотрите defaults/main.yml для содержимого по умолчанию]
fluentd_conf_filters: |
[смотрите defaults/main.yml для содержимого по умолчанию]
fluentd_conf_matches: |
[смотрите defaults/main.yml для содержимого по умолчанию]
Конфигурация, которая будет помещена в файл td-agent.conf
, который управляет тем, как Fluentd слушает, фильтрует и направляет лог-данные. Значения по умолчанию настраивают некоторые основные параметры, которые могут перенаправлять данные в Treasure Data, но вы должны переопределить эти значения в зависимости от ваших логов.
Например, если вы хотите отслеживать журнал доступа HTTP-сервера Apache, вы добавите источник:
fluentd_conf_sources: |
<source>
@type tail
@id input_tail
<parse>
@type apache2
</parse>
path /var/log/httpd-access.log
tag apache.access
</source>
А затем вы могли бы направить записи журналов apache
в Elasticsearch, используя:
fluentd_conf_matches: |
<match apache.**>
@type elasticsearch
host log.example.com
port 9200
user myuser
password mypassword
logstash_format true
</match>
Обратите внимание, что для Elasticsearch потребуется установленный плагин Fluentd fluent-plugin-elasticsearch
.
Зависимости
Не требуется
Пример плейбука
- hosts: search
vars:
fluentd_conf_sources: |
<source>
@type tail
@id input_tail
<parse>
@type apache2
</parse>
path /var/log/httpd-access.log
tag apache.access
</source>
roles:
- geerlingguy.fluentd
Лицензия
MIT / BSD
Информация об авторе
Эта роль была создана в 2020 году Джеффом Гирлингом, автором Ansible for DevOps.
Fluentd for Linux.
ansible-galaxy install geerlingguy/ansible-role-fluentd