0x0i.journald

logo ansible

logo redhat

Rola Ansible :signal_strength: :page_with_curl: Journald

Rola Galaxy ![Wydanie GitHub (najnowsze)][https://img.shields.io/github/v/release/0x0I/ansible-role-journald?color=yellow) Licencja: MIT

Spis treści

Rola Ansible, która instaluje i konfiguruje Journald: usługę systemową, która zbiera i przechowuje dane logowania.

Obsługiwane platformy:
* Debian
* Redhat(CentOS/Fedora)
* Ubuntu

Wymagania

Journald jest domyślnym systemem logowania dla dystrybucji Linuksa, uznawanym za następcę syslog w kontekście usług logowania systemowego. Zazwyczaj jest instalowany wraz z systemd i jest dostępny bez ręcznej instalacji na wspieranych platformach Linuksa.

Zobacz systemd README oraz dokumentację journald tutaj w celu uzyskania dalszych szczegółów.

Zmienne roli

Zmienne są dostępne i zorganizowane według następujących etapów instalacji oprogramowania i uzyskiwania zasobów:

  • instalacja
  • konfiguracja
  • deinstalacja

Instalacja

Poniższe zmienne można dostosować, aby kontrolować pewne aspekty procesu instalacji journald. Zakłada się, że host ma działającą wersję pakietu systemd. Dostępne wersje w zależności od dystrybucji OS można znaleźć tutaj jako odniesienie.

journal_group_adds: <lista-kont> (domyślnie: [])

  • wskazuje konta użytkowników, które mają być automatycznie dodawane do grupy systemd-journal dla uprawnień monitorowania logów

Pliki dzienników są domyślnie własnością i dostępne dla grupy systemowej systemd-journal, ale nie są zapisywalne. Dodanie użytkownika do tej grupy umożliwia mu odczyt plików dzienników bez podnoszenia uprawnień. Zobacz dokumentację tej usługi systemd-journald po więcej szczegółów.

Przykład
 journal_group_adds:
   - user-account-1
   - user-account-2

Konfiguracja

Konfiguracja journald jest zadeklarowana w pliku konfiguracyjnym w stylu ini, domyślnie zapisanym jako journald.conf. Ta konfiguracja INI składa się z jednej sekcji, [Journal], która może zawierać różne opcje do określenia pożądanego zachowania usługi logowania.

Te konfiguracje mogą być wyrażone w haszowej zmiennej journald_config roli jako listy słowników zawierających pary klucz-wartość reprezentujące nazwę, ścieżkę ładowania i kombinację wcześniej wspomnianych opcji sekcji. Pełną listę dostępnych opcji znajdziesz tutaj.

[journald_configs: <element-listy>:] name: <ciąg znaków> (domyślnie: journald.conf)

  • nazwa pliku konfiguracyjnego journald

[journald_configs: <element-listy>:] path: <ciąg znaków> (domyślnie: /etc/systemd/)

  • ścieżka ładowania pliku konfiguracyjnego journald

Kiedy pakiety lub lokalni administratorzy muszą dostosować podstawową lub domyślną konfigurację, mogą zainstalować fragmenty konfiguracji w jednej z następujących katalogów nadpisania:

Ścieżka ładowania konfiguracji Opis
/etc/systemd/journald.conf domyślna/bazowa konfiguracja, jak określono przez lokalnego administratora systemu
/etc/systemd/journald.conf.d/*.conf lokalny katalog nadpisania administratora (nazwa pliku jest dowolną wartością)
/run/systemd/journald.conf.d/*.conf katalog nadpisania w czasie rzeczywistym (nazwa pliku jest dowolną wartością)
/usr/lib/systemd/journald.conf.d/*.conf katalog nadpisania pakietu dostawcy

Główny plik konfiguracyjny jest odczytywany przed każdym z katalogów konfiguracyjnych i ma najniższą ważność. Wpisy w pliku w dowolnym katalogu konfiguracyjnym nadpisują wpisy w pojedynczym pliku konfiguracyjnym. Pliki w podkatalogach konfiguracji *.conf.d/ są sortowane i ładowane według ich nazwy pliku w porządku leksykograficznym, niezależnie od podkatalogów, w których się znajdują.

[journald_config: <element-listy>:] config: <słownik> (domyślnie: {})

  • definicje sekcji dla konfiguracji dziennika

Każda para klucz-wartość związana z ustawieniem konfiguracyjnym wspieranym przez journald powinna być możliwa do wyrażenia w każdym wjeździe listy journald_configs i poprawnie renderowana w określonym pliku konfiguracyjnym INI.

Przykład
 journald_configs:
   - name: debug-overrides.conf
     path: /run/systemd/journald.conf.d
     config:
       MaxLevelStore: debug
       Storage: volatile
       RateLimitIntervalSec: 0
       RateLimitBurst: 0

Deinstalacja

Usuń zarządzany plik konfiguracyjny journald.conf, przywracając docelowy host do stanu skonfigurowanego przed zastosowaniem tej roli (np. może być użyteczne przy recyklingu ustawień konfiguracyjnych podczas aktualizacji systemu).

Następującą zmienną(zmienne) można dostosować, aby zarządzać tym procesem deinstalacji:

perform_uninstall: <true | false> (domyślnie: false)

  • czy zainstalować zarządzaną konfigurację pliku journald.conf systemu na docelowym hoście (zobacz: handlers/main.yml po szczegóły)

Zależności

Brak

Przykładowy playbook

domyślny przykład:

- hosts: all
  roles:
  - role: 0x0I.journald

ustaw persistent storage logów i zaktualizuj/zredukować interwał synchronizacji:

- hosts: staging
  roles:
  - role: 0x0I.journald
    vars:
      journald_configs:
        - config:
            Storage: persistence
            SyncIntervalSec: 10

utwórz podstawową niestandardową konfigurację z konfiguracyjną dla debugowania:

- hosts: all
  roles:
  - role: 0x0I.journald
    vars:
      journald_configs:
          # podstawowa konfiguracja zostanie zainstalowana w /etc/systemd/journald.conf
          - config:
              Storage: auto
              MaxLevelStore: warning
          # konfiguracja nadpisania zostanie zainstalowana w /run/systemd/journald.conf.d/debug-overrides.conf
          - name: debug-overrides.conf
            path: /run/systemd/journald.conf.d
            config:
              Storage: volatile
              MaxLevelStore: debug
              RateLimitIntervalSec: 0
              RateLimitBurst: 0

dodaj zestaw użytkowników do grupy systemd-journal dla uprawnień do dziennika:

- hosts: prod
  roles:
  - role: 0x0I.journald
    vars:
      journal_group_adds: ['sysadmin-user', 'sre-user']

Licencja

MIT

Informacje o autorze

Ta rola została stworzona w 2019 roku przez O1.IO.

O projekcie

Journald, a system service that collects and stores logging data

Zainstaluj
ansible-galaxy install 0x0i.journald
Licencja
Unknown
Pobrania
256
Właściciel