In questo argomento vengono fornite informazioni di riferimento per il pacchetto Fluent Bit.
Informazioni su Fluent Bit
Fluent Bit (https://fluentbit.io/) è un processore e server di inoltro di registro rapido e leggero che consente di raccogliere dati delle applicazioni e registri da origini diverse, unificarli e inviarli a più destinazioni.
È possibile utilizzare Fluent Bit come server di inoltro per i registri di un cluster TKG. Per l'archiviazione e l'analisi dei registri, è necessario distribuire un server di gestione della registrazione. I server di registrazione supportati includono Syslog, HTTP, Elastic Search, Kafka e Splunk.
Per installare il pacchetto Fluent Bit in un cluster TKG, fare riferimento agli argomenti seguenti:
- TKr vSphere 8.x: Installazione di Fluent Bit
- TKr vSphere 7.x:
Componenti di Fluent Bit
Il pacchetto Fluent Bit installa nel cluster i container elencati nella tabella. Il pacchetto estrae il container dal registro pubblico specificato nel repository del pacchetto.
Container | Tipo di risorsa | Repliche | Descrizione |
---|---|---|---|
Fluent Bit | DaemonSet | 6 | Agente di raccolta dei registri, aggregatore e server di inoltro |
Valori dei dati di Fluent Bit
L'esempio seguente
fluent-bit-data-values.yaml
può essere utilizzato per i server Syslog.
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "syslog" syslog: host: "<SYSLOG_HOST>" port: "<SYSLOG_PORT>" mode: "<SYSLOG_MODE>" format: "<SYSLOG_FORMAT>"
L'esempio seguente fluent-bit-data-values.yaml
può essere utilizzato per gli endpoint di HTTP.
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "http" http: host: "<HTTP_HOST>" port: "<HTTP_PORT>" uri: "<URI>" header_key_value: "<HEADER_KEY_VALUE>" format: "json"
L'esempio seguente
fluent-bit-data-values.yaml
può essere utilizzato per Elastic Search.
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "elasticsearch" elasticsearch: host: "<ELASTIC_SEARCH_HOST>" port: "<ELASTIC_SEARCH_PORT>"
L'esempio seguente
fluent-bit-data-values.yaml
può essere utilizzato per Kafka.
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "kafka" kafka: broker_service_name: "<BROKER_SERVICE_NAME>" topic_name: "<TOPIC_NAME>"
L'esempio seguente
fluent-bit-data-values.yaml
può essere utilizzato per Splunk.
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "splunk" splunk: host: "<SPLUNK_HOST>" port: "<SPLUNK_PORT>" token: "<SPLUNK_TOKEN>"
Configurazione di Fluent Bit
I valori di configurazione sono impostati in
fluent-bit-data-values.yaml
. La tabella elenca e descrive i parametri disponibili.
Parametro | Descrizione | Tipo | Predefinito |
---|---|---|---|
logging.namespace | Spazio dei nomi in cui verrà distribuito Fluent Bit | stringa | tanzu-system-logging |
logging.service_account_name | Nome dell'account del servizio Fluent Bit | stringa | fluent-bit |
logging.cluster_role_name | Nome del ruolo cluster che concede le autorizzazioni get, watch e list a Fluent Bit | stringa | fluent-bit-read |
logging.image.name | Nome dell'immagine Fluent Bit | stringa | fluent-bit |
logging.image.tag | Tag immagine Fluent Bit. Se si sta aggiornando la versione, potrebbe essere necessario aggiornare questo valore. | stringa | v1.6.9_vmware.1 |
logging.image.repository | Posizione del repository con l'immagine Fluent Bit. L'impostazione predefinita è il registro di VMware pubblico. Modificare questo valore se si utilizza un repository privato (ad esempio, un ambiente air gap). | stringa | projects.registry.vmware.com/tkg |
logging.image.pullPolicy | Criterio di pull dell'immagine bit Fluent | stringa | IfNotPresent |
logging.update_strategy | Aggiornare la strategia da utilizzare durante l'aggiornamento di DaemonSet | stringa | RollingUpdate |
tkg.cluster_name | Nome del cluster Tanzu Kubernetes | stringa | Null (parametro obbligatorio) |
tkg.instance_name | Nome definito dall'utente dell'istanza di TKG, condiviso dal cluster supervisore e tutti i cluster Tanzu Kubernetes in una sola distribuzione. È possibile utilizzare qualsiasi nome correlato all'installazione di. | stringa | Null (parametro obbligatorio)
Nota: Questo campo è obbligatorio ma arbitrario. Si tratta di un nome che compare nei registri.
|
fluent_bit.log_level | Livello di registro da utilizzare per Fluent Bit | stringa | info |
fluent_bit.output_plugin | Impostare il back-end in cui Fluent Bit deve scaricare le informazioni che raccoglie | stringa | Null (parametro obbligatorio) |
fluent_bit.elasticsearch.host | Indirizzo IP o nome host dell'istanza di Elasticsearch di destinazione | stringa | Null (parametro obbligatorio quando output_plugin è Elasticsearch) |
fluent_bit.elasticsearch.port | Porta TCP dell'istanza di Elasticsearch di destinazione | numero intero | Null (parametro obbligatorio quando output_plugin è Elasticsearch) |
fluent_bit.elasticsearch.buffer_size | Specificare le dimensioni del buffer utilizzate per leggere la risposta dal servizio Elasticsearch. Imposta come illimitato se False | stringa | False |
fluent_bit.elasticsearch.tls | Specificare l'impostazione predefinita per TLS per Elasticsearch | stringa | Disattivato |
fluent_bit.unifka.broker_service_name | Singolo di più elenchi di Kafka Brokers, ad es. 192.168.1.3:9092 | stringa | Null (parametro obbligatorio quando output_plugin è kafka) |
fluent_bit.unfka.topic_name | Voce singola o elenco di argomenti separati da (,) che Fluent Bit utilizzerà per inviare messaggi a Kafka | stringa | Null (parametro obbligatorio quando output_plugin è kafka) |
fluent_bit.splunk.host | Indirizzo IP o nome host del server Splunk di destinazione | stringa | Null (parametro obbligatorio quando output_plugin è splunk) |
fluent_bit.splunk.port | Porta TCP del server Splunk di destinazione | numero intero | Null (parametro obbligatorio quando output_plugin è splunk) |
fluent_bit.splunk.token | Specificare il token di autenticazione per l'interfaccia dell'agente di raccolta eventi HTTP | stringa | Null (parametro obbligatorio quando output_plugin è splunk) |
fluent_bit.http.host | Indirizzo IP o nome host del server HTTP di destinazione | stringa | Null (parametro obbligatorio quando output_plugin è http) |
fluent_bit.http.port | Porta TCP del server HTTP di destinazione | numero intero | Null (parametro obbligatorio quando output_plugin è http) |
fluent_bit.http.mode | Specificare un URI HTTP per il server Web di destinazione | stringa | Null (parametro obbligatorio quando output_plugin è http) |
fluent_bit.http.header_key_value | Coppia chiave/valore intestazione HTTP. È possibile impostare più intestazioni | stringa | Null (parametro obbligatorio quando output_plugin è http) |
fluent_bit.http.format | Specificare il formato dei dati da utilizzare nel corpo della richiesta HTTP | stringa | Null (parametro obbligatorio quando output_plugin è http) |
fluent_bit.syslog.host | Dominio o indirizzo IP del server syslog remoto | stringa | Null (parametro obbligatorio quando output_plugin è syslog) |
fluent_bit.syslog.port | Porta TCP o UDP del server syslog remoto | numero intero | Null (parametro obbligatorio quando output_plugin è syslog) |
fluent_bit.syslog.mode | Specificare il tipo di trasporto da TCP, UDP e TLS | stringa | Null (parametro obbligatorio quando output_plugin è syslog) |
fluent_bit.syslog.format | Specificare il formato dei dati da utilizzare nel corpo della richiesta HTTP | stringa | Null (parametro obbligatorio quando output_plugin è syslog) |
host_path.volume_1 | Percorso della directory dal file system del nodo host al pod per il volume 1 | stringa | /var/log |
host_path.volume_2 | Percorso della directory dal file system del nodo host al pod per il volume 2 | stringa | /var/lib/docker/containers |
host_path.volume_3 | Percorso della directory dal file system del nodo host al pod per il volume 3 | stringa | /run/log |
systemd.path | Percorso della directory Systemd journal | stringa | /var/log/journal |