geerlingguy.fluentd
Rola Ansible: Fluentd
Rola Ansible, która instaluje Fluentd na systemach RedHat/CentOS lub Debian/Ubuntu. Ta rola instaluje td-agent
, który jest samodzielną wersją i nie wymaga osobnej instalacji Ruby. Zobacz różnice między td-agent a Fluentd tutaj.
Wymagania
Brak
Zmienne Roli
Dostępne zmienne są wymienione poniżej, razem z domyślnymi wartościami (patrz defaults/main.yml
):
fluentd_version: 3
Wersja td-agent
, którą należy zainstalować. Zobacz więcej szczegółów na temat różnic między v2, v3 a v4.
fluentd_package_state: present
Stan pakietu Fluentd td-agent
; ustaw na latest
, aby zaktualizować lub zmienić wersje.
fluentd_service_name: td-agent
fluentd_service_state: started
fluentd_service_enabled: true
Umożliwia kontrolowanie opcji usługi Fluentd.
fluentd_plugins:
- fluent-plugin-elasticsearch
# Alternatywny format:
fluentd_plugins:
- name: fluent-plugin-elasticsearch
version: '4.0.6'
state: present
Lista pluginów Fluentd do zainstalowania.
fluentd_conf_sources: |
[zobacz defaults/main.yml dla domyślnej zawartości]
fluentd_conf_filters: |
[zobacz defaults/main.yml dla domyślnej zawartości]
fluentd_conf_matches: |
[zobacz defaults/main.yml dla domyślnej zawartości]
Konfiguracja, która zostanie umieszczona w pliku td-agent.conf
, kontrolująca, jak Fluentd nasłuchuje, filtruje i kieruje dane logów. Domyślne ustawienia obejmują podstawowe opcje, które mogą kierować dane do Treasure Data, ale powinieneś nadpisać te wartości odpowiednimi dla swoich logów.
Na przykład, jeżeli chcesz monitorować dziennik dostępu serwera Apache HTTP, dodasz źródło:
fluentd_conf_sources: |
<source>
@type tail
@id input_tail
<parse>
@type apache2
</parse>
path /var/log/httpd-access.log
tag apache.access
</source>
A następnie możesz skierować wpisy dziennika apache
do Elasticsearch, używając:
fluentd_conf_matches: |
<match apache.**>
@type elasticsearch
host log.example.com
port 9200
user myuser
password mypassword
logstash_format true
</match>
Zauważ, że Elasticsearch wymaga, aby plugin Fluentd fluent-plugin-elasticsearch
był zainstalowany.
Zależności
Brak
Przykład Playbooka
- 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
Licencja
MIT / BSD
Informacje o Autorze
Ta rola została stworzona w 2020 roku przez Jeffa Geerlinga, autora Ansible for DevOps.
Fluentd for Linux.
ansible-galaxy install geerlingguy.fluentd