geerlingguy.fluentd

Rola Ansible: Fluentd

CI

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.

Zainstaluj
ansible-galaxy install geerlingguy.fluentd
Licencja
mit
Pobrania
123.9k
Właściciel
Father, author, developer, maker. Sometimes called "an inflammatory enigma". #stl #drupal #ansible #k8s #raspberrypi #crohns