mircomasa.filebeat

Rola Filebeat

Licencja Status budowy Status budowy Galaxy Ansible Ansible

Podsumowanie

Ta rola:

  • instaluje Filebeat na Ubuntu, CentOS, Windows
  • kopiuje przygotowany plik konfiguracyjny (ścieżka logów, połączenie z Elasticsearch itp.)

Zadania roli

  • Przygotuj serwer (dodaj repozytorium Elastic)
  • [Opcjonalnie] Utwórz folder(y) dla niestandardowych ścieżek
  • Zainstaluj Filebeat
  • Skopiuj plik konfiguracyjny

Wymagania

  • Minimalna wersja Ansible do instalacji: 2.5
  • Podstawowe systemy operacyjne:
    • CentOS
      • 6, 7
    • Ubuntu
      • 16.04, 18.04
    • Debian
      • 8, 9
    • Windows

Zmienne roli


Możesz nadpisać dowolną zmienną poniżej, ustawiając "zmienna: wartość" w playbooku.

  • filebeat_version Służy do wyboru głównej wersji Filebeat do zainstalowania (aktualne stabilne wersje 5.x lub 6.x). Wartość domyślna to 6.
  • filebeat_last_version Służy do wyboru konkretnej wersji Filebeat do zainstalowania. Wartość domyślna to 6.6.0.
  • elastic_gpg_key Klucz GPG z repozytorium Elasticsearch. Wartość domyślna to https://artifacts.elastic.co/GPG-KEY-elasticsearch.
  • filebeat_node_name Nazwa węzła Filebeat. Wartość domyślna to {{ inventory_hostname }}. Jeśli ta opcja nie jest zdefiniowana, używana jest nazwa hosta.
  • filebeat_ssl_enabled Włącza/wyłącza połączenie SSL między Filebeat a Logstash/Elasticsearch. Opcje SSL powinny być ustawione w odpowiednich polach słownika, jak pokazano poniżej:
  ssl:
    key: "/etc/pki/tls/private/server.key"
    certificate: "/etc/pki/tls/certs/server.crt"
    certificate_authorities: "/etc/pki/CA/ca-root.pem"

w przypadku ustawienia Windows:

  ssl:
    key: 'c:\tls\private\server.key'
    certificate: 'c:\tls\certs\server.pem'
    certificate_authorities: 'c:\CA\ca-root.pem'

Sekcja path opcji konfiguracyjnych definiuje, gdzie Filebeat szuka swoich plików. Na przykład, Filebeat szuka pliku szablonu Elasticsearch w ścieżce konfiguracyjnej i zapisuje pliki logów w ścieżce logów. Filebeat szuka swoich plików rejestru w ścieżce danych. Wartości domyślne dla hostów Linux są ustawione w następujący sposób:

path:
  home: /usr/share/filebeat
  config: /etc/filebeat
  data: /var/lib/filebeat
  logs: /var/log/filebeat

w przypadku ustawienia Windows domyślne ścieżki wyglądają tak:

path:
  home: 'c:\program files\filebeat'
  config: 'c:\program files\filebeat'
  data: 'c:\programdata\filebeat'
  logs: 'c:\programdata\filebeat\logs'
  • win_download_path Tymczasowy katalog dla Windows do pobierania i rozpakowywania pakietu Filebeat. Wartość domyślna to '{{ ansible_env.TEMP }}/filebeat' (wartość ansible_env.TEMP rozwiązuje problem idempotencji)

  • input_logpath Ścieżka do plików logów.

Domyślna wartość dla rodziny systemów operacyjnych *NIX to "/var/log/*.log"

Domyślna wartość dla rodziny systemów operacyjnych WIN to 'c:\windows\*.log'

Zmiana filebeat_inputs definiuje rodzaj logów, które będą przetwarzane przez potok, ich ścieżki logów oraz indeks Elasticsearch, który powinien przechowywać ten typ logów. Możesz określić kilka wejść z różnymi ścieżkami, typami logów i nazwami indeksów, używając formatu yaml, jak w przykładzie poniżej:

    filebeat_inputs:
      - name: hybris
        paths:
          - '/var/log/console*.log'
        fields:
          logtype: hybris
          index_name: hybris-console
      - name: access
        paths:
          - '/var/log/access*.log'
          - '/var/log/nginx_access*.log'
        fields:
          logtype: access
          index_name: nginx-access

Dostosowanie wyjścia:

  • filebeat_output Jest używany do skonfigurowania, jakie wyjście ma być używane podczas wysyłania danych (elasticsearch lub logstash). Wartość domyślna to elasticsearch

  • filebeat_elasticsearch_output.hosts Tablica hostów do połączenia. Wartość domyślna to localhost.

  • filebeat_elasticsearch_output.port Wartość do ustawienia niestandardowego portu. Wartość domyślna to 9200.

  • filebeat_logstash_outputs Tablica hostów i portów do połączenia. Wartość domyślna to localhost:5044.

Zaawansowane parametry konfiguracyjne:

Sekcja filebeat(systemd)\initd opcji konfiguracyjnych definiuje, który skrypt inicjalizacyjny będzie używany do zarządzania usługą Filebeat w zależności od systemu *nix. Niestandardowe ścieżki będą brane pod uwagę (jeśli są skonfigurowane).

  • filebeat_service_name Nazwa skryptu nssm\init, który zarządza usługą Filebeat.

  • filebeat_bulk_max_size Maksymalna liczba zdarzeń do zgrupowania w jednym żądaniu Logstash. Wartość domyślna to 500.

  • filebeat_worker Liczba pracowników na hosta Elasticsearch. Wartość domyślna to 1.

  • filebeat_logging_to_syslog Wysyła wszystkie dane logowania do syslog. Wartość domyślna to false.

  • filebeat_logging_to_files Wysyła wszystkie dane logowania do plików rotacyjnych. Wartość domyślna to true.

  • filebeat_rotateeverybytes Definiuje limit rozmiaru pliku logu. Wartość domyślna to 104857600 = 100MB.

  • filebeat_keepfiles Liczba plików logów do zachowania. Wartość domyślna to 30.

  • filebeat_ignore_older Wartość (można używać dowolnych napisów czasowych, takich jak 2h, 5m) powyżej której pliki będą ignorowane. Wartość domyślna to 0 (wyłączone).

  • filebeat_scan_frequency Definiuje, jak często Filebeat sprawdza aktualizacje plików. Wartość domyślna to 15s.

  • filebeat_harvester_buffer_size Definiuje rozmiar bufora. Wartość domyślna to 65535.

  • filebeat_logname Nazwa plików logów. Wartość domyślna to "filebeat.log".

Zależności


ca-cert (tylko dla instalacji z SSL)

Przykład Playbooka

Instalacja wersji Filebeat 6.x:

- name: Zainstaluj filebeat
  hosts: all
  roles:
    - role: ansible-role-filebeat

Instalacja wersji Filebeat 6.x z niestandardową ścieżką do plików logów i wyjściem do Elasticsearch:

- name: Zainstaluj filebeat
  hosts: all
  roles:
    - role: ansible-role-filebeat
  vars:
    input_logpath: "/var/log/messages"
    filebeat_elasticsearch_output:
      hosts:
        - elasticsearch.example.com
      port: 9200

Licencja

Apache

Informacje o autorze

autorzy:

Zainstaluj
ansible-galaxy install mircomasa.filebeat
Licencja
apache-2.0
Pobrania
3.7k
Właściciel