0x0i.journald

logo de ansible

logo de redhat

Rol de Ansible :signal_strength: :page_with_curl: Journald

Galaxy Role Última versión de GitHub Licencia: MIT

Tabla de Contenidos

Rol de Ansible que instala y configura Journald: un servicio del sistema que recopila y almacena datos de registro.

Plataformas Soportadas:
* Debian
* Redhat (CentOS/Fedora)
* Ubuntu

Requisitos

Considerado el sistema de registro predeterminado para distribuciones de Linux y visto como el sucesor de syslog en cuanto a servicios de registro del sistema, journald generalmente se instala junto con systemd y está disponible sin instalación manual o del usuario en la lista de plataformas Linux soportadas.

Consulta el README de systemd aquí y la documentación de journald para más detalles.

Variables del Rol

Las variables están disponibles y organizadas según las siguientes etapas de aprovisionamiento de software y máquina:

  • instalar
  • configurar
  • desinstalar

Instalación

Las siguientes variables pueden personalizarse para controlar ciertos aspectos del proceso de instalación de journald. Se asume que el host tiene una versión funcional del paquete systemd. Las versiones disponibles según la distribución del sistema operativo pueden encontrarse aquí para referencia.

journal_group_adds: <lista-de-cuentas> (predeterminado: [])

  • indica las cuentas de usuario que se agregarán automáticamente al grupo systemd-journal para capacidades de monitoreo de registro privilegiado.

Los archivos de registro son, por defecto, propiedad y legibles por el grupo del sistema systemd-journal, pero no son escribibles. Agregar a un usuario a este grupo le permite leer los archivos de registro sin escalación de privilegios. Consulta la documentación del servicio systemd-journald para más detalles.

Ejemplo
 journal_group_adds:
   - usuario-cuenta-1
   - usuario-cuenta-2

Configuración

La configuración de journald se declara en un archivo de configuración de estilo ini, guardado como journald.conf por defecto. Esta configuración INI está compuesta por una sola sección, [Journal], que puede contener varias opciones para declarar el comportamiento deseado del servicio de registro.

Estas configuraciones pueden expresarse dentro de la variable hash journald_config del rol como listas de diccionarios que contienen pares clave-valor que representan el nombre, la ruta de carga y una combinación de las opciones mencionadas anteriormente. Consulta aquí para una lista completa de opciones disponibles.

[journald_configs: <entrada-de-lista>:] name: <string> (predeterminado: journald.conf)

  • nombre del archivo de configuración de journald

[journald_configs: <entrada-de-lista>:] path: <string> (predeterminado: /etc/systemd/)

  • ruta de carga del archivo de configuración de journald

Cuando los paquetes o los administradores locales necesitan personalizar la configuración base o predeterminada, pueden instalar fragmentos de configuración en uno de los siguientes directorios de sobreescritura:

Ruta de Carga de Configuración Descripción
/etc/systemd/journald.conf configuración predeterminada/base, según lo definido por el administrador del sistema local
/etc/systemd/journald.conf.d/*.conf directorio de sobreescritura del administrador local (el nombre del archivo es un valor arbitrario)
/run/systemd/journald.conf.d/*.conf directorio de sobreescritura en tiempo de ejecución (el nombre del archivo es un valor arbitrario)
/usr/lib/systemd/journald.conf.d/*.conf directorio de sobreescritura del paquete del proveedor

El archivo de configuración principal se lee antes que cualquiera de los directorios de configuración y tiene la menor prioridad. Las entradas en un archivo dentro de cualquier directorio de configuración sobrescriben las entradas en el único archivo de configuración. Los archivos en los subdirectorios de configuración *.conf.d/ se ordenan y cargan por su nombre de archivo en orden lexicográfico, independientemente de en cuál de los subdirectorios se encuentren.

[journald_config: <entrada-de-lista>:] config: <dict> (predeterminado: {})

  • definiciones de sección para la configuración del registro

Cualquier ajuste/valor de configuración clave-par admitido por journald debería poder expresarse dentro de cada entrada de la lista journald_configs y renderizarse correctamente dentro de la configuración INI especificada.

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

Desinstalación

Elimina la configuración gestionada de journald.conf, regresando el host objetivo a su estado configurado antes de la aplicación de este rol (por ejemplo, puede ser útil para reciclar la configuración durante actualizaciones del sistema).

Las siguientes variable(s) pueden personalizarse para gestionar este proceso de desinstalación:

perform_uninstall: <true | false> (predeterminado: false)

  • si desinstalar la configuración gestionada del archivo de configuración journald.conf de un sistema en un host objetivo (ver: handlers/main.yml para detalles)

Dependencias

Ninguna

Ejemplo de Playbook

ejemplo predeterminado:

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

configura almacenamiento de registro persistente y actualiza/disminuye el intervalo de sincronización de persistencia:

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

crea configuración base personalizada con la configuración de anulación de depuración:

- hosts: all
  roles:
  - role: 0x0I.journald
    vars:
      journald_configs:
          # la configuración base se instalará en /etc/systemd/journald.conf
          - config:
              Storage: auto
              MaxLevelStore: warning
          # la configuración de anulación se instalará en /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

agrega un conjunto de usuarios al grupo systemd-journal para acceso privilegiado al registro:

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

Licencia

MIT

Información del Autor

Este rol fue creado en 2019 por O1.IO.

Acerca del proyecto

Journald, a system service that collects and stores logging data

Instalar
ansible-galaxy install 0x0i.journald
Licencia
Unknown
Descargas
256
Propietario