artem_shestakov.fluentbit
Rol de Ansible Fluent-bit
Rol simple para instalar y configurar Fluent-bit
Variables del Rol
Configuración
Nombre | Descripción | Por Defecto |
---|---|---|
fluentbit_config_path | Ruta al archivo de configuración y los analizadores | /etc/fluent-bit |
fluentbit_flush | Establece el tiempo de vaciado en segundos.nanos. El ciclo del motor utiliza un tiempo de espera de vaciado para definir cuándo es necesario vaciar los registros ingresados por los plugins de entrada a través de los plugins de salida definidos. | 5 |
fluentbit_grace | Establece el tiempo de gracia en segundos como valor entero. El ciclo del motor utiliza un tiempo de gracia para definir el tiempo de espera al salir | 5 |
fluentbit_daemon | Valor booleano para definir si Fluent Bit debe ejecutarse como un Daemon (en segundo plano) o no. Los valores permitidos son: yes, no, on y off | off |
fluentbit_dns_mode | Establece el protocolo de capa de transporte primario que utiliza el resolvedor DNS asíncrono, que se puede sobrescribir en cada plugin | UDP |
fluentbit_log_file | Ruta absoluta para un archivo de registro opcional. Por defecto, todos los registros se redirigen a la interfaz de error estándar (stderr). | |
fluentbit_log_level | Establece el nivel de verbosidad del registro. | info |
fluentbit_http_server | Habilitar servidor HTTP incorporado | off |
fluentbit_http_listen | Establece la interfaz de escucha para el Servidor HTTP cuando está habilitado | 0.0.0.0 |
fluentbit_http_port | Establece el puerto TCP para el Servidor HTTP | 2020 |
fluentbit_coro_stack_size | Establece el tamaño de la pila de corutinas en bytes. El valor debe ser mayor que el tamaño de página del sistema en ejecución. No establezcas un valor demasiado pequeño (por ejemplo, 4096), o los hilos de corutina pueden desbordar el búfer de pila. No cambies el valor por defecto de este parámetro a menos que sepas lo que estás haciendo | 24576 |
fluentbit_scheduler_cap | Establece un tiempo máximo de reintento en segundos. La propiedad es compatible desde v1.8.7. | 2000 |
fluentbit_scheduler_base | Establece una base de retroceso exponencial. La propiedad es compatible desde v1.8.7. | 5 |
fluentbit_inputs | Una sección de entrada define una fuente (relacionada con un plugin de entrada) | Nombre: forward Escuchar: 0.0.0.0 Puerto: 24224 |
fluentbit_outputs | La sección de salidas especifica un destino que ciertos registros deben seguir después de una coincidencia de etiqueta | Nombre: srdout Coincidencia: '*' |
Pipeline
fluentbit_inputs
- lista de entradas (fuentes). Cada elemento de entrada es una colección de diccionario clave/valor. El valor por defecto es:
fluentbit_inputs:
- Nombre: forward
Escuchar: 0.0.0.0
Puerto: 24224
fluentbit_outputs
- lista de salidas (sumideros). Cada elemento de salida es una colección de diccionario clave/valor. El valor por defecto es:
fluentbit_outputs:
- Nombre: stdout
Coincidencia: '*'
fluentbit_filters
- lista de filtros. Cada elemento es una colección de diccionario clave/valor. El valor por defecto es[]
. Ejemplo:
---
- name: Desplegar servicio fluent-bit
hosts: "{{ lookup('env', 'TARGET') }}"
become: true
roles:
- role: artem_shestakov.fluentbit
version: "v1.0.0"
vars:
fluentbit_inputs:
- Nombre: forward
Escuchar: 0.0.0.0
Puerto: 24224
- Nombre: syslog
Etiqueta: haproxy
Ruta: /var/lib/haproxy/dev/log
Permiso_Unix: "0666"
fluentbit_filters:
- Nombre: record_modifier
Coincidencia: "*"
Registro: hostname ${HOSTNAME}
- Nombre: parser
Coincidencia: "*"
Nombre_Clave: data
Analizador: syslog-rfc3164-local
fluentbit_outputs:
- Nombre: es
Coincidencia: *
Host: 192.168.2.3
Puerto: 9200
Índice: my_index
Tipo: my_type
fluentbit_parsers:
- Nombre: syslog-rfc3164-local
Formato: regex
Regex: ^\<(?<pri>[0-9]+)\>(?<time>[^ ]* {1,2}[^ ]* [^ ]*) (?<ident>[a-zA-Z0-9_\/\.\-]*)(?:\[(?<pid>[0-9]+)\])?(?:[^\:]*\:)? *(?<message>.*)$
Clave_Tiempo: time
Formato_Tiempo: '%b %d %H:%M:%S'
Mantener_Tiempo: On
fluentbit_parsers
- lista de analizadores. Cada elemento de analizador es una colección de diccionario clave/valor. El valor por defecto es[]
. Ejemplo:
fluentbit_parsers:
- Nombre: named-capture-test
Formato: regex
Regex: /^(?<date>[a-zA-Z]+ \d+ \d+\:\d+\:\d+) (?<message>.*)/m
- Nombre: docker
Formato: json
Clave_Tiempo: time
Formato_Tiempo: "%Y-%m-%dT%H:%M:%S %z"
fluentbit_multiline_parsers
- lista de analizadores multilinea. Cada elemento de analizador es una colección de diccionario clave/valor. Cada analizador debe contener una lista dereglas
. Cada regla es un diccionario de tres elementos:nombre_estado
,patrón_regex
ysiguiente_estado
. El valor por defecto es[]
. Ejemplo:
fluentbit_multiline_parsers:
- nombre: multiline-regex-test
tipo: regex
tiempo_de_vaciado: 1000
reglas:
- nombre_estado: start_state
patrón_regex: /([a-zA-Z]+ \d+ \d+\:\d+\:\d+)(.*)/
siguiente_estado: cont
- nombre_estado: cont
patrón_regex: /^\s+at.*/
siguiente_estado: cont
Ejemplo de Playbook
ejemplo aquí
Licencia
BSD
Información del Autor
Artem Shestakov artem.s.shestakov@yandex.ru
Instalar
ansible-galaxy install artem_shestakov.fluentbit
Licencia
Unknown
Descargas
5.3k
Propietario